在openstack swift中创建容器时出错

时间:2014-05-28 12:39:26

标签: openstack openstack-swift

我正在尝试按照http://docs.openstack.org/icehouse/install.../general-installation-steps-swift.html的说明安装最新版本的swift。我能够使用keystone进行身份验证,并且能够成功运行命令swift stat。但是,当我运行命令swift upload myfiles temp时,我收到以下错误

Error trying to create container 'myfiles': 404 Not Found: {"error": {"message": "The 
resource could not be found.", "c
Object PUT failed: 9.109.124.109:5000:5000/v2.0/myfiles/temp 400 Bad Request 
[first 60 chars of response] {"error": {"message": "Expecting to find application/json 
in

/var/log/syslog中,我找到以下信息:

May 28 18:11:40 datafed3 account-server: ERROR __call__ error with PUT /sdb1/100869
/AUTH_system/myfiles : #012Traceback (most recent call last):#012  File "/usr/lib
/python2.7/dist-packages/swift/account/server.py", line 284, in __call__#012    res = 
method(req)#012  File "/usr/lib/python2.7/dist-packages/swift/common/utils.py", line 
2217, in wrapped#012    return func(*a, **kw)#012  File "/usr/lib/python2.7/dist-
packages/swift/common/utils.py", line 837, in _timing_stats#012    resp = func(ctrl, 
*args, **kwargs)#012  File "/usr/lib/python2.7/dist-packages/swift/account/server.py", 
line 128, in PUT#012    req.headers['x-bytes-used'])#012  File "/usr/lib/python2.7/dist-
packages/swift/account/backend.py", line 210, in put_container#012    raise 
DatabaseConnectionError(self.db_file, "DB doesn't exist")#012DatabaseConnectionError: 
DB connection error (/srv/node/sdb1/accounts/100869/80d/62816079be0fc97a4557f52b3b12380d
/62816079be0fc97a4557f52b3b12380d.db, 0):#012DB doesn't exist

1 个答案:

答案 0 :(得分:0)

一种情况可能会导致此问题:创建租户时,一个或多个存储节点已关闭。然后,当您上传对象时,代理从至少一个存储节点获取404。 在我的测试中,甚至存储节点都在创建租户后全部启动,仍然存在404错误。因此,请确保所有存储节点都已启动,并创建另一个要测试的租户。