openstack cinder使用(小节13)


highlight: tomorrow-night-bright

theme: mk-cute

@TOC

mysql

检查是否有域名 [root@mysql ~]# vim /etc/hosts 192.168.37.248 openstack.123.net ``` [root@mysql ~]# mysql -uroot -p123.com

创建数据库'cinder'

MariaDB [(none)]> CREATE DATABASE cinder;

授权

MariaDB [(none)]> GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' IDENTIFIED BY 'cinder123'; ``` controller2

测试能否远程连接'cinder' ``` [root@controller2 ~]# yum install mysql -y [root@controller2 ~]# mysql -ucinder -pcinder123 -h192.168.37.248

查看能否看到'cinder'数据库

MariaDB [(none)]> show databases; +--------------------+ | Database | +--------------------+ | cinder | | information_schema | +--------------------+ 2 rows in set (0.003 sec)

退出

MariaDB [(none)]> exit 导入环境变量 [root@controller2 ~]# source scripts/adminstein.sh 创建'cinder'用户 [root@controller2 ~]# openstack user create --domain default --password-prompt cinder User Password: <--密码:cinder Repeat User Password: <--密码:cinder +---------------------+----------------------------------+ | Field | Value | +---------------------+----------------------------------+ | domainid | 3d6cf6014ee04da69c088ae6b9b9766a | | enabled | True | | id | 87f124a579d34ccd88ef23f9aa514cd7 | | name | cinder | | options | {} | | passwordexpiresat | None | +---------------------+----------------------------------+ 授权 [root@controller2 ~]# openstack role add --project service --user cinder admin 创建cinderv2和cinderv3服务实体(API) [root@controller2 ~]# openstack service create --name cinderv2 --description "OpenStack Block Storage" volumev2 +-------------+----------------------------------+ | Field | Value | +-------------+----------------------------------+ | description | OpenStack Block Storage | | enabled | True | | id | 72b74325075c476fb569d6ee653d1985 | | name | cinderv2 | | type | volumev2 | +-------------+----------------------------------+

[root@controller2 ~]# openstack service create --name cinderv3 --description "OpenStack Block Storage" volumev3 +-------------+----------------------------------+ | Field | Value | +-------------+----------------------------------+ | description | OpenStack Block Storage | | enabled | True | | id | ece91d00fc7642d0814bfe5a4e30d6a2 | | name | cinderv3 | | type | volumev3 | +-------------+----------------------------------+ ```

``` [root@controller2 ~]# openstack endpoint create --region RegionOne volumev2 public http://openstack.123.net:8776/v2/%(projectid)s +--------------+-------------------------------------------------+ | Field | Value | +--------------+-------------------------------------------------+ | enabled | True | | id | f7b9aed5fd014e968d184c0ce7569d42 | | interface | public | | region | RegionOne | | regionid | RegionOne | | serviceid | 72b74325075c476fb569d6ee653d1985 | | servicename | cinderv2 | | servicetype | volumev2 | | url | http://openstack.123.net:8776/v2/%(projectid)s | +--------------+-------------------------------------------------+

[root@controller2 ~]# openstack endpoint create --region RegionOne volumev2 internal http://openstack.123.net:8776/v2/%(projectid)s +--------------+-------------------------------------------------+ | Field | Value | +--------------+-------------------------------------------------+ | enabled | True | | id | 971b068f0c1041bc9563af1f6b312b19 | | interface | internal | | region | RegionOne | | regionid | RegionOne | | serviceid | 72b74325075c476fb569d6ee653d1985 | | servicename | cinderv2 | | servicetype | volumev2 | | url | http://openstack.123.net:8776/v2/%(projectid)s | +--------------+-------------------------------------------------+

[root@controller2 ~]# openstack endpoint create --region RegionOne volumev2 admin http://openstack.123.net:8776/v2/%(projectid)s +--------------+-------------------------------------------------+ | Field | Value | +--------------+-------------------------------------------------+ | enabled | True | | id | 9d7c92be4ff447f089904f0cf1f38fde | | interface | admin | | region | RegionOne | | regionid | RegionOne | | serviceid | 72b74325075c476fb569d6ee653d1985 | | servicename | cinderv2 | | servicetype | volumev2 | | url | http://openstack.123.net:8776/v2/%(projectid)s | +--------------+-------------------------------------------------+ ```

``` [root@controller2 ~]# openstack endpoint create --region RegionOne volumev3 public http://openstack.123.net:8776/v3/%(projectid)s +--------------+-------------------------------------------------+ | Field | Value | +--------------+-------------------------------------------------+ | enabled | True | | id | c3c0bb13e6cb426b84d9a536e43e0eb1 | | interface | public | | region | RegionOne | | regionid | RegionOne | | serviceid | ece91d00fc7642d0814bfe5a4e30d6a2 | | servicename | cinderv3 | | servicetype | volumev3 | | url | http://openstack.123.net:8776/v3/%(projectid)s | +--------------+-------------------------------------------------+

[root@controller2 ~]# openstack endpoint create --region RegionOne volumev3 internal http://openstack.123.net:8776/v3/%(projectid)s +--------------+-------------------------------------------------+ | Field | Value | +--------------+-------------------------------------------------+ | enabled | True | | id | 0f79369fccb64bc8b3475d20fa77b854 | | interface | internal | | region | RegionOne | | regionid | RegionOne | | serviceid | ece91d00fc7642d0814bfe5a4e30d6a2 | | servicename | cinderv3 | | servicetype | volumev3 | | url | http://openstack.123.net:8776/v3/%(projectid)s | +--------------+-------------------------------------------------+

[root@controller2 ~]# openstack endpoint create --region RegionOne volumev3 admin http://openstack.123.net:8776/v3/%(projectid)s +--------------+-------------------------------------------------+ | Field | Value | +--------------+-------------------------------------------------+ | enabled | True | | id | c10ac39fbbe1451bb0ca9e515e2c63e5 | | interface | admin | | region | RegionOne | | regionid | RegionOne | | serviceid | ece91d00fc7642d0814bfe5a4e30d6a2 | | servicename | cinderv3 | | servicetype | volumev3 | | url | http://openstack.123.net:8776/v3/%(projectid)s | +--------------+-------------------------------------------------+ 安装和配置组件 [root@controller2 ~]# yum install openstack-cinder -y ```

``` [root@controller2 ~]# vim /etc/cinder/cinder.conf

[DEFAULT] transporturl = rabbit://openstack:openstack123@openstack.123.net authstrategy = keystone <--keystone认证

[database] connection = mysql+pymysql://cinder:cinder123@openstack.123.net/cinder <--数据库连接

[keystoneauthtoken] <--keystone认证信息 wwwauthenticateuri = http://openstack.123.net:5000 authurl = http://openstack.123.net:5000 memcachedservers = openstack.123.net:11211 authtype = password projectdomainname = default userdomainname = default project_name = service username = cinder password = cinder

[osloconcurrency] lockpath = /var/lib/cinder/tmp <--锁路径 可以检查一下配置文件,可以看到刚刚添加的信息检查是否正确 [root@controller2 ~]# grep -v "#" /etc/cinder/cinder.conf |grep -v "^$" [DEFAULT] transporturl = rabbit://openstack:openstack123@openstack.123.net authstrategy = keystone [backend] [backenddefaults] [barbican] [brcdfabricexample] [ciscofabricexample] [coordination] [cors] [database] connection = mysql+pymysql://cinder:cinder123@openstack.123.net/cinder [fc-zone-manager] [healthcheck] [keymanager] [keystoneauthtoken] wwwauthenticateuri = http://openstack.123.net:5000 authurl = http://openstack.123.net:5000 memcachedservers = openstack.123.net:11211 authtype = password projectdomainname = default userdomainname = default projectname = service username = cinder password = cinder [nova] [osloconcurrency] lockpath = /var/lib/cinder/tmp [oslomessagingamqp] [oslomessagingkafka] [oslomessagingnotifications] [oslomessagingrabbit] [oslomiddleware] [oslopolicy] [osloreports] [osloversionedobjects] [privsep] [profiler] [samplecastellansource] [sampleremotefilesource] [service_user] [ssl] [vault] 初始化数据库 [root@controller2 ~]# su -s /bin/sh -c "cinder-manage db sync" cinder Deprecated: Option "logdir" from group "DEFAULT" is deprecated. Use option "log-dir" from group "DEFAULT". ``` mysql

到数据库验证一下,看cinder有没有生成表 ``` MariaDB [(none)]> use cinder; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A

Database changed MariaDB [cinder]> show tables; +----------------------------+ | Tablesincinder | +----------------------------+ | attachmentspecs | | backupmetadata | | backups | | cgsnapshots | | clusters | | consistencygroups | | driverinitiatordata | | encryption | | groupsnapshots | | grouptypeprojects | | grouptypespecs | | grouptypes | | groupvolumetypemapping | | groups | | imagevolumecacheentries | | messages | | migrateversion | | qualityofservicespecs | | quotaclasses | | quotausages | | quotas | | reservations | | services | | snapshotmetadata | | snapshots | | transfers | | volumeadminmetadata | | volumeattachment | | volumeglancemetadata | | volumemetadata | | volumetypeextraspecs | | volumetypeprojects | | volume_types | | volumes | | workers | +----------------------------+ 35 rows in set (0.000 sec) ``` controller2

配置计算以使用块存储 ``` [root@controller2 ~]# vim /etc/nova/nova.conf

[cinder] osregionname = RegionOne 重启nova【可查看nova日志'tail -f /var/log/nova/*.log '】 [root@controller2 ~]# systemctl restart openstack-nova-api.service cinder管理端设置开机启动 [root@controller2 ~]# systemctl enable openstack-cinder-api.service openstack-cinder-scheduler.service 启动cinder管理端【可查看cinder日志'tail -f /var/log/cinder/*.log '】 [root@controller2 ~]# systemctl start openstack-cinder-api.service openstack-cinder-scheduler.service ``` ha1

``` [root@ha1 ~]# vim /etc/haproxy/haproxy.cfg

结尾添加以下内容

listen openstack-cinder bind 192.168.37.248:8776 mode tcp server 192.168.37.102 192.168.37.102:8776 check inter 3s fall 3 rise 5 server 192.168.37.101 192.168.37.101:8776 check inter 3s fall 3 rise 5 backup <--备份服务器(建议添加) 重启haproxy服务 [root@ha1 ~]# systemctl restart haproxy.service **controller2** [root@controller2 ~]# systemctl restart openstack-cinder-api.service openstack-cinder-scheduler.service ``` openstack卷服务列表

如果此处'Not Found (HTTP 404)',请查看检查ha1的'/etc/haproxy/haproxy.cfg'是否正确 [root@controller2 ~]# openstack volume service list +------------------+-------------+------+---------+-------+----------------------------+ | Binary | Host | Zone | Status | State | Updated At | +------------------+-------------+------+---------+-------+----------------------------+ | cinder-scheduler | controller2 | nova | enabled | up | 2022-10-17T08:27:36.000000 | +------------------+-------------+------+---------+-------+----------------------------+ mysql

已经配置了yum源、 [root@mysql ~]# ll /etc/yum.repos.d/ total 52 -rw-r--r--. 1 root root 1664 Nov 23 2018 CentOS-Base.repo -rw-r--r-- 1 root root 956 Jun 19 2019 CentOS-Ceph-Nautilus.repo -rw-r--r--. 1 root root 1309 Nov 23 2018 CentOS-CR.repo -rw-r--r--. 1 root root 649 Nov 23 2018 CentOS-Debuginfo.repo -rw-r--r--. 1 root root 314 Nov 23 2018 CentOS-fasttrack.repo -rw-r--r--. 1 root root 630 Nov 23 2018 CentOS-Media.repo -rw-r--r-- 1 root root 717 Mar 24 2020 CentOS-NFS-Ganesha-28.repo -rw-r--r-- 1 root root 1290 Apr 29 2019 CentOS-OpenStack-stein.repo -rw-r--r-- 1 root root 612 Feb 1 2019 CentOS-QEMU-EV.repo -rw-r--r--. 1 root root 1331 Nov 23 2018 CentOS-Sources.repo -rw-r--r-- 1 root root 353 Jul 31 2018 CentOS-Storage-common.repo -rw-r--r--. 1 root root 5701 Nov 23 2018 CentOS-Vault.repo 安装包 [root@mysql ~]# yum install lvm2 device-mapper-persistent-data -y 启动服务并设置为开机启动 [root@mysql ~]# systemctl start lvm2-lvmetad.service [root@mysql ~]# systemctl enable lvm2-lvmetad.service 添加硬盘-SCSI-创建新虚拟机磁盘

图片.png

```

TAB补全可以看到有几个host

[root@mysql ~]# echo "- - -" > /sys/class/scsi_host/host host0/ host1/ host2/

在每个host里面都扫描一次、然后lsblk就能看看到新增的硬盘

[root@mysql ~]# echo "- - -" > /sys/class/scsihost/host0/scan [root@mysql ~]# echo "- - -" > /sys/class/scsihost/host1/scan [root@mysql ~]# echo "- - -" > /sys/class/scsi_host/host2/scan

[root@mysql ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 100G 0 disk ├─sda1 8:1 0 512M 0 part /boot └─sda2 8:2 0 99.5G 0 part ├─centos-root 253:0 0 97.5G 0 lvm / └─centos-swap 253:1 0 2G 0 lvm [SWAP] sdb 8:16 0 500G 0 disk <--新增的硬盘 sr0 11:0 1 918M 0 rom 创建LVM物理卷 [root@mysql ~]# pvcreate /dev/sdb Physical volume "/dev/sdb" successfully created. 创建LVM卷组 [root@mysql ~]# vgcreate cinder-volumes /dev/sdb Volume group "cinder-volumes" successfully created 在设备部分,添加一个过滤器,该过滤器接受/dev/sdb设备并拒绝所有其他设备 [root@mysql ~]# vim /etc/lvm/lvm.conf

devices { ... filter = [ "a/sdb/", "r/.*/" ] <--注意磁盘是sdb就写sdb,sdc就写sdc 安装包 [root@mysql ~]# yum install openstack-cinder targetcli python-keystone -y 编辑/etc/cinder/cinder.conf文件 [root@mysql ~]# vim /etc/cinder/cinder.conf

[DEFAULT] transporturl = rabbit://openstack:openstack123@openstack.123.net authstrategy = keystone enabledbackends = lvm <--调用的后端存储是那个、再下面[lvm]名字要一致 glanceapi_servers = http://openstack.123.net:9292

[database] connection = mysql+pymysql://cinder:cinder123@openstack.123.net/cinder

[keystoneauthtoken] wwwauthenticateuri = http://openstack.123.net:5000 authurl = http://openstack.123.net:5000 memcachedservers = openstack.123.net:11211 authtype = password projectdomainname = default userdomainname = default project_name = service username = cinder password = cinder

[osloconcurrency] lockpath = /var/lib/cinder/tmp

[lvm] <-- volumedriver = cinder.volume.drivers.lvm.LVMVolumeDriver volumegroup = cinder-volumes targetprotocol = iscsi targethelper = lioadm volumebackendname=Openstack-lvm <--加上自定义名称,做多存储区分 启动cinder-volume服务并设置开机启动 [root@mysql ~]# systemctl start openstack-cinder-volume.service target.service [root@mysql ~]# systemctl enable openstack-cinder-volume.service target.service ``` controller2

控制端验证、此时应该有两个服务 [root@controller2 ~]# openstack volume service list +------------------+-------------+------+---------+-------+----------------------------+ | Binary | Host | Zone | Status | State | Updated At | +------------------+-------------+------+---------+-------+----------------------------+ | cinder-scheduler | controller2 | nova | enabled | up | 2022-10-17T17:01:01.000000 | | cinder-volume | mysql@lvm | nova | enabled | up | 2022-10-17T17:00:54.000000 | +------------------+-------------+------+---------+-------+----------------------------+

图片.png

新建2个虚拟机 图片.png

图片.png

图片.png

图片.png

图片.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值