Openstack 安装之 Swift

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ywmack/article/details/81538925

openstack 版本为Q版

服务器系统:centos7

控制节点:192.168.50.31

swift存储节点: 192.168.50.32

swift存储节点: 192.168.50.33

swift存储节点: 192.168.50.33

所有存储节点操作:

#安装相关软件
yum install xfsprogs rsync 

#格式化对应分区 
mkfs.xfs /dev/sdc1

#创建文件夹
mkdir -p /swift/node/sdc1

#fstab挂载磁盘
vim /etc/fstab
/dev/sdc1 /swift/node/sdc1 xfs noatime,nodiratime,nobarrier,logbufs=8 0 2

# mount挂载
mount /dev/sdc1 /swift/node/sdc1

# 编辑配置文件
vim /etc/rsyncd.conf
 
uid = swift
gid = swift
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
address = 192.168.50.32(这里有几台 就写能对应的IP地址)

[account]
max connections = 2
path = /swift/node/
read only = False
lock file = /var/lock/account.lock

[container]
max connections = 2
path = /swift/node/
read only = False
lock file = /var/lock/container.lock

[object]
max connections = 2
path = /swift/node/
read only = False
lock file = /var/lock/object.lock


# 配置服务
systemctl enable rsyncd.service
systemctl start rsyncd.service


# 安装swift
yum install openstack-swift-account openstack-swift-container \
  openstack-swift-object
  

# 下载替换配置文件
curl -o /etc/swift/account-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/account-server.conf-sample?h=stable/queens
curl -o /etc/swift/container-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/container-server.conf-sample?h=stable/queens
curl -o /etc/swift/object-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/object-server.conf-sample?h=stable/queens 


# 编辑配置文件account-server.conf
vim /etc/swift/account-server.conf
[DEFAULT]
bind_ip = 192.168.50.32(对应存储节点的IP)
bind_port = 6202
user = swift
swift_dir = /etc/swift
devices = /swift/node/
mount_check = True
[filter:recon]
use = egg:swift#recon
recon_cache_path = /var/cache/swift

# 编辑配置文件container-server.conf
vim /etc/swift/container-server.conf
[DEFAULT]
bind_ip = 192.168.50.32(对应存储节点的IP)
bind_port = 6201
user = swift
swift_dir = /etc/swift
devices = /swift/node/
mount_check = True

[pipeline:main]
pipeline = healthcheck recon container-server

[filter:recon]
use = egg:swift#recon
recon_cache_path = /var/cache/swift

# 编辑配置文件object-server.conf
vim /etc/swift/object-server.conf
[DEFAULT]
bind_ip = 192.168.50.32(对应存储节点的IP)
bind_port = 6200
user = swift
swift_dir = /etc/swift
devices = /swift/node/
mount_check = True
[pipeline:main]
pipeline = healthcheck recon object-server

[filter:recon]
use = egg:swift#recon
recon_cache_path = /var/cache/swift
recon_lock_path = /var/lock



# 创建文件夹 并设置权限
chown -R swift:swift /swift/node/
mkdir -p /var/cache/swift
chown -R root:swift /var/cache/swift
chmod -R 775 /var/cache/swift

# 在控制节点操作

cd /etc/swift   在/etc/swift目录下面操作

swift-ring-builder account.builder create 10 3 1
swift-ring-builder account.builder add \
  --region 1 --zone 1 --ip 192.168.50.32 --port 6202 --device sdc1 --weight 100
swift-ring-builder account.builder add \
  --region 1 --zone 1 --ip 192.168.50.33 --port 6202 --device sdc1 --weight 100
swift-ring-builder account.builder add \
  --region 1 --zone 1 --ip 192.168.50.34 --port 6202 --device sdc1 --weight 100 
swift-ring-builder account.builder
swift-ring-builder account.builder rebalance


swift-ring-builder container.builder create 10 3 1
swift-ring-builder container.builder add \
  --region 1 --zone 1 --ip 192.168.50.32 --port 6201 --device sdc1 --weight 100
swift-ring-builder container.builder add \
  --region 1 --zone 1 --ip 192.168.50.33 --port 6201 --device sdc1 --weight 100  
swift-ring-builder container.builder add \
  --region 1 --zone 1 --ip 192.168.50.34 --port 6201 --device sdc1 --weight 100 
swift-ring-builder container.builder
swift-ring-builder container.builder rebalance


swift-ring-builder object.builder create 10 3 1
swift-ring-builder object.builder add \
  --region 1 --zone 1 --ip 192.168.50.32 --port 6200 --device sdc1 --weight 100
swift-ring-builder object.builder add \
  --region 1 --zone 1 --ip 192.168.50.33 --port 6200 --device sdc1 --weight 100  
swift-ring-builder object.builder add \
  --region 1 --zone 1 --ip 192.168.50.34 --port 6200 --device sdc1 --weight 100  
swift-ring-builder object.builder
swift-ring-builder object.builder rebalance

#把/etc/swift的gz文件复制到另外两台
scp /etc/swift/*.gz [email protected]:/etc/swift
scp /etc/swift/*.gz [email protected]:/etc/swift
scp /etc/swift/*.gz [email protected]:/etc/swift

# 下载替换配置文件
curl -o /etc/swift/swift.conf \
  https://git.openstack.org/cgit/openstack/swift/plain/etc/swift.conf-sample?h=stable/queens

vim /etc/swift/swift.conf 
[swift-hash]
swift_hash_path_suffix = jzdata
swift_hash_path_prefix = jzdata
[storage-policy:0]
name = Policy-0
default = yes

#把/etc/swift的swift.conf文件复制到另外两台
scp /etc/swift/swift.conf  [email protected]:/etc/swift
scp /etc/swift/swift.conf  [email protected]:/etc/swift
scp /etc/swift/swift.conf  [email protected]:/etc/swift

# 配置服务
systemctl enable openstack-swift-proxy.service memcached.service
systemctl restart openstack-swift-proxy.service memcached.service

所有存储节点执行:

# 给/etc/swift 加权限
chown -R root:swift /etc/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

猜你喜欢

转载自blog.csdn.net/ywmack/article/details/81538925