openstack-cinder和dashboard模块以及控制台操作————大完结!!!!!!!!

前言

接着上文的所有组件部署完毕, 那么现在部署存储和控制界面

  • Cinder(块存储服务模块)其作用:管理所有块存储设备,为虚拟机提供存储服务。
  • Horizon 为 Openstack 提供一个 WEB 前端的管理界面 (UI 服务 )通过 Horizone 所提供的 DashBoard 服务 , 管理员可以使用通过 WEB UI 对 Openstack 整体云环境进行管理 , 并可直观看到各种操作结果与运行状态。

OpenStack-Cinder组件部署

  • ct控制节点
[root@ct ~]# mysql -uroot -p       //创建数据库实例和用户
Enter password: 

MariaDB [(none)]> create database cinder;
Query OK, 1 row affected (0.001 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' IDENTIFIED BY 'CINDER_DBPASS';
Query OK, 0 rows affected (0.001 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' IDENTIFIED BY 'CINDER_DBPASS';
Query OK, 0 rows affected (0.000 sec)

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.001 sec)

MariaDB [(none)]> exit
Bye

  • 创建cinder用户,密码设置为CINDER_PASS
[root@ct neutron]# openstack user create --domain default --password CINDER_PASS cinder
+---------------------+----------------------------------+
| Field               | Value                            |
+---------------------+----------------------------------+
| domain_id           | default                          |
| enabled             | True                             |
| id                  | a4e9dd3fbed84508a717f1158adf79cf |
| name                | cinder                           |
| options             | {}                               |
| password_expires_at | None                             |
+---------------------+----------------------------------+

[root@ct neutron]# openstack role add --project service --user cinder admin //把cinder用户添加到service服务中,并给admin权限


- cinder有V2和V3两个并存版本的API,所以创建两个版本的service实例
[root@ct neutron]# openstack service create --name cinderv2 --description "OpenStack Block Storage" volumev2
+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | OpenStack Block Storage          |
| enabled     | True                             |
| id          | d905582eddfc4d7c86d0eea7640aed25 |
| name        | cinderv2                         |
| type        | volumev2                         |
+-------------+----------------------------------+
[root@ct neutron]# openstack service create --name cinderv3 --description "OpenStack Block Storage" volumev3
+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | OpenStack Block Storage          |
| enabled     | True                             |
| id          | 0762f8270d1c4fdeb0ad0a9e4db2f265 |
| name        | cinderv3                         |
| type        | volumev3                         |
+-------------+----------------------------------+



  • 给两个版本的API创建endpoint
[root@ct neutron]# openstack endpoint create --region RegionOne volumev2 public http://ct:8776/v2/%\(project_id\)s
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | dd49722f68e0482ea3bbbcc847b0327f |
| interface    | public                           |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | d905582eddfc4d7c86d0eea7640aed25 |
| service_name | cinderv2                         |
| service_type | volumev2                         |
| url          | http://ct:8776/v2/%(project_id)s |
+--------------+----------------------------------+
[root@ct neutron]#  openstack endpoint create --region RegionOne volumev2 internal http://ct:8776/v2/%\(project_id\)s
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | 48086f297e08406bbe9ea9f78fadb744 |
| interface    | internal                         |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | d905582eddfc4d7c86d0eea7640aed25 |
| service_name | cinderv2                         |
| service_type | volumev2                         |
| url          | http://ct:8776/v2/%(project_id)s |
+--------------+----------------------------------+
[root@ct neutron]#  openstack endpoint create --region RegionOne volumev2 admin http://ct:8776/v2/%\(project_id\)s
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | a84ad15de4cf4e3aa20460432f3393c9 |
| interface    | admin                            |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | d905582eddfc4d7c86d0eea7640aed25 |
| service_name | cinderv2                         |
| service_type | volumev2                         |
| url          | http://ct:8776/v2/%(project_id)s |
+--------------+----------------------------------+
[root@ct neutron]#  openstack endpoint create --region RegionOne volumev3 public http://ct:8776/v3/%\(project_id\)s
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | 0bcd867a1d0b4102a666e688b1b84848 |
| interface    | public                           |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | 0762f8270d1c4fdeb0ad0a9e4db2f265 |
| service_name | cinderv3                         |
| service_type | volumev3                         |
| url          | http://ct:8776/v3/%(project_id)s |
+--------------+----------------------------------+
[root@ct neutron]#  openstack endpoint create --region RegionOne volumev3 internal http://ct:8776/v3/%\(project_id\)s
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | fac81cf1f38842f6bbeefb6122b2462d |
| interface    | internal                         |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | 0762f8270d1c4fdeb0ad0a9e4db2f265 |
| service_name | cinderv3                         |
| service_type | volumev3                         |
| url          | http://ct:8776/v3/%(project_id)s |
+--------------+----------------------------------+
[root@ct neutron]#  openstack endpoint create --region RegionOne volumev3 admin http://ct:8776/v3/%\(project_id\)s
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | cd1f528498144a8fae19a65328b1bc57 |
| interface    | admin                            |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | 0762f8270d1c4fdeb0ad0a9e4db2f265 |
| service_name | cinderv3                         |
| service_type | volumev3                         |
| url          | http://ct:8776/v3/%(project_id)s |
+--------------+----------------------------------+

  • 安装cinder服务
[root@ct ~]# yum -y install openstack-cinder


[root@ct ~]# cp /etc/cinder/cinder.conf{,.bak}
[root@ct ~]# grep -Ev '#|^$' /etc/cinder/cinder.conf.bak>/etc/cinder/cinder.conf
[root@ct ~]# openstack-config --set /etc/cinder/cinder.conf database connection mysql+pymysql://cinder:CINDER_DBPASS@ct/cinder
[root@ct ~]# openstack-config --set /etc/cinder/cinder.conf DEFAULT auth_strategy keystone
[root@ct ~]# openstack-config --set /etc/cinder/cinder.conf keystone_authtoken www_authenticate_uri http://ct:5000
[root@ct ~]# openstack-config --set /etc/cinder/cinder.conf keystone_authtoken auth_url http://ct:5000
[root@ct ~]# openstack-config --set /etc/cinder/cinder.conf keystone_authtoken memcached_servers ct:11211
[root@ct ~]# openstack-config --set /etc/cinder/cinder.conf keystone_authtoken auth_type password
[root@ct ~]# openstack-config --set /etc/cinder/cinder.conf keystone_authtoken project_domain_name default
[root@ct ~]# openstack-config --set /etc/cinder/cinder.conf keystone_authtoken user_domain_name default[root@ct ~]# openstack-config --set /etc/cinder/cinder.conf keystone_authtoken project_name service
[root@ct ~]# openstack-config --set /etc/cinder/cinder.conf keystone_authtoken username cinder
[root@ct ~]# openstack-config --set /etc/cinder/cinder.conf keystone_authtoken password CINDER_PASS
[root@ct ~]# openstack-config --set /etc/cinder/cinder.conf DEFAULT my_ip 192.168.30.10
[root@ct ~]# openstack-config --set /etc/cinder/cinder.conf oslo_concurrency lock_path /var/lib/cinder/tmp

[root@ct ~]# cd /etc/cinder/
[root@ct cinder]# cat cinder.conf
[DEFAULT]
transport_url = rabbit://openstack:RABBIT_PASS@ct        //配置rabbitmq连接
auth_strategy = keystone               //认证方法
my_ip = 192.168.30.10                 //内网ip
[database]
connection = mysql+pymysql://cinder:CINDER_DBPASS@ct/cinder        //对接数据库


[keystone_authtoken]                     //配置keystone认证
www_authenticate_uri = http://ct:5000        
auth_url = http://ct:5000
memcached_servers = ct:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = cinder               //指定通过cinder账号到keystone做认证(用户名、密码)
password = CINDER_PASS


[oslo_concurrency]
lock_path = /var/lib/cinder/tmp


[root@ct cinder]#  su -s /bin/sh -c "cinder-manage db sync" cinder       //同步cinder数据库(填充块存储数据库)
Deprecated: Option "logdir" from group "DEFAULT" is deprecated. Use option "log-dir" from group "DEFAULT".

  • 修改nova配置文件,并重启服务
[root@ct cinder]# openstack-config --set /etc/nova/nova.conf cinder os_region_name RegionOne
[root@ct cinder]# systemctl restart openstack-nova-api.service



- 配置cinder服务
[root@ct cinder]# systemctl enable openstack-cinder-api.service openstack-cinder-scheduler.service
Created symlink from /etc/systemd/system/multi-user.target.wants/openstack-cinder-api.service to /usr/lib/systemd/system/openstack-cinder-api.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/openstack-cinder-scheduler.service to /usr/lib/systemd/system/openstack-cinder-scheduler.service.
[root@ct cinder]# systemctl start openstack-cinder-api.service openstack-cinder-scheduler.service


[root@ct cinder]#  cinder service-list      //配置控制节点验证
+------------------+------+------+---------+-------+----------------------------+---------+-----------------+---------------+
| Binary           | Host | Zone | Status  | State | Updated_at                 | Cluster | Disabled Reason | Backend State |
+------------------+------+------+---------+-------+----------------------------+---------+-----------------+---------------+
| cinder-scheduler | ct   | nova | enabled | up    | 2021-08-29T11:22:08.000000 | -       | -               |               |
+------------------+------+------+---------+-------+----------------------------+---------+-----------------+---------------+
  • 计算节点ct2配置cinder(存储节点)
[root@ct2 ~]# yum -y install openstack-cinder targetcli python-keystone
[root@ct2 ~]# yum -y install lvm2 device-mapper-persistent-data
[root@ct2 ~]# systemctl enable lvm2-lvmetad.service
[root@ct2 ~]# systemctl start lvm2-lvmetad.service


- 创建lvm物理卷和卷组
[root@ct2 ~]# pvcreate /dev/sdb
  Physical volume "/dev/sdb" successfully created.
[root@ct2 ~]# vgcreate cinder-volumes /dev/sdb
  Volume group "cinder-volumes" successfully created
[root@ct2 ~]# vim /etc/lvm/lvm.conf     //修改lvm配置文件指定使用磁盘

在这里插入图片描述

[root@ct2 ~]# systemctl restart lvm2-lvmetad.service       //重启lvm服务





[root@ct2 ~]# cp /etc/cinder/cinder.conf{,.bak}
[root@ct2 ~]# grep -Ev '#|^$' /etc/cinder/cinder.conf.bak>/etc/cinder/cinder.conf

[root@ct2 ~]# openstack-config --set /etc/cinder/cinder.conf  database  connection mysql+pymysql://cinder:CINDER_DBPASS@ct/cinder
[root@ct2 ~]# openstack-config --set /etc/cinder/cinder.conf  DEFAULT auth_strategy keystone
[root@ct2 ~]# openstack-config --set /etc/cinder/cinder.conf  DEFAULT my_ip 192.168.100.13
[root@ct2 ~]# openstack-config --set /etc/cinder/cinder.conf  DEFAULT enabled_backends lvm
[root@ct2 ~]# openstack-config --set /etc/cinder/cinder.conf  DEFAULT glance_api_servers http://ct:9292[root@ct2 ~]# openstack-config --set /etc/cinder/cinder.conf  keystone_authtoken www_authenticate_uri http://ct:5000
[root@ct2 ~]# openstack-config --set /etc/cinder/cinder.conf  keystone_authtoken auth_url http://ct:5000
[root@ct2 ~]# openstack-config --set /etc/cinder/cinder.conf  keystone_authtoken memcached_servers ct:11211
[root@ct2 ~]# openstack-config --set /etc/cinder/cinder.conf  keystone_authtoken auth_type password
[root@ct2 ~]# openstack-config --set /etc/cinder/cinder.conf  keystone_authtoken project_domain_name default
[root@ct2 ~]# openstack-config --set /etc/cinder/cinder.conf  keystone_authtoken user_domain_name default
[root@ct2 ~]# openstack-config --set /etc/cinder/cinder.conf  keystone_authtoken project_name service
[root@ct2 ~]# openstack-config --set /etc/cinder/cinder.conf  keystone_authtoken username cinder
[root@ct2 ~]# openstack-config --set /etc/cinder/cinder.conf  keystone_authtoken password CINDER_PASS
[root@ct2 ~]# openstack-config --set /etc/cinder/cinder.conf  lvm volume_driver cinder.volume.drivers.lvm.LVMVolumeDriver
[root@ct2 ~]# openstack-config --set /etc/cinder/cinder.conf  lvm volume_group cinder-volumes
[root@ct2 ~]# openstack-config --set /etc/cinder/cinder.conf  lvm target_protocol iscsi
[root@ct2 ~]# openstack-config --set /etc/cinder/cinder.conf  lvm target_helper lioadm
[root@ct2 ~]# openstack-config --set /etc/cinder/cinder.conf  oslo_concurrency lock_path /var/lib/cinder/tmp

[root@ct2 cinder]# cat cinder.conf
[DEFAULT]
transport_url = rabbit://openstack:RABBIT_PASS@ct
auth_strategy = keystone
my_ip = 192.168.100.13
enabled_backends = lvm
glance_api_servers = http://ct:9292
[backend]
[backend_defaults]
[barbican]
[brcd_fabric_example]
[cisco_fabric_example]
[coordination]
[cors]
[database]
connection = mysql+pymysql://cinder:CINDER_DBPASS@ct/cinder
[fc-zone-manager]
[healthcheck]
[key_manager]
[keystone_authtoken]
www_authenticate_uri = http://ct:5000
auth_url = http://ct:5000
memcached_servers = ct:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = cinder
password = CINDER_PASS
[nova]
[oslo_concurrency]
lock_path = /var/lib/cinder/tmp
[oslo_messaging_amqp]
[oslo_messaging_kafka]
[oslo_messaging_notifications]
[oslo_messaging_rabbit]
[oslo_middleware]
[oslo_policy]
[oslo_reports]
[oslo_versionedobjects]
[privsep]
[profiler]
[sample_castellan_source]
[sample_remote_file_source]
[service_user]
[ssl]
[vault]


[lvm]             //为LVM后端配置LVM驱动程序
volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver      //指定LVM驱动程序;即通过指定的驱动创建LVM
volume_group = cinder-volumes           //指定卷组(vg)
target_protocol = iscsi           //pv使用的是iscsi协议,可以提供块存储服务
target_helper = lioadm            //iscsi管理工具


- 开机自启和启动服务
[root@ct2 cinder]#  systemctl enable openstack-cinder-volume.service target.service
Created symlink from /etc/systemd/system/multi-user.target.wants/openstack-cinder-volume.service to /usr/lib/systemd/system/openstack-cinder-volume.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/target.service to /usr/lib/systemd/system/target.service.
[root@ct2 cinder]#  systemctl start openstack-cinder-volume.service target.service

  • 再ct控制节点查看是否有
[root@ct cinder]# openstack volume service list
+------------------+---------+------+---------+-------+----------------------------+
| Binary           | Host    | Zone | Status  | State | Updated At                 |
+------------------+---------+------+---------+-------+----------------------------+
| cinder-scheduler | ct      | nova | enabled | up    | 2021-08-29T11:37:18.000000 |
| cinder-volume    | ct2@lvm | nova | enabled | up    | 2021-08-29T11:37:13.000000 |
+------------------+---------+------+---------+-------+----------------------------+

OpenStack-Dashboard组件部署

  • Dashboard控制台也需要httpd支持,所以此处可以在C1节点进行安装httpd
[root@ct1 ~]# yum -y install openstack-dashboard httpd
[root@ct1 ~]# cd /etc/openstack-dashboard/
[root@ct1 openstack-dashboard]# vim local_settings

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

[root@ct1 openstack-dashboard]# python manage.py make_web_conf --apache >      /etc/httpd/conf.d/openstack-dashboard.conf          //重新生成
[root@ct1 openstack-dashboard]# systemctl enable httpd.service
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
[root@ct1 openstack-dashboard]# systemctl restart httpd.service

  • 在ct控制节点重启memcached组件
[root@ct ~]#  systemctl restart memcached.service

  • 打开浏览器访问“http://192.168.20.88”(即ct1节点的net网卡IP地址)
  • “域:default、用户名:admin、密码:ADMIN_PASS”(在~.bashrc中已定义)
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 创建实例
    在这里插入图片描述
    在这里插入图片描述
  • 创建实例打通内外网
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  • 创建卷、挂载到实例
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 好的接下来就是进入云虚拟机主机
  • 通过fdisk -l查看
  • 然后格式化,
  • 然后挂载
  • 然后df-hT看一下就行了
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值