Openstack O版本以上安裝Nova 出現plancement相關錯誤問題

由於官方文檔沒有對該部分進行相應的解釋,故創建過程會出現相應的問題,具體的安裝步驟如下:

1)控制結點

mysql -u root -p

CREATE DATABASE nova_api;

CREATE DATABASE nova;

CREATE DATABASE nova_cell0;

GRANT ALL PRIVILEGES ON nova_api.* TO'nova'@'localhost' \

IDENTIFIED BY 'nova';

GRANT ALL PRIVILEGES ON nova_api.* TO'nova'@'%' \

IDENTIFIED BY 'nova';

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

IDENTIFIED BY 'nova';

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

IDENTIFIED BY 'nova';

GRANT ALL PRIVILEGES ON nova_cell0.* TO'nova'@'localhost' \

IDENTIFIED BY 'nova';

GRANT ALL PRIVILEGES ON nova_cell0.* TO'nova'@'%' \

IDENTIFIED BY 'nova';
 

備註: 如果需要的情況下,需要創建placement對應的數據庫,並賦予相應的權限

 

創建相應的服務以及API

控制結點:

創建Nova相關的(參照官方文檔)

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

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

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

openstack endpoint create --regionRegionOne compute public http://controller:8774/v2.1

openstack endpoint create --regionRegionOne compute internal http://controller:8774/v2.1

openstack endpoint create --regionRegionOne compute admin http://controller:8774/v2.1
 

創建placement相關的

openstack user create --domain default--password-prompt placement

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

openstack service create --name placement--description "Placement API" placement

openstack endpoint create --region RegionOne placement public http://controller:8778

openstack endpoint create --region RegionOne placement admin http://controller:8778

openstack endpoint create --region RegionOne placement internal http://controller:8778

 

控制結點修改nova配置文件(etc/nova/nova.conf)

[DEFAULT]

enabled_apis = osapi_compute,metadata

transport_url =rabbit://openstack:openstack@controller

#本機IP地址

my_ip = 192.168.215.100

use_neutron = True

firewall_driver = nova.virt.firewall.NoopFirewallDriver

[api_database]

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

 

[database]

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

 

[api]

auth_strategy = keystone

 

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

 

[vnc]

enabled = true

vncserver_listen = $my_ip

vncserver_proxyclient_address = $my_ip

 

[glance]

api_servers = http://controller:9292

 

[oslo_concurrency]

lock_path = /var/lib/nova/tmp

 

[placement]

os_region_name = RegionOne

project_domain_name = Default

project_name = service

auth_type = password

user_domain_name = Default

auth_url = http://controller:35357/v3

username = placement

password = placement
 

修改Placement API的訪問權限

vi  /etc/httpd/conf.d/00-nova-placement-api.conf

尾部添加:

<Directory /usr/bin>

    <IfVersion >= 2.4>

        Require all granted

    </IfVersion>

    <IfVersion < 2.4>

        Order allow,deny

       Allow from all

    </IfVersion>

</Directory>

 

同步數據庫:

控制結點

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

su -s /bin/sh -c "nova-manage cell_v2 map_cell0" nova

su -s /bin/sh -c "nova-manage cell_v2 create_cell --name=cell1 --verbose" nova

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

查看cell_v2所生成的UUID

nova-manage cell_v2 list_cells

啓動相應的服務

systemctl enable openstack-nova-api.service\

openstack-nova-consoleauth.serviceopenstack-nova-scheduler.service \

openstack-nova-conductor.serviceopenstack-nova-novncproxy.service

 

systemctl restartopenstack-nova-api.service \

openstack-nova-consoleauth.serviceopenstack-nova-scheduler.service \

openstack-nova-conductor.serviceopenstack-nova-novncproxy.service
 

 

配置相應的計算結點

編輯nova 配置文件

[DEFAULT]

enabled_apis = osapi_compute,metadata

transport_url =rabbit://openstack:openstack@controller

use_neutron = True

firewall_driver =nova.virt.firewall.NoopFirewallDriver
 

#本機IP地址

my_ip = 192.168.215.101

 

[api]

auth_strategy = keystone

 

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

 

[vnc]

enabled = True

vncserver_listen = 0.0.0.0

vncserver_proxyclient_address = $my_ip

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

 

[glance]

api_servers = http://controller:9292

 

[oslo_concurrency]

lock_path = /var/lib/nova/tmp

 

[placement]

os_region_name = RegionOne

project_domain_name = Default

project_name = service

auth_type = password

user_domain_name = Default

auth_url = http://controller:35357/v3

username = placement

password = placement

 

 [libvirt]

virt_type = qemu

啓動計算結點上相應的服務

systemctl enable libvirtd.serviceopenstack-nova-compute.service

systemctl restart libvirtd.serviceopenstack-nova-compute.service

 

發佈了104 篇原創文章 · 獲贊 11 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章