以下步骤都在controller节点上执行
1、远程获取/etc/swift/swift.conf文件:
curl -o /etc/swift/swift.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/swift.conf-sample?h=stable/newton
2、修改/etc/swift/swift.conf配置文件:
[swift-hash] ... swift_hash_path_suffix = HASH_PATH_SUFFIX swift_hash_path_prefix = HASH_PATH_PREFIX
[storage-policy:0] name = Policy-0 default = yes
注意:storage-policy:0这个配置项下面只保留上述几行,其他的注释掉
3、把/etc/swift/swift.conf这个文件从controller节点拷贝到每一个swift节点,然后在各个swift节点上执行以下命令:
chown -R root:swift /etc/swift
4、启动服务:
在controller节点执行:
systemctl enable openstack-swift-proxy.service memcached.service
# systemctl start openstack-swift-proxy.service memcached.service
在swift节点执行:
systemctl enable openstack-swift-account.service openstack-swift-account-auditor.service openstack-swift-account-reaper.service openstack-swift-account-replicator.service
systemctl start openstack-swift-account.service openstack-swift-account-auditor.service openstack-swift-account-reaper.service openstack-swift-account-replicator.service
systemctl enable openstack-swift-container.service openstack-swift-container-auditor.service openstack-swift-container-replicator.service openstack-swift-container-updater.service
systemctl start openstack-swift-container.service openstack-swift-container-auditor.service openstack-swift-container-replicator.service openstack-swift-container-updater.service
systemctl enable openstack-swift-object.service openstack-swift-object-auditor.service openstack-swift-object-replicator.service openstack-swift-object-updater.service
systemctl start openstack-swift-object.service openstack-swift-object-auditor.service openstack-swift-object-replicator.service openstack-swift-object-updater.service
安装验证:
先给节点赋予权限 chcon -R system_u:object_r:swift_data_t:s0 /srv/node
然后在controller节点执行source /root/demo-openrc.sh ,初始化相关的环境变量
再执行swift stat命令,查看是否有相关信息
执行openstack container create container1查看是否可以创建目录,如果失败,可以查看swift节点上的log。
如果遇到提示说是无权限,在swift节点执行restorecon -R /srv/node命令然后重启服务即可