天天看點

cinder塊存儲服務安裝

cinder-api:  接受和響應外部有關塊存儲請求

cinder-volume:  提供存儲空間

cinder-scheduler:  排程器,決定将要配置設定的空間由哪一個cinder-volume提供

cinder-backup:  備份存儲

1、資料庫創庫授權

 CREATE DATABASE cinder;

GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' \

  IDENTIFIED BY 'CINDER_DBPASS';

GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' \

  IDENTIFIED BY 'CINDER_DBPASS'; 

2、在keystone建立系統使用者(glance,nova,neutron)關聯角色

openstack user create --domain default --password CINDER_PASS cinder

openstack role add --project service --user cinder admin

3、在keystone上建立服務和注冊api

openstack service create --name cinder \

  --description "OpenStack Block Storage" volume

openstack service create --name cinderv2 \

  --description "OpenStack Block Storage" volumev2

openstack endpoint create --region RegionOne \

  volume public http://controller:8776/v1/%\(tenant_id\)s

openstack endpoint create --region RegionOne \

  volume internal http://controller:8776/v1/%\(tenant_id\)s

openstack endpoint create --region RegionOne \

  volume admin http://controller:8776/v1/%\(tenant_id\)s

openstack endpoint create --region RegionOne \

  volumev2 public http://controller:8776/v2/%\(tenant_id\)s

openstack endpoint create --region RegionOne \

  volumev2 internal http://controller:8776/v2/%\(tenant_id\)s

openstack endpoint create --region RegionOne \

  volumev2 admin http://controller:8776/v2/%\(tenant_id\)s

4、安裝服務相應的軟體包

 yum install openstack-cinder -y 

5、修改相應服務的配置檔案

openstack-config --set /etc/cinder/cinder.conf   DEFAULT  rpc_backend  rabbit

openstack-config --set /etc/cinder/cinder.conf   DEFAULT  auth_strategy  keystone

openstack-config --set /etc/cinder/cinder.conf   DEFAULT  my_ip  10.0.0.11

openstack-config --set /etc/cinder/cinder.conf   database connection mysql+pymysql://cinder:[email protected]/cinder

openstack-config --set /etc/cinder/cinder.conf   keystone_authtoken   auth_uri  http://controller:5000

openstack-config --set /etc/cinder/cinder.conf   keystone_authtoken   auth_url  http://controller:35357

openstack-config --set /etc/cinder/cinder.conf   keystone_authtoken   memcached_servers  controller:11211

openstack-config --set /etc/cinder/cinder.conf   keystone_authtoken   auth_type  password

openstack-config --set /etc/cinder/cinder.conf   keystone_authtoken   project_domain_name  default

openstack-config --set /etc/cinder/cinder.conf   keystone_authtoken   user_domain_name  default

openstack-config --set /etc/cinder/cinder.conf   keystone_authtoken   project_name  service

openstack-config --set /etc/cinder/cinder.conf   keystone_authtoken   username  cinder

openstack-config --set /etc/cinder/cinder.conf   keystone_authtoken   password  CINDER_PASS

openstack-config --set /etc/cinder/cinder.conf   oslo_concurrency  lock_path  /var/lib/cinder/tmp

openstack-config --set /etc/cinder/cinder.conf   oslo_messaging_rabbit  rabbit_host  controller

openstack-config --set /etc/cinder/cinder.conf   oslo_messaging_rabbit  rabbit_userid  openstack

openstack-config --set /etc/cinder/cinder.conf   oslo_messaging_rabbit  rabbit_password  RABBIT_PASS

6、同步資料庫

su -s /bin/sh -c "cinder-manage db sync" cinder      

vim /etc/nova/nova.conf

[cinder]
os_region_name = RegionOne      

7、啟動服務

systemctl restart openstack-nova-api.service

systemctl enable openstack-cinder-api.service openstack-cinder-scheduler.service

systemctl start openstack-cinder-api.service openstack-cinder-scheduler.service

在存儲節點上:(在控制節點也可以 ,這裡安裝在控制節點)

(LVM性能不如标準分區,優點是可以随時擴充分區大小)

LVM邏輯卷:

cinder塊存儲服務安裝

先決條件

 yum install lvm2 -y   systemctl enable lvm2-lvmetad.service

systemctl start lvm2-lvmetad.service  (添加兩塊盤  一塊30G ssd   50Gsata)

掃描

 echo '- - -' >/sys/class/scsi_host/host0/scan  

fdisk -l  檢視

建立實體卷

pvcreate  /dev/sdb

pvcreate  /dev/sdc

建立卷組

 vgcreate cinder-ssd /dev/sdb

vgcreate cinder-sata /dev/sdc

vim /etc/lvm/lvm.conf

devices {
...
filter = [ "a/sdb/", "a/sdc","r/.*/"]      

在130行下加入

filter = [ "a/sdb/", "a/sdc/","r/.*/"]

安裝配置元件

yum install openstack-cinder targetcli python-keystone -y      

配置

[DEFAULT]

rpc_backend = rabbit

auth_strategy = keystone

my_ip = 10.0.0.31

glance_api_servers = http://10.0.0.32:9292

enabled_backends = ssd,sata

[BACKEND]

[BRCD_FABRIC_EXAMPLE]

[CISCO_FABRIC_EXAMPLE]

[COORDINATION]

[FC-ZONE-MANAGER]

[KEYMGR]

[cors]

[cors.subdomain]

[database]

connection = mysql+pymysql://cinder:[email protected]/cinder

[keystone_authtoken]

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 = cinder

password = CINDER_PASS

[matchmaker_redis]

[oslo_concurrency]

lock_path = /var/lib/cinder/tmp

[oslo_messaging_amqp]

[oslo_messaging_notifications]

[oslo_messaging_rabbit]

rabbit_host = controller

rabbit_userid = openstack

rabbit_password = RABBIT_PASS

[oslo_middleware]

[oslo_policy]

[oslo_reports]

[oslo_versionedobjects]

[ssl]

[ssd]

volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver

volume_group = cinder-ssd

iscsi_protocol = iscsi

iscsi_helper = lioadm

[sata]

volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver

volume_group = cinder-sata

iscsi_protocol = iscsi

iscsi_helper = lioadm

啟動

systemctl start openstack-cinder-volume.service target.service

systemctl enable openstack-cinder-volume.service target.servic