天天看點

openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點

控制節點

1 先決條件

1.1 資料庫

  • 1.連接配接資料庫
    mysql -u root -p
               
  • 2.建立 cinder 資料庫:
    CREATE DATABASE cinder;
               
  • 3.允許 cinder 資料庫合适的通路權限,123456為
CINDER_DBPASS
GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost'  IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%'  IDENTIFIED BY '123456';
           
  • 4.退出資料庫

1.2建立服務

  • 1.建立cinder使用者
openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點
  • 2.添加 admin 角色到 cinder 使用者上。
  • 3.建立 cinder 和 cinderv2 服務實體:
openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點
openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點

1.3 建立Endpoint api

  • 1.Public-volume
openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點
  • 2.Internal-volume
openstack endpoint create --region RegionOne  volume internal http://controller:8776/v1/%\(tenant_id\)s
           
openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點
  • 3.Admin-volume
openstack endpoint create --region RegionOne   volume admin http://controller:8776/v1/%\(tenant_id\)s
           
openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點
  • 4.Public- volumev2
openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點

- 5.internal- volumev2

openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點

-6. Admin-volumev2

openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點

2安裝與配置

2.1安裝包

2.2配置/etc/cinder/cinder.conf

vi /etc/cinder/cinder.conf

  • 1.在[database]配置資料庫通路,123456為CINDER_DBPASS的密碼
[database]
connection = mysql+pymysql://cinder:@controller/cinder
           
  • 2.在[DEFAULT] 和 [oslo_messaging_rabbit]部分,配置 RabbitMQ消息隊列通路:
[DEFAULT]
...
rpc_backend = rabbit

[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = 
           
  • 3.在 [DEFAULT]和 [keystone_authtoken] 部分,配置認證服務通路:
[DEFAULT]
...
auth_strategy = keystone

[keystone_authtoken]
auth_uri = http://controller:
auth_url = http://controller:
memcached_servers = controller:
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = cinder
password = 
           
  • 4.在 [DEFAULT] 部分,配置

    my_ip

    來使用控制節點的管理接口的IP 位址。
[DEFAULT]
...
my_ip = 
           
  • 5.在 [oslo_concurrency] 部分,配置鎖路徑:
[oslo_concurrency]
lock_path = /var/lib/cinder/tmp
           

2.3 初始化塊裝置服務的資料庫:

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

3完成安裝

重新開機服務

service nova-api restart service cinder-scheduler restart service cinder-api restart

4 驗證

4.1擷取管理者

. admin-openrc

4.2列出服務元件以驗證是否每個程序都成功啟動

cinder service-list

下圖中3個存儲節點的服務狀态均為up

openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點

計算節點

1.配置塊存儲

  • 編輯/etc/nova/nova.conf,添加以下内容
[cinder]
os_region_name = RegionOne
           
  • 重新開機service
service nova-compute restart
           

存儲節點

1.基本環境安裝

安裝見openstack部署2——控制節點基本環境安裝

openstack部署2——控制節點基本環境安裝

2先決條件

2.1安裝支援的工具包:

apt-get install lvm2

2.2檢視磁盤資訊

fdisk -l

openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點

ps:可能遇到問題:新磁盤沒有分區

openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點

解決方法:為新磁盤分區

fdisk /dev/sdb

openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點

輸入m檢視目錄:

openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點

輸入n,建立一個新分區,在輸入p,選擇主盤

openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點

輸入1,或者預設回車

openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點

選擇第一個分區的起始位置,預設2048,再輸入最後位置,這裡我們選擇使用一半

openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點

輸入p,檢視分區情況

openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點

輸入t,修改id為8e

openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點

輸入p,檢視分區情況

openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點

輸入w,寫入分區表

openstack安裝部署8——塊存儲元件(控制節點、計算節點、存儲節點)控制節點計算節點存儲節點

2.3建立LVM 實體卷 /dev/sdb1

pvcreate /dev/sdb1
           

ps:可能遇到報錯:

Device /dev/sdb1 not found (or ignored by filtering).

解決方法:隻挂載了新硬碟,但還沒有格式化使用,格式化的步驟參考2.2中ps可能出現的問題的解決方法

2.4編輯”/etc/lvm/lvm.conf‘’

隻有執行個體可以通路塊存儲卷組。不過,底層的作業系統管理這些裝置并将其與卷關聯。預設情況下,LVM卷掃描工具會掃描”/dev” 目錄,查找包含卷的塊儲存設備。如果項目在他們的卷上使用LVM,掃描工具檢測到這些卷時會嘗試緩存它們,可能會在底層作業系統和項目卷上産生各種問題。您必須重新配置LVM,讓它隻掃描包含”cinder-volume”卷組的裝置。編輯”/etc/lvm/lvm.conf”檔案并完成下面的操作:

vi /etc/lvm/lvm.conf

在“devices”部分,添加一個過濾器,隻接受”/dev/sdb1”裝置,拒絕其他所有裝置:

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

3 安裝配置卷服務

3.1安裝包

apt-get install cinder-volume

3.2編輯 /etc/cinder/cinder.conf

vi /etc/cinder/cinder.conf

  • 1.在 [database] 部分,配置資料庫通路,123456為CINDER_DBPASS的密碼
[database]
connection = mysql+pymysql://cinder:@controller/cinder
           
  • 2.在 “[DEFAULT]” 和 “[oslo_messaging_rabbit]”部分,配置 “RabbitMQ”

    消息隊列通路,123456為RABBIT_PASS的密碼

[DEFAULT]
...
rpc_backend = rabbit

[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = 
           
  • 3.在 “[DEFAULT]” 和 “[keystone_authtoken]”

    部分,配置認證服務通路,123456為CINDER_PASS的密碼

[DEFAULT]
...
auth_strategy = keystone

[keystone_authtoken]
auth_uri = http://controller:
auth_url = http://controller:
memcached_servers = controller:
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = cinder
password = 
           
  • 4.在 [DEFAULT] 部分,配置 my_ip 選項:
[DEFAULT]
...
my_ip = 
           
  • 5.在

    [lvm]

    部分,配置LVM後端以LVM驅動結束,卷組`cinder-volumes ,iSCSI 協定和正确的

    iSCSI服務:

[lvm]
volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver
volume_group = cinder-volumes
iscsi_protocol = iscsi
iscsi_helper = tgtadm
           
  • 6.在 [DEFAULT] 部分,啟用 LVM 後端:
[DEFAULT]
...
enabled_backends = lvm
           
  • 7.在 [DEFAULT] 區域,配置鏡像服務 API 的位置:
[DEFAULT]
...
glance_api_servers = http://controller:
           
  • 8.在 [oslo_concurrency] 部分,配置鎖路徑:
[oslo_concurrency]
lock_path = /var/lib/cinder/tmp
           

3.3 完成安裝,重新開機服務

service tgt restart
service cinder-volume restart
           

繼續閱讀