Openstack Swift安装(一)

上一篇中我们已经在Controller上安装好了Keystone。

嗯,接下来安装Swift。

Swift是OpenStack最老的组件之一,从OpenStack诞生那一刻就存在了。

我们先部署Controller(就还是那台已经安装好Keystone的Controller)。

安装在Controller上的Swift组件是Swift-proxy。

安装和配置Controller结点

准备工作

1) 首先导入admin-openrc.sh来实现自动登录。

. ~/admin-openrc.sh

2) 在Keystone中给Swift建立一个认证服务

openstack user create --domain default --password-prompt swift
openstack role add --project service --user swift admin
openstack service create --name swift --description \"OpenStack Object Storage\" object-store

3) 在Keystone中给Swift服务建立API端点

注意和Keystone自己的API端点一样,这里也有3个,注意替换IP。

openstack endpoint create --region RegionOne object-store public http://192.168.203.100:8080/v1/AUTH_%\\(tenant_id\\)s
openstack endpoint create --region RegionOne object-store internal http://10.20.0.2:8080/v1/AUTH_%\\(tenant_id\\)s
openstack endpoint create --region RegionOne object-store admin http://10.20.0.2:8080/v1

安装和配置组件

1) 安装好Swift的Controller组件

apt-get install swift swift-proxy python-swiftclient python-keystoneclient python-keystonemiddleware memcached

2) 下面进入配置阶段,首先建立存配置的文件夹

从这里开始暂时切成root用户会比较好一些。

mkdir /etc/swift

3) 我们从源代码库下载一份示例配置

curl -o /etc/swift/proxy-server.conf \\
  https://git.openstack.org/cgit/openstack/swift/plain/etc/proxy-server.conf-sample?h=stable/liberty

4) 打开刚才下载到的proxy-server.conf,进行如下的编辑

[DEFAULT]
...
bind_port = 8080
user = swift
swift_dir = /etc/swift
...
[pipeline:main]
pipeline = catch_errors gatekeeper healthcheck proxy-logging cache
container_sync bulk ratelimit authtoken keystoneauth container-quotas
account-quotas slo dlo versioned_writes proxy-logging proxy-server
...
[app:proxy-server]
use = egg:swift#proxy
...
account_autocreate = true
...
[filter:keystoneauth]
use = egg:swift#keystoneauth
...
operator_roles = admin,user
...
[filter:authtoken]
paste.filter_factory = keystonemiddleware.auth_token:filter_factory
...
auth_uri = http://10.20.0.2:5000
auth_url = http://10.20.0.2:35357
auth_plugin = password
project_domain_id = default
user_domain_id = default
project_name = service
username = swift
password = swift
delay_auth_decision = true
...
[filter:cache]
use = egg:swift#memcache
...
memcache_servers = 127.0.0.1:11211

注意在[filter:authtoken]段落中的url地址的IP需要修改,还有password也需要改成前面创建swift账户时设置的密码。

这个段落里其他的可用配置最好都注释掉。

这样我们在Controller上的Swift Proxy配置就结束了。

这一篇好短。。

接下来的内容在:Openstack Swift安装(二)