(七)Open Stack(M)

您所在的位置:网站首页 swift客户端下载 (七)Open Stack(M)

(七)Open Stack(M)

2024-01-23 10:29| 来源: 网络整理| 查看: 265

感谢指剑大佬发表的博客与视频!感谢所 爱大佬的支持!

(六)Open Stack(M)----Horizon(Dashboard)安装和配置

一:准备工作 ---- 硬盘添加

在虚拟机还没开机(关闭虚拟机后)时,在硬件配置compute节点上添加一个硬盘。

二:控制节点的配置 1.控制节点获得凭证并创建身份认证服务的凭证 . /root/admin-openrc openstack user create --domain default --password 000000 swift openstack role add --project service --user swift admin openstack service create --name swift --description "OpenStack Object Storage" object-store

截图如下 在这里插入图片描述

2.创建对象存储服务 API 端点 openstack endpoint create --region RegionOne object-store public http://controller:8080/v1/AUTH_%\(tenant_id\)s openstack endpoint create --region RegionOne object-store internal http://controller:8080/v1/AUTH_%\(tenant_id\)s openstack endpoint create --region RegionOne object-store admin http://controller:8080/v1

截图如下 在这里插入图片描述

3.安装并配置swift组件 yum -y install openstack-swift-proxy python-swiftclient python-keystoneclient python-keystonemiddleware memcached 4.编辑文件 /etc/swift/proxy-server.conf

删除原有内容,再进行添加

cp /etc/swift/proxy-server.conf /etc/swift/proxy-server.conf.bank vi /etc/swift/proxy-server.conf

修改后内容如下:

[DEFAULT] bind_port = 8080 swift_dir = /etc/swift user = 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: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 user_test5_tester5 = testing5 service [filter:authtoken] paste.filter_factory = keystonemiddleware.auth_token:filter_factory auth_uri = http://controller:5000 auth_url = http://controller:35357 memcached_servers = controller:11211 auth_type = password project_domain_name = default user_domain_name = default project_name = service username = swift password = 000000 delay_auth_decision = True [filter:keystoneauth] use = egg:swift#keystoneauth operator_roles = admin,user [filter:healthcheck] use = egg:swift#healthcheck [filter:cache] memcache_servers = controller:11211 use = egg:swift#memcache [filter:ratelimit] use = egg:swift#ratelimit [filter:domain_remap] use = egg:swift#domain_remap [filter:catch_errors] use = egg:swift#catch_errors [filter:cname_lookup] use = egg:swift#cname_lookup [filter:staticweb] use = egg:swift#staticweb [filter:tempurl] use = egg:swift#tempurl [filter:formpost] use = egg:swift#formpost [filter:name_check] use = egg:swift#name_check [filter:list-endpoints] use = egg:swift#list_endpoints [filter:proxy-logging] use = egg:swift#proxy_logging [filter:bulk] use = egg:swift#bulk [filter:slo] use = egg:swift#slo [filter:dlo] use = egg:swift#dlo [filter:container-quotas] use = egg:swift#container_quotas [filter:account-quotas] use = egg:swift#account_quotas [filter:gatekeeper] use = egg:swift#gatekeeper [filter:container_sync] use = egg:swift#container_sync [filter:xprofile] use = egg:swift#xprofile [filter:versioned_writes] use = egg:swift#versioned_writes

截图如下: 在这里插入图片描述

5.编辑文件/etc/swift/swift.conf

删除原有内容,再进行添加

vi /etc/swift/swift.conf

修改后内容如下:

[swift-hash] swift_hash_path_suffix = changeme swift_hash_path_prefix = changeme [storage-policy:0] name = Policy-0 default = yes aliases = yellow, orange [swift-constraints]

截图如下: 在这里插入图片描述

6.添加权限 chown -R root:swift /etc/swift 三:存储节点的配置(计算节点充当存储节点) 1.安装软件包 yum -y install xfsprogs rsync openstack-swift-account openstack-swift-container openstack-swift-object 2.使用XFS格式化分区新设备

搭建Swift存储节点需要一块空盘,此处我们查看开头添加的空盘

1.查看磁盘 lsblk

截图如下: 在这里插入图片描述 可以发现新添加的磁盘,即/dev/sdb

2.格式化 fdisk /dev/sdb

截图如下: 在这里插入图片描述

3.分区 mkfs.xfs /dev/sdb1 4.创建挂载点目录结构 mkdir -p /swift/node 5.挂载 mount /dev/sdb1 /swift/node/

截图如下·: 在这里插入图片描述

6.编辑/etc/fstab文件并添加以下内容 vi /etc/fstab

追加如下内容:

/dev/sdb1 /swift/node xfs noatime,nodiratime,nobarrier,logbufs=8 0 0

截图如下: 在这里插入图片描述

3.编辑/etc/rsyncd.conf文件 vi /etc/rsyncd.conf

添加如下内容:

pid file = /var/run/rsyncd.pid log file = /var/log/rsyncd.log uid = swift gid = swift address = 127.0.0.1 [account] path = /swift/node read only = false write only = no list = yes incoming chmod = 0644 outgoing chmod = 0644 max connections = 25 lock file = /var/lock/account.lock [container] path = /swift/node read only = false write only = no list = yes incoming chmod = 0644 outgoing chmod = 0644 max connections = 25 lock file = /var/lock/container.lock [object] path = /swift/node read only = false write only = no list = yes incoming chmod = 0644 outgoing chmod = 0644 max connections = 25 lock file = /var/lock/object.lock [swift_server] path = /etc/swift read only = true write only = no list = yes incoming chmod = 0644 outgoing chmod = 0644 max connections = 5 lock file = /var/lock/swift_server.lock

截图如下: 在这里插入图片描述

4.启动rsyncd服务和配置开机自启 systemctl start rsyncd.service systemctl enable rsyncd.service

截图如下: 在这里插入图片描述

四.计算节点的配置 1.编辑 /etc/swift/account-server.conf 文件

删除原有内容,再进行添加

vi /etc/swift/account-server.conf

修改后内容如下:

[DEFAULT] bind_port = 6002 user = swift swift_dir = /etc/swift devices = /swift/node mount_check = false [pipeline:main] pipeline = healthcheck recon account-server [app:account-server] use = egg:swift#account [filter:healthcheck] use = egg:swift#healthcheck [filter:recon] use = egg:swift#recon recon_cache_path = /var/cache/swift [account-replicator] [account-auditor] [account-reaper] [filter:xprofile] use = egg:swift#xprofile

截图如下: 在这里插入图片描述

2.编辑/etc/swift/container-server.conf文件

删除原有内容,再进行添加

vi /etc/swift/container-server.conf

修改后内容如下:

[DEFAULT] bind_port = 6001 user = swift swift_dir = /etc/swift devices = /swift/node mount_check = false [pipeline:main] pipeline = healthcheck recon container-server [app:container-server] use = egg:swift#container [filter:healthcheck] use = egg:swift#healthcheck [filter:recon] use = egg:swift#recon recon_cache_path = /var/cache/swift [container-replicator] [container-updater] [container-auditor] [container-sync] [filter:xprofile] use = egg:swift#xprofile

截图如下: 在这里插入图片描述

3.编辑/etc/swift/object-server.conf文件

删除原有内容,再进行添加

vi /etc/swift/object-server.conf

修改后内容如下:

[DEFAULT] bind_port = 6000 user = swift swift_dir = /etc/swift devices = /swift/node mount_check = false [pipeline:main] pipeline = healthcheck recon object-server [app:object-server] use = egg:swift#object [filter:healthcheck] use = egg:swift#healthcheck [filter:recon] use = egg:swift#recon recon_cache_path = /var/cache/swift recon_lock_path = /var/lock [object-replicator] [object-reconstructor] [object-updater] [object-auditor] [filter:xprofile] use = egg:swift#xprofile

截图如下: 在这里插入图片描述

4.编辑/etc/swift/swift.conf文件 vi /etc/swift/swift.conf

删除原有内容,再进行添加

[swift-hash] swift_hash_path_suffix = changeme swift_hash_path_prefix = changeme [storage-policy:0] name = Policy-0 default = yes aliases = yellow, orange [swift-constraints]

截图如下: 在这里插入图片描述

5.确认挂载点目录结构是否有合适的权限 chown -R swift:swift /swift/node 6.创建recon目录并配置合适的权限: mkdir -p /var/cache/swift chown -R root:swift /var/cache/swift chmod -R 775 /var/cache/swift chown -R root:swift /etc/swift

截图如下: 在这里插入图片描述

五.计算节点创建,分发并初始化rings 1.创建账户ring 1.切换到 /etc/swift目录。创建基本 account.builder 文件 cd /etc/swift swift-ring-builder account.builder create 18 1 1 2.添加每个节点到 ring 中 swift-ring-builder account.builder add --region 1 --zone 1 --ip 192.168.100.20 --port 6002 --device sdc1 --weight 100 3.验证ring内容 swift-ring-builder account.builder 4.平衡ring swift-ring-builder account.builder rebalance 2.创建ring容器 1.切换到 /etc/swift目录。创建基本container.builder文件 cd /etc/swift swift-ring-builder container.builder create 10 1 1 2.添加每个节点到 ring 中 swift-ring-builder container.builder add --region 1 --zone 1 --ip 192.168.100.20 --port 6001 --device sdc1 --weight 100 3.验证 ring 的内容: swift-ring-builder container.builder 4.平衡 ring swift-ring-builder container.builder rebalance

截图如下: 在这里插入图片描述

3.创建ring对象 1.切换到 /etc/swift目录,创建基本object.builder文件 swift-ring-builder object.builder create 10 1 1 2.添加每个节点到 ring 中 swift-ring-builder object.builder add --region 1 --zone 1 --ip 192.168.100.20 --port 6000 --device sdc1 --weight 100 3.验证 ring 的内容 swift-ring-builder object.builder 4.平衡 ring swift-ring-builder object.builder rebalance

截图如下: 在这里插入图片描述

4.计算节点复制控制节点的配置文件

将account.ring.gz,container.ring.gz和object.ring.gz 文件复制到每个存储节点和其他运行了代理服务的额外节点的 /etc/swift 目录。

scp controller:/etc/swift/*.ring.gz /etc/swift/

在compute上获取controller的一些配置文件,当然为了更快捷,大家可以在节点间配置免密登陆等一些手段 截图如下: 在这里插入图片描述

六.启动服务 1.在控制节点Controller上,启动对象存储代理服务及其依赖服务,并将它们配置为开机自启 systemctl start openstack-swift-proxy.service memcached.service systemctl enable openstack-swift-proxy.service memcached.service

截图如下: 在这里插入图片描述

2.在存储节点Compute上,启动对象存储服务,并将其设置为开机自启 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-account.service openstack-swift-account-auditor.service openstack-swift-account-reaper.service openstack-swift-account-replicator.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-container.service openstack-swift-container-auditor.service openstack-swift-container-replicator.service openstack-swift-container-updater.service systemctl start openstack-swift-object.service openstack-swift-object-auditor.service openstack-swift-object-replicator.service openstack-swift-object-updater.service systemctl enable openstack-swift-object.service openstack-swift-object-auditor.service openstack-swift-object-replicator.service openstack-swift-object-updater.service

截图如下: 在这里插入图片描述

七:Controller执行验证操作 1.导入demo凭证 . /root/demo-openrc 2. 显示服务状态: swift stat

截图如下: 在这里插入图片描述

3.创建容器 container1 openstack container create container1

截图如下: 在这里插入图片描述

4.上传一个测试文件到container1容器 openstack object create container1 /root/demo-openrc

截图如下: 在这里插入图片描述

5.列出container1容器里的所有文件 openstack object list container1

截图如下: 在这里插入图片描述

6.从container1容器里下载一个测试文件 openstack object save container1 /root/demo-openrc

截图如下: 在这里插入图片描述

(八)Open Stack(M)—Cinder安装和配置

大家记得,不要忘记打快照哦! 感谢大家,点赞,收藏,关注,评论!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3