Q版 cinder安裝
- 前言
- 一、簡介
- 二、安裝
-
- 1、前提條件
- 2、安裝和配置-controller
-
- 修改配置檔案
-
- cinder.conf
- nova.conf
- 初始化資料庫
-
- 驗證
- 設定開機自啟并啟動
- 3、安裝和配置-compute
-
- 建立LVM卷
- 安裝軟體
- 修改配置檔案
-
- cinder.conf
- 設定開機啟動并啟動服務
- 4、服務驗證
前言
存儲服務提供了block塊存儲、檔案系統存儲和對象式存儲,這裡我們使用的就是OpenStack提供的一個塊存儲,就是當建立執行個體空間不夠了,我們可以以塊形式給他提供一個存儲空間,就是添加額外的存儲空間。
為簡單起見,此配置引用一個具有空本地塊儲存設備的存儲節點。指令使用/dev/sdb,就是我們前期來compute節點上多加的那塊硬碟。
該服務使用LVM驅動程式在該裝置上置備邏輯卷, 并通過iSCSI傳輸将其提供給執行個體。您可以對這些說明進行少量修改,以通過其他存儲節點水準擴充您的環境。
塊存儲API和排程程式服務通常在控制器節點上運作。
一、簡介
存儲服務是我們OpenStack環境安裝的最後一個服務,存儲服務使用的是cinder,可以為建立的執行個體提供一些額外的存儲空間。
cinder存儲服務的元件:
- cinder-api ,通過api通路cinder的卷;
- cinder-volume ,可以直接與塊存儲進行互動;
- cinder-scheduler daemon ,選擇要建立卷的最佳存儲;
- cinder-backup daemon ,備份服務;
- Messaging queue ,消息隊列,這裡使用的是rabbitMQ,塊存儲之間也是有消息要傳遞的;
二、安裝
1、前提條件
在安裝和配置塊存儲服務之前,必須建立資料庫,服務憑證和API端點。
建立cinder資料庫并授予對cinder資料庫的适當通路權限:
mysql -uroot -pXylong_000
CREATE DATABASE cinder;
GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' IDENTIFIED BY '123';
GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' IDENTIFIED BY '123';

建立一個cinder使用者,密碼還是123,并将向cinder使用者添加admin角色:
source admin-openrc
openstack user create --domain default --password-prompt cinder
openstack role add --project service --user cinder admin
建立cinderv2和cinderv3服務實體:
openstack service create --name cinderv2 --description "OpenStack Block Storage" volumev2
openstack service create --name cinderv3 --description "OpenStack Block Storage" volumev3
建立塊存儲服務API端點:
openstack endpoint create --region RegionOne volumev2 public http://controller:8776/v2/%\(project_id\)s
openstack endpoint create --region RegionOne volumev2 internal http://controller:8776/v2/%\(project_id\)s
openstack endpoint create --region RegionOne volumev2 admin http://controller:8776/v2/%\(project_id\)s
openstack endpoint create --region RegionOne volumev3 public http://controller:8776/v3/%\(project_id\)s
openstack endpoint create --region RegionOne volumev3 internal http://controller:8776/v3/%\(project_id\)s
openstack endpoint create --region RegionOne volumev3 admin http://controller:8776/v3/%\(project_id\)s
2、安裝和配置-controller
yum install openstack-cinder
修改配置檔案
cinder.conf
vim /etc/cinder/cinder.conf
配置資料庫通路:
[database]
配置身份服務通路:
[keystone_authtoken]
auth_uri = http://controller:5000
auth_url = http://controller:5000
memcached_servers = controller:11211
auth_type = password
project_domain_id = default
user_domain_id = default
project_name = service
username = cinder
password = 123
[DEFAULT]
transport_url = rabbit://openstack:[email protected]
auth_strategy = keystone
my_ip = 192.168.144.10
參數 | 解釋 |
---|---|
transport_url | #配置RabbitMQ 消息隊列通路: |
auth_strategy | #配置身份服務通路: |
my_ip | #配置my_ip選項以使用控制器節點的管理接口IP位址: |
配置鎖定路徑:
[oslo_concurrency]
lock_path = /var/lib/cinder/tmp
nova.conf
vim /etc/nova/nova.conf
配置計算以使用塊存儲
[cinder]
os_region_name = RegionOne
初始化資料庫
su -s /bin/sh -c "cinder-manage db sync" cinder
驗證
mysql -uroot -pXylong_000
use cinder
show tables;
設定開機自啟并啟動
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
systemctl is-active openstack-cinder-api.service openstack-cinder-scheduler.service
3、安裝和配置-compute
在存儲節點上安裝和配置塊存儲服務之前,必須準備儲存設備。就是我們剛開始添加的那塊5G硬碟,
檢視除了sda系統盤之外還有一個多出來sdb盤的,
yum install lvm2 device-mapper-persistent-data
服務設定開機自啟并啟動服務:
systemctl enable lvm2-lvmetad.service
systemctl start lvm2-lvmetad.service
建立LVM卷
塊存儲服務在此卷組中建立邏輯卷。
pvcreate /dev/sdb
vgcreate cinder-volumes /dev/sdb
隻有執行個體可以通路塊存儲卷。但是,底層作業系統管理與卷關聯的裝置。預設情況下,LVM卷掃描工具會在/dev目錄中掃描 包含卷的塊儲存設備。如果項目在其卷上使用LVM,則掃描工具會檢測到這些卷并嘗試對其進行緩存,這可能導緻基礎作業系統卷和項目卷出現各種問題。
vim /etc/lvm/lvm.conf
如果存儲節點在作業系統磁盤上使用LVM,則還必須将關聯的裝置添加到過濾器中。例如,如果/dev/sda裝置包含作業系統:
devices {
filter = [ "a/sda/", "a/sdb/", "r/.*/"]
安裝軟體
yum install openstack-cinder targetcli python-keystone
修改配置檔案
cinder.conf
vim /etc/cinder/cinder.conf
配置資料庫通路:
[database]
[DEFAULT]
transport_url = rabbit://openstack:[email protected]
auth_strategy = keystone
my_ip = 192.168.144.11
enabled_backends = lvm
glance_api_servers = http://controller:9292
參數 | 解釋 |
---|---|
transport_url | #配置RabbitMQ 消息隊列通路: |
auth_strategy | #配置身份服務通路: |
my_ip | #配置my_ip選項以使用控制器節點的管理接口IP位址: |
enabled_backends | #啟用LVM後端: |
glance_api_servers | #配置glance服務API的位置: |
配置身份服務通路:
[keystone_authtoken]
auth_uri = http://controller:5000
auth_url = http://controller:5000
memcached_servers = controller:11211
auth_type = password
project_domain_id = default
user_domain_id = default
project_name = service
username = cinder
password = 123
為LVM後端配置LVM驅動程式,cinder-volumes卷組,iSCSI協定和适當的iSCSI服務。如果該[lvm]部分不存在,請建立它:
[lvm]
volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver
volume_group = cinder-volumes
iscsi_protocol = iscsi
iscsi_helper = lioadm
配置鎖定路徑:
[oslo_concurrency]
lock_path = /var/lib/cinder/tmp
設定開機啟動并啟動服務
systemctl enable openstack-cinder-volume.service target.service
systemctl start openstack-cinder-volume.service target.service
systemctl is-active openstack-cinder-volume.service target.service
4、服務驗證
source admin-openrc
openstack volume service list
總結:
到現在為止我們的Q版的OpenStack環境就搭建完成了,
這個過程中我們安裝服務,keystone身份服務、glance映像服務、nova計算服務、neutron網絡服務、dashboard 圖形界面,cinder存儲服務,在依次部署完這些服務之後,我們就建構出來依賴簡單的私有雲平台環境了,接下來我們就可以去建立執行個體了。
建立執行個體