IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> (七)Open Stack(M)---- Swift安装和配置 -> 正文阅读

[移动开发](七)Open Stack(M)---- Swift安装和配置

(六)Open Stack(M)----Dashboard安装和配置
感谢指剑大佬发表的博客与视频!感谢所 爱大佬的支持!

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

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

二:Controller安装并配置控制节点

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]

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

添加权限

chown -R root:swift /etc/swift

三:Compute安装和配置存储节点

1.安装软件包
yum -y install xfsprogs rsync openstack-swift-account openstack-swift-container openstack-swift-object
2.使用XFS格式化/dev/sdb设备

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

1.查看磁盘
 lsblk

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

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

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

四.Compute节点安装并配置组件

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

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

五.Controller节点创建,分发并初始化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.Compute节点复制Controller的配置文件

account.ring.gzcontainer.ring.gzobject.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安装和配置

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

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2022-06-23 00:58:02  更:2022-06-23 00:58:56 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 3:06:36-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码