Openstack Mitaka安裝手順(4)計算服務

說明:前三章內容爲第一次完整部署openstack mitaka的手順,通過這一段時間的學習又從新完整部署了兩次。本章內容是第三次完整部署openstack mitaka的手順,加入了防火牆配置以及修正了一些問題。另外由於虛擬機從新安裝了,主機名可能和前面略有差異。html


四、計算服務mysql

4.一、安裝並配置控制節點web

4.1.一、建立數據庫服務的憑據以及 API endpointssql

4.1.1.一、爲了建立數據庫,必須完成這些步驟數據庫

用數據庫鏈接客戶端以 root 用戶鏈接到數據庫服務器:api

$ mysql -u root -p瀏覽器

建立 nova_api 和 nova 數據庫:安全

CREATE DATABASE nova_api;服務器

CREATE DATABASE nova;網絡

GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'localhost' IDENTIFIED BY 'P@ssw0rd';

GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'%' IDENTIFIED BY 'P@ssw0rd';

GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localhost' IDENTIFIED BY 'P@ssw0rd';

GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'%' IDENTIFIED BY 'P@ssw0rd';


4.1.1.二、得到 admin 憑證來獲取只有管理員能執行的命令的訪問權限:

$ . admin-openrc


4.1.1.三、建立服務證書,完成這些步驟:

建立 nova 用戶:

$ openstack user create --domain default --password-prompt nova

--設置密碼:P@ssw0rd


給 nova 用戶添加 admin 角色

$ openstack role add --project service --user nova admin


建立 nova 服務實體:

$ openstack service create --name nova --description "OpenStack Compute" compute


4.1.1.四、建立 Compute 服務 API 端點 :

$ openstack endpoint create --region RegionOne compute public http://controller:8774/v2.1/%\(tenant_id\)s


$ openstack endpoint create --region RegionOne compute internal http://controller:8774/v2.1/%\(tenant_id\)s


$ openstack endpoint create --region RegionOne compute admin http://controller:8774/v2.1/%\(tenant_id\)s


控制節點防火牆開放端口:8774

# firewall-cmd --permanent --add-port=8774/tcp

# firewall-cmd --reload


確認端口開放成功

# firewall-cmd --list-all


4.1.二、安全並配置組件

4.1.2.一、安裝軟件包:

# yum install -y openstack-nova-api openstack-nova-conductor openstack-nova-console openstack-nova-novncproxy openstack-nova-scheduler


4.1.2.二、編輯vi /etc/nova/nova.conf文件並完成下面的操做

在``[DEFAULT]``部分,只啓用計算和元數據API:

enabled_apis = osapi_compute,metadata

rpc_backend = rabbit

auth_strategy = keystone

my_ip = 111.111.111.201

use_neutron = True

firewall_driver = nova.virt.firewall.NoopFirewallDriver


在``[api_database]``部分,配置數據庫的鏈接:

connection = mysql+pymysql://nova:P@ssw0rd@controller/nova_api


在``[database]``部分,配置數據庫的鏈接:

connection = mysql+pymysql://nova:P@ssw0rd@controller/nova


在 「[oslo_messaging_rabbit]」部分,配置 「RabbitMQ」 消息隊列訪問:

rabbit_host = controller

rabbit_userid = openstack

rabbit_password = P@ssw0rd


在「[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 = nova

password = P@ssw0rd


註解:在 [keystone_authtoken] 中註釋或者刪除其餘選項。


在``[vnc]``部分,配置VNC代理使用控制節點的管理接口IP地址 :

vncserver_listen = $my_ip

vncserver_proxyclient_address = $my_ip


在 [glance] 區域,配置鏡像服務 API 的位置:

api_servers = http://controller:9292


在 [oslo_concurrency] 部分,配置鎖路徑:

lock_path = /var/lib/nova/tmp


4.1.2.三、同步Compute 數據庫:

# su -s /bin/sh -c "nova-manage api_db sync" nova

# su -s /bin/sh -c "nova-manage db sync" nova

image.png


4.1.三、啓動 Compute 服務並將其設置爲隨系統啓動:

# systemctl enable openstack-nova-api \

  openstack-nova-consoleauth openstack-nova-scheduler \

  openstack-nova-conductor openstack-nova-novncproxy


# systemctl start openstack-nova-api \

  openstack-nova-consoleauth openstack-nova-scheduler \

  openstack-nova-conductor openstack-nova-novncproxy


# systemctl status openstack-nova-api \

  openstack-nova-consoleauth openstack-nova-scheduler \

  openstack-nova-conductor openstack-nova-novncproxy


控制節點防火牆開放端口:6080、567二、5900

firewall-cmd --permanent --add-port=6080/tcp

firewall-cmd --permanent --add-port=5672/tcp

firewall-cmd --permanent --add-port=5900/tcp

firewall-cmd --reload


確認端口開放成功

# firewall-cmd --list-all


4.二、安裝和配置計算節點

4.2.一、安全並配置組件

4.2.1.一、安裝軟件包:

# yum install openstack-nova-compute -y


4.2.1.二、編輯vi /etc/nova/nova.conf文件並完成下面的操做:

在``[DEFAULT]`` 部分,配置``RabbitMQ``消息隊列的鏈接:

rpc_backend = rabbit

auth_strategy = keystone

my_ip = 111.111.111.202

use_neutron = True

firewall_driver = nova.virt.firewall.NoopFirewallDriver


在 [oslo_messaging_rabbit]部分,配置``RabbitMQ``消息隊列的鏈接:

rabbit_host = controller

rabbit_userid = openstack

rabbit_password = P@ssw0rd


在「[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 = nova

password = P@ssw0rd

註解:在 [keystone_authtoken] 中註釋或者刪除其餘選項。


在``[vnc]``部分,啓用並配置遠程控制檯訪問:

enabled = True

vncserver_listen = 0.0.0.0

vncserver_proxyclient_address = $my_ip

novncproxy_base_url = http://controller:6080/vnc_auto.html

服務器組件監聽全部的 IP 地址,而代理組件僅僅監聽計算節點管理網絡接口的 IP 地址。基本的 URL 指示您可使用 web 瀏覽器訪問位於該計算節點上實例的遠程控制檯的位置。


在 [glance] 區域,配置鏡像服務 API 的位置:

api_servers = http://controller:9292


在 [oslo_concurrency] 部分,配置鎖路徑:

lock_path = /var/lib/nova/tmp


計算節點防火牆開放端口:6080、567二、5900

firewall-cmd --permanent --add-port=6080/tcp

firewall-cmd --permanent --add-port=5672/tcp

firewall-cmd --permanent --add-port=5900/tcp

firewall-cmd --reload


確認端口開放成功

# firewall-cmd --list-all


4.2.二、完成安裝:

4.2.2.一、肯定計算節點是否支持虛擬機的硬件加速。

$ egrep -c '(vmx|svm)' /proc/cpuinfo

若是這個命令返回了 one or greater 的值,那麼你的計算節點支持硬件加速且不須要額外的配置。

若是這個命令返回了 zero 值,那麼你的計算節點不支持硬件加速。你必須配置 libvirt 來使用 QEMU 去代替 KVM

由於是虛擬機因此不支持硬件加速,繼續配置

image.png

4.2.2.二、在vi /etc/nova/nova.conf文件的 [libvirt] 區域作出以下的編輯:

virt_type = qemu


4.2.2.三、啓動計算服務及其依賴,並將其配置爲隨系統自動啓動:

# systemctl enable libvirtd openstack-nova-compute

# systemctl start libvirtd openstack-nova-compute

# systemctl status libvirtd openstack-nova-compute


4.三、驗證計算服務操做

在控制節點執行:

4.3.一、得到 admin 憑證來獲取只有管理員能執行的命令的訪問權限:

$ . admin-openrc


4.3.二、列出服務組件,以驗證是否成功啓動並註冊了每一個進程:

$ openstack compute service list

image.png

註解:該輸出應該顯示三個服務組件在控制節點上啓用,一個服務組件在計算節點上啓用。

相關文章
相關標籤/搜索