我正在尝试按照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
答案 0 :(得分:0)
一种情况可能会导致此问题:创建租户时,一个或多个存储节点已关闭。然后,当您上传对象时,代理从至少一个存储节点获取404。 在我的测试中,甚至存储节点都在创建租户后全部启动,仍然存在404错误。因此,请确保所有存储节点都已启动,并创建另一个要测试的租户。