ToB企服应用市场:ToB评测及商务社交产业平台

标题: 云计算:OpenStack 分布式架构添加LVM存储(单控制节点与多计算节点) [打印本页]

作者: 瑞星    时间: 2024-6-11 13:19
标题: 云计算:OpenStack 分布式架构添加LVM存储(单控制节点与多计算节点)
目录
一、实验
1.情况
2.安装并配置控制节点
3. 安装并配置存储节点
4.利用LVM存储


一、实验

1.情况

(1) 主机
表1 主机

主机架构IP备注
controller控制节点192.168.204.210已摆设
compute01计算节点1192.168.204.211 已摆设
compute02计算节点2192.168.204.212已摆设
storage01存储节点1192.168.204.221
(2)官网
OpenStack Docs: OpenStack Installation Guide for Red Hat Enterprise Linux and CentOS
(3)网络
 ①存储节点1  ping 控制节点

②存储节点1 ping 计算节点1 与 计算节点2

(4) 时间同步
① 存储节点1
  
  1. [root@storage01 ~]# yum install -y chrony
复制代码

  
  1. [root@storage01 ~]# vim /etc/chrony.conf
  2. [root@storage01 ~]# systemctl restart chronyd.service && systemctl enable chronyd.service
复制代码

 ③测试
  
  1. [root@controller ~]# date
  2. [root@compute01 ~]# date
  3. [root@compute02 ~]# date
  4. [root@storage01 ~]# date
复制代码




(5) 控制节点查看(目前已摆设controller、compute01与compute02)
  
  1. # neutron agent-list
复制代码

2.安装并配置控制节点

(1)创建数据库
①用数据库毗连客户端 (生产情况需要密码)
  
  1. $ mysql -u root -p
复制代码
② 创建 cinder 数据库
  
  1. CREATE DATABASE cinder;
复制代码
③ 允许 cinder 数据库合适的访问权限(用合适的密码替换 CINDER_DBPASS)
  
  1. GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' \
  2.   IDENTIFIED BY 'CINDER_DBPASS';
  3. GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' \
  4.   IDENTIFIED BY 'CINDER_DBPASS';
复制代码

(2)创建一个 cinder 用户
  
  1. $ openstack user create --domain default --password-prompt cinder
复制代码
​(3)添加 admin 角色到 cinder 用户上
  
  1. $ openstack role add --project service --user cinder admin
复制代码
​(4)创建 cinder 和 cinderv2 服务实体
  
  1. $ openstack service create --name cinder \
  2.   --description "OpenStack Block Storage" volume
  3. $ openstack service create --name cinderv2 \
  4.   --description "OpenStack Block Storage" volumev2
复制代码

(5)查看
  
  1. # openstack service list |grep cinder
复制代码
​(6)创建块设备存储服务的 API 入口点
  
  1. $ openstack endpoint create --region RegionOne \
  2.   volume public http://controller:8776/v1/%\(tenant_id\)s
  3. $ openstack endpoint create --region RegionOne \
  4.   volume internal http://controller:8776/v1/%\(tenant_id\)s
  5. $ openstack endpoint create --region RegionOne \
  6.   volume admin http://controller:8776/v1/%\(tenant_id\)s
  7. $ openstack endpoint create --region RegionOne \
  8.   volumev2 public http://controller:8776/v2/%\(tenant_id\)s
  9. $ openstack endpoint create --region RegionOne \
  10.   volumev2 internal http://controller:8776/v2/%\(tenant_id\)s
  11. $ openstack endpoint create --region RegionOne \
  12.   volumev2 admin http://controller:8776/v2/%\(tenant_id\)s
复制代码

(7)查看
  
  1. # openstack endpoint list |grep cinder
复制代码

(8) 安装软件包
  
  1. # yum install openstack-cinder
复制代码

(9) 编辑 /etc/cinder/cinder.conf
① 在 “[DEFAULT]” 和 “[oslo_messaging_rabbit]”部门,配置 “RabbitMQ” 消息队列访问
  
  1. [DEFAULT]
  2. ...
  3. rpc_backend = rabbit
  4. [oslo_messaging_rabbit]
  5. ...
  6. rabbit_host = controller
  7. rabbit_userid = openstack
  8. rabbit_password = RABBIT_PASS
复制代码
②在 “[DEFAULT]” 和 “[keystone_authtoken]” 部门,配置认证服务访问
  
  1. [DEFAULT]
  2. ...
  3. auth_strategy = keystone
  4. [keystone_authtoken]
  5. ...
  6. auth_uri = http://controller:5000
  7. auth_url = http://controller:35357
  8. memcached_servers = controller:11211
  9. auth_type = password
  10. project_domain_name = default
  11. user_domain_name = default
  12. project_name = service
  13. username = cinder
  14. password = CINDER_PASS
复制代码
③ 在 [DEFAULT 部门,配置my_ip来利用控制节点的管理接口的IP 地址
  
  1. [DEFAULT]
  2. ...
  3. my_ip = 192.168.204.210
复制代码
④ 在 [oslo_concurrency] 部门,配置锁路径
  
  1. [oslo_concurrency]
  2. ...
  3. lock_path = /var/lib/cinder/tmp
复制代码
⑤ 备份复制


(10) 初始化块设备服务的数据库(忽略输出中任何不推荐利用的信息)
  
  1. # su -s /bin/sh -c "cinder-manage db sync" cinder
复制代码

(11)配置计算节点以利用块设备存储
编辑文件 /etc/nova/nova.conf 
  
  1. [cinder]
  2. os_region_name = RegionOne
复制代码


(12)重启服务
①重启计算API 服务
  
  1. # systemctl restart openstack-nova-api.service
复制代码
②启动块设备存储服务,并将其配置为开机自启
  
  1. # systemctl enable openstack-cinder-api.service openstack-cinder-scheduler.service
  2. # systemctl start openstack-cinder-api.service openstack-cinder-scheduler.service
复制代码

(13)登录体系

(14)已新增卷的模块
   

  
(15)查看卷

(16)查看服务列表
  
  1. # openstack service list
复制代码


3. 安装并配置存储节点

(1)安装 LVM 包
  
  1. # yum install lvm2
复制代码

(2)启动LVM的metadata服务而且设置该服务随体系启动
  
  1. # systemctl enable lvm2-lvmetad.service
  2. # systemctl start lvm2-lvmetad.service
复制代码

(3)查看分区情况
  1. # fdisk -l
复制代码

(4)查看挂载情况
  1. # df -Th
复制代码

(5)创建LVM 物理卷
① 创建LVM 物理卷 /dev/sdc 
  1. # pvcreate /dev/sdb
  2. Physical volume "/dev/sdb" successfully created
复制代码
② 创建LVM 物理卷 /dev/sdd 
  1. # pvcreate /dev/sdc
  2. Physical volume "/dev/sdc" successfully created
复制代码
③查看
  1. # pvs
复制代码

(7)创建 LVM 卷组
①  创建 LVM 卷组 cinder-ssd
  1. # vgcreate cinder-ssd /dev/sdb
  2. Volume group "cinder-ssd" successfully created
复制代码
② 创建 LVM 卷组 cinder-data
  1. # vgcreate cinder-ssd /dev/sdc
  2. Volume group "cinder-data" successfully created
复制代码
③ 查看
  1. # vgs
复制代码

(8)重新配置LVM,让它只扫描包罗指定卷组的设备,编辑/etc/lvm/lvm.conf文件
①在devices部门,添加一个过滤器,只担当/dev/sdb 与/dev/sdc 设备,拒绝其他所有设备
  1. devices {
  2. ...
  3. filter = [ "a/sdb/", "a/sdc/","r/.*/"]
复制代码

(9) 安装软件包
  1. # yum install openstack-cinder targetcli python-keystone
复制代码

(10) 编辑 /etc/cinder/cinder.conf
①在 [database] 部门,配置数据库访问
  1. [database]
  2. ...
  3. connection = mysql+pymysql://cinder:CINDER_DBPASS@controller/cinder
复制代码
②在 “[DEFAULT]” 和 “[oslo_messaging_rabbit]”部门,配置 “RabbitMQ” 消息队列访问
  1. [DEFAULT]
  2. ...
  3. rpc_backend = rabbit
  4. [oslo_messaging_rabbit]
  5. ...
  6. rabbit_host = controller
  7. rabbit_userid = openstack
  8. rabbit_password = RABBIT_PASS
复制代码
③ 在 “[DEFAULT]” 和 “[keystone_authtoken]” 部门,配置认证服务访问
  1. [DEFAULT]
  2. ...
  3. auth_strategy = keystone
  4. [keystone_authtoken]
  5. ...
  6. auth_uri = http://controller:5000
  7. auth_url = http://controller:35357
  8. memcached_servers = controller:11211
  9. auth_type = password
  10. project_domain_name = default
  11. user_domain_name = default
  12. project_name = service
  13. username = cinder
  14. password = CINDER_PASS
复制代码
④ 在 [DEFAULT] 部门,配置 my_ip 选项
  1. [DEFAULT]
  2. ...
  3. my_ip = 192.168.204.212
复制代码

 ⑤ 在[ssd]部门,配置LVM后端以LVM驱动结束,卷组cinder-ssd ,iSCSI 协议和正确的 iSCSI服务
  1. [ssd]
  2. ...
  3. volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver
  4. volume_group = cinder-ssd
  5. iscsi_protocol = iscsi
  6. iscsi_helper = lioadm
  7. volume_backend_name = ssd
复制代码
 ⑥ 在[sata]部门,配置LVM后端以LVM驱动结束,卷组cinder-data ,iSCSI 协议和正确的 iSCSI服务
  1. [ssd]
  2. ...
  3. volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver
  4. volume_group = cinder-data
  5. iscsi_helper = lioadm
  6. volume_backend_name = sata
复制代码
 ⑦在 [DEFAULT] 部门,启用 LVM 后端
  1. [DEFAULT]
  2. ...
  3. enabled_backends = ssd,sata
复制代码
⑧在 [DEFAULT] 区域,配置镜像服务 API 的位置
  1. [DEFAULT]
  2. ...
  3. glance_api_servers = http://controller:9292
复制代码
在 [oslo_concurrency] 部门,配置锁路径
  1. [oslo_concurrency]
  2. ...
  3. lock_path = /var/lib/cinder/tmp
复制代码
⑨备份复制

(11)完成安装
①启动块存储卷服务及其依靠的服务,并将其配置为随体系启动
  1. # systemctl enable openstack-cinder-volume.service target.service
  2. # systemctl start openstack-cinder-volume.service target.service
复制代码

(12)控制节点查看服务列表
  1. # openstack service list
复制代码

4.利用LVM存储

(1)登录体系

(2)查看卷

(3)创建卷

(4)完成

(5)控制节点查看
  1. # cinder list
复制代码

(6)存储节点查看
  1. # lvs
复制代码

(7) 扩展卷

(8)修改为2G 

(9)扩展中

(10)完成

(11)控制节点查看
  1. # cinder list
复制代码

(12)存储节点查看
  1. # lvs
复制代码

(13)删除卷

(14)查看

(15)新增存储类型ssd与sata

(16) 关联后端存储

(17)查看卷

(18)创建ssd类型卷

(19)创建中

(20)完成

(21)创建sata类型卷

(22) 创建中

(23)完成

(24)控制节点查看
  1. # cinder list
复制代码

(25)存储节点查看
  1. # lvs
复制代码


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4