3.3. 为 Red Hat Enterprise Linux 安装和配置存储节点
要在外部存储节点上使用 Red Hat OpenStack Platform Object Storage 服务(swift),您必须安装并配置运行帐户、容器和对象服务进程的存储节点。此配置引用了两个存储节点,每个节点包含两个空的本地块存储设备。
对象存储服务的内部网络没有进行身份验证。为了安全起见,红帽建议您将存储节点保留在专用网络或 VLAN 中。
这些说明使用 /dev/sdb 和 /dev/sdc 作为设备名称,但您可以替换环境中特定节点的值。
3.3.1. 准备存储设备 复制链接链接已复制到粘贴板!
在存储节点上安装和配置对象存储服务前,您必须准备存储设备。
在每个存储节点上执行这些步骤。
流程
安装支持工具软件包:
yum install xfsprogs rsync
# yum install xfsprogs rsyncCopy to Clipboard Copied! Toggle word wrap Toggle overflow 将
/dev/sdb和/dev/sdc设备格式化为 XFS:mkfs.xfs /dev/sdb mkfs.xfs /dev/sdc
# mkfs.xfs /dev/sdb # mkfs.xfs /dev/sdcCopy to Clipboard Copied! Toggle word wrap Toggle overflow 创建挂载点目录结构:
mkdir -p /srv/node/sdb mkdir -p /srv/node/sdc
# mkdir -p /srv/node/sdb # mkdir -p /srv/node/sdcCopy to Clipboard Copied! Toggle word wrap Toggle overflow 编辑
/etc/fstab文件并在其中添加以下数据:/dev/sdb /srv/node/sdb xfs defaults 0 2 /dev/sdc /srv/node/sdc xfs defaults 0 2
/dev/sdb /srv/node/sdb xfs defaults 0 2 /dev/sdc /srv/node/sdc xfs defaults 0 2Copy to Clipboard Copied! Toggle word wrap Toggle overflow 挂载设备:
mount /srv/node/sdb mount /srv/node/sdc
# mount /srv/node/sdb # mount /srv/node/sdcCopy to Clipboard Copied! Toggle word wrap Toggle overflow 创建或编辑
/etc/rsyncd.conf文件,使其包含以下数据:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 MANAGEMENT_INTERFACE_IP_ADDRESS 替换为存储节点上管理网络的 IP 地址。
启动
rsyncd服务并将其配置为在系统引导时启动:systemctl enable rsyncd.service systemctl start rsyncd.service
# systemctl enable rsyncd.service # systemctl start rsyncd.serviceCopy to Clipboard Copied! Toggle word wrap Toggle overflow
3.3.2. 配置组件 复制链接链接已复制到粘贴板!
配置帐户、容器和对象存储服务器。
流程
安装软件包:
yum install openstack-swift-account openstack-swift-container \ openstack-swift-object
# yum install openstack-swift-account openstack-swift-container \ openstack-swift-objectCopy to Clipboard Copied! Toggle word wrap Toggle overflow 编辑
/etc/swift/account-server.conf文件并完成以下操作:在
[DEFAULT]部分中,配置绑定 IP 地址、绑定端口、用户、配置目录和挂载点目录:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 MANAGEMENT_INTERFACE_IP_ADDRESS 替换为存储节点上管理网络的 IP 地址。
在
[pipeline:main]部分中,启用healthcheck和recon模块:[pipeline:main] pipeline = healthcheck recon account-server
[pipeline:main] pipeline = healthcheck recon account-serverCopy to Clipboard Copied! Toggle word wrap Toggle overflow 在
[filter:recon]部分中,配置 recon 缓存目录:[filter:recon] use = egg:swift#recon ... recon_cache_path = /var/cache/swift
[filter:recon] use = egg:swift#recon ... recon_cache_path = /var/cache/swiftCopy to Clipboard Copied! Toggle word wrap Toggle overflow
为帐户服务打开默认防火墙端口:
firewall-cmd --permanent --add-port=6202/tcp
# firewall-cmd --permanent --add-port=6202/tcpCopy to Clipboard Copied! Toggle word wrap Toggle overflow 编辑
/etc/swift/container-server.conf文件并完成以下操作:在
[DEFAULT]部分中,配置绑定 IP 地址、绑定端口、用户、配置目录和挂载点目录:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 MANAGEMENT_INTERFACE_IP_ADDRESS 替换为存储节点上管理网络的 IP 地址。
在
[pipeline:main]部分中,启用healthcheck和recon模块:[pipeline:main] pipeline = healthcheck recon container-server
[pipeline:main] pipeline = healthcheck recon container-serverCopy to Clipboard Copied! Toggle word wrap Toggle overflow 在
[filter:recon]部分中,配置 recon 缓存目录:[filter:recon] use = egg:swift#recon ... recon_cache_path = /var/cache/swift
[filter:recon] use = egg:swift#recon ... recon_cache_path = /var/cache/swiftCopy to Clipboard Copied! Toggle word wrap Toggle overflow
为容器服务打开默认防火墙端口:
firewall-cmd --permanent --add-port=6201/tcp
# firewall-cmd --permanent --add-port=6201/tcpCopy to Clipboard Copied! Toggle word wrap Toggle overflow 编辑
/etc/swift/object-server.conf文件并完成以下操作:在
[DEFAULT]部分中,配置绑定 IP 地址、绑定端口、用户、配置目录和挂载点目录:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 MANAGEMENT_INTERFACE_IP_ADDRESS 替换为存储节点上管理网络的 IP 地址。
在
[pipeline:main]部分中,启用healthcheck和recon模块:[pipeline:main] pipeline = healthcheck recon object-server
[pipeline:main] pipeline = healthcheck recon object-serverCopy to Clipboard Copied! Toggle word wrap Toggle overflow 在
[filter:recon]部分中,配置recon_cache_path和recon_lock_path目录:[filter:recon] use = egg:swift#recon ... recon_cache_path = /var/cache/swift recon_lock_path = /var/lock
[filter:recon] use = egg:swift#recon ... recon_cache_path = /var/cache/swift recon_lock_path = /var/lockCopy to Clipboard Copied! Toggle word wrap Toggle overflow
为对象服务打开默认防火墙端口:
firewall-cmd --permanent --add-port=6200/tcp
# firewall-cmd --permanent --add-port=6200/tcpCopy to Clipboard Copied! Toggle word wrap Toggle overflow 确保挂载点目录结构的所有权正确:
chown -R swift:swift /srv/node
# chown -R swift:swift /srv/nodeCopy to Clipboard Copied! Toggle word wrap Toggle overflow 创建
recon目录并确保正确所有权:mkdir -p /var/cache/swift chown -R root:swift /var/cache/swift chmod -R 775 /var/cache/swift
# mkdir -p /var/cache/swift # chown -R root:swift /var/cache/swift # chmod -R 775 /var/cache/swiftCopy to Clipboard Copied! Toggle word wrap Toggle overflow