我尝试配置swift对象存储但没有成功。
如果我使用带有keystone的控制器,那么一切都很好(如文档中所示):
http://docs.openstack.org/mitaka/install-guide-rdo/swift-controller-install.html
但问题是我只想使用快速的对象存储。而已。
我试图在文档中配置swift但没有[filter:keystoneauth]和[filter:authtoken]。
之后我尝试使用此命令验证操作:swift stat
它显示:
Auth version 1.0 requires ST_AUTH, ST_USER, and ST_KEY environment variables
to be set or overridden with -A, -U, or -K.
Auth version 2.0 requires OS_AUTH_URL, OS_USERNAME, OS_PASSWORD, and
OS_TENANT_NAME OS_TENANT_ID to be set or overridden with --os-auth-url,
--os-username, --os-password, --os-tenant-name or os-tenant-id. Note:
adding "-V 2" is necessary for this.
但我没有基石。我怎样才能访问swift?
如果我没有错,那么在没有keystone的情况下配置swift的文章是:
http://docs.openstack.org/developer/swift/development_saio.html
但它有点难。我不确定如何正确理解这篇文章。
答案 0 :(得分:2)
默认情况下,swift具有TempAuth(也称为1.0版)身份验证方法(http://docs.openstack.org/developer/swift/overview_auth.html)。您可以将其用于测试目的,但不建议用于生产。
您引用的SAIO文章运行它。以下是您可能遗漏的一些观点:
如果您删除了[filter:keystoneauth]和[filter:authtoken] 你应该:
1 - 将tempauth添加到[pipeline:main]
pipeline = catch_errors gatekeeper healthcheck proxy-logging cache bulk tempurl ratelimit crossdomain container_sync tempauth staticweb copy container-quotas account-quotas slo dlo versioned_writes proxy-logging proxy-server
2 - 在proxy-server.conf中配置tempauth部分,如下所示:
[filter:tempauth]
use = egg:swift#tempauth
user_admin_admin = admin .admin .reseller_admin
user_test_tester = testing .admin
user_test2_tester2 = testing2 .admin
user_test_tester3 = testing3
此外,如果您想使用params运行swift客户端,则应配置环境变量。
$ export ST_USER=admin:admin
$ export ST_KEY=admin