天天看点

OpenStack安装05

1、 实验拓扑

设备 说明
servera 控制节点:192.168.0.38--centos7(4核4G)
serverb 计算节点1:192.168.0.39--centos7(2核2G)
serverc 计算节点2:192.168.0.40--centos7(2核2G)
Switch 交换机
Route 路由器
OpenStack安装05

2、 安装nova准备

2.1 创建数据库

mysql

CREATE DATABASE nova_api;

CREATE DATABASE nova;

CREATE DATABASE nova_cell0;

show databases;

exit

[root@openstack-controller ~]# mysql
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 54
Server version: 10.3.20-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> CREATE DATABASE nova_api;
Query OK, 1 row affected (0.000 sec)

MariaDB [(none)]> CREATE DATABASE nova;
Query OK, 1 row affected (0.000 sec)

MariaDB [(none)]> CREATE DATABASE nova_cell0;
Query OK, 1 row affected (0.000 sec)

MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| glance             |
| information_schema |
| keystone           |
| mysql              |
| nova               |
| nova_api           |
| nova_cell0         |
| performance_schema |
| placement          |
+--------------------+
9 rows in set (0.000 sec)

MariaDB [(none)]> exit
Bye
           

2.2 设置nova数据库相关权限

mysql

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

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

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

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

GRANT ALL PRIVILEGES ON nova_cell0.* TO 'nova'@'localhost' IDENTIFIED BY 'NOVA_DBPASS';

GRANT ALL PRIVILEGES ON nova_cell0.* TO 'nova'@'%' IDENTIFIED BY 'NOVA_DBPASS';

exit

[root@openstack-controller ~]# mysql
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 55
Server version: 10.3.20-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> 
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'localhost' IDENTIFIED BY 'NOVA_DBPASS';
Query OK, 0 rows affected (0.001 sec)

MariaDB [(none)]> 
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'%' IDENTIFIED BY 'NOVA_DBPASS';
Query OK, 0 rows affected (0.000 sec)

MariaDB [(none)]> 
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localhost' IDENTIFIED BY 'NOVA_DBPASS';
Query OK, 0 rows affected (0.000 sec)

MariaDB [(none)]> 
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'%' IDENTIFIED BY 'NOVA_DBPASS';
Query OK, 0 rows affected (0.000 sec)

MariaDB [(none)]> 
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_cell0.* TO 'nova'@'localhost' IDENTIFIED BY 'NOVA_DBPASS';
Query OK, 0 rows affected (0.000 sec)

MariaDB [(none)]> 
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_cell0.* TO 'nova'@'%' IDENTIFIED BY 'NOVA_DBPASS';
Query OK, 0 rows affected (0.000 sec)

MariaDB [(none)]> 
MariaDB [(none)]> exit
Bye
           

2.3 加载服务凭据

source openrc
[root@openstack-controller ~]# cat openrc 
export OS_USERNAME=admin
export OS_PASSWORD=ADMIN_PASS
export OS_PROJECT_NAME=admin
export OS_USER_DOMAIN_NAME=Default
export OS_PROJECT_DOMAIN_NAME=Default
export OS_AUTH_URL=http://controller:5000/v3
export OS_IDENTITY_API_VERSION=3
[root@openstack-controller ~]# source openrc 
           

2.4 创建openstack的nova用户

openstack user create --domain default --password nova nova
[root@openstack-controller ~]# openstack user create --domain default --password nova nova
+---------------------+----------------------------------+
| Field               | Value                            |
+---------------------+----------------------------------+
| domain_id           | default                          |
| enabled             | True                             |
| id                  | 45db09acee8d4187bbc002e54573784f |
| name                | nova                             |
| options             | {}                               |
| password_expires_at | None                             |
+---------------------+----------------------------------+
           

2.5 将nova加入admin的role中

openstack role add --project service --user nova admin
[root@openstack-controller ~]# openstack role add --project service --user nova admin
           

2.6 创建nova服务

服务名:nova,类型compute

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

[root@openstack-controller ~]# openstack service create --name nova --description "OpenStack Compute" compute
+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | OpenStack Compute                |
| enabled     | True                             |
| id          | c90bc1e1e5bb4b9698279ea3dc89c5bc |
| name        | nova                             |
| type        | compute                          |
+-------------+----------------------------------+
           

2.7 创建compute api对应的endpoint

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

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

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

[root@openstack-controller ~]# openstack endpoint create --region RegionOne compute public http://controller:8774/v2.1
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | a605961e1efc496da712c646fcb7dfe5 |
| interface    | public                           |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | c90bc1e1e5bb4b9698279ea3dc89c5bc |
| service_name | nova                             |
| service_type | compute                          |
| url          | http://controller:8774/v2.1      |
+--------------+----------------------------------+
[root@openstack-controller ~]# 
[root@openstack-controller ~]# openstack endpoint create --region RegionOne compute internal http://controller:8774/v2.1
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | 5d882ce616b446569365c8948a1c8d39 |
| interface    | internal                         |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | c90bc1e1e5bb4b9698279ea3dc89c5bc |
| service_name | nova                             |
| service_type | compute                          |
| url          | http://controller:8774/v2.1      |
+--------------+----------------------------------+
[root@openstack-controller ~]# 
[root@openstack-controller ~]# openstack endpoint create --region RegionOne compute admin http://controller:8774/v2.1
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | 23588d7e9d87428fa7c25b8597ce82f5 |
| interface    | admin                            |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | c90bc1e1e5bb4b9698279ea3dc89c5bc |
| service_name | nova                             |
| service_type | compute                          |
| url          | http://controller:8774/v2.1      |
+--------------+----------------------------------+
           

3、 安装和配置

3.1 安装nova和相关组件

yum install -y openstack-nova-api openstack-nova-conductor openstack-nova-novncproxy openstack-nova-scheduler
[root@openstack-controller ~]# yum install -y openstack-nova-api openstack-nova-conductor openstack-nova-novncproxy openstack-nova-scheduler
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package openstack-nova-api.noarch 1:20.6.0-1.el7 will be installed
--> Processing Dependency: openstack-nova-common = 1:20.6.0-1.el7 for package: 1:openstack-nova-api-20.6.0-1.el7.noarch
---> Package openstack-nova-conductor.noarch 1:20.6.0-1.el7 will be installed
---> Package openstack-nova-novncproxy.noarch 1:20.6.0-1.el7 will be installed
--> Processing Dependency: novnc for package: 1:openstack-nova-novncproxy-20.6.0-1.el7.noarch
--> Processing Dependency: python-websockify for package: 1:openstack-nova-novncproxy-20.6.0-1.el7.noarch
---> Package openstack-nova-scheduler.noarch 1:20.6.0-1.el7 will be installed
--> Running transaction check
---> Package novnc.noarch 0:1.1.0-6.el7 will be installed
---> Package openstack-nova-common.noarch 1:20.6.0-1.el7 will be installed
--> Processing Dependency: python2-nova = 1:20.6.0-1.el7 for package: 1:openstack-nova-common-20.6.0-1.el7.noarch
---> Package python2-websockify.noarch 0:0.8.0-13.el7 will be installed
--> Running transaction check
---> Package python2-nova.noarch 1:20.6.0-1.el7 will be installed
--> Processing Dependency: python2-os-vif >= 1.14.0 for package: 1:python2-nova-20.6.0-1.el7.noarch
--> Processing Dependency: python2-oslo-versionedobjects >= 1.35.0 for package: 1:python2-nova-20.6.0-1.el7.noarch
--> Processing Dependency: python2-paramiko >= 2.0.0 for package: 1:python2-nova-20.6.0-1.el7.noarch
--> Processing Dependency: python2-tooz >= 1.58.0 for package: 1:python2-nova-20.6.0-1.el7.noarch
--> Running transaction check
---> Package python2-os-vif.noarch 0:1.17.0-1.el7 will be installed
--> Processing Dependency: python2-ovsdbapp >= 0.12.1 for package: python2-os-vif-1.17.0-1.el7.noarch
--> Processing Dependency: python2-pyroute2 for package: python2-os-vif-1.17.0-1.el7.noarch
---> Package python2-oslo-versionedobjects.noarch 0:1.36.1-1.el7 will be installed
--> Processing Dependency: python-oslo-versionedobjects-lang = 1.36.1-1.el7 for package: python2-oslo-versionedobjects-1.36.1-1.el7.noarch
---> Package python2-paramiko.noarch 0:2.4.2-2.el7 will be installed
--> Processing Dependency: python2-pynacl >= 1.0.1 for package: python2-paramiko-2.4.2-2.el7.noarch
---> Package python2-tooz.noarch 0:1.66.3-1.el7 will be installed
--> Processing Dependency: python2-voluptuous >= 0.8.9 for package: python2-tooz-1.66.3-1.el7.noarch
--> Processing Dependency: python-redis for package: python2-tooz-1.66.3-1.el7.noarch
--> Processing Dependency: python2-zake for package: python2-tooz-1.66.3-1.el7.noarch
--> Running transaction check
---> Package python-oslo-versionedobjects-lang.noarch 0:1.36.1-1.el7 will be installed
---> Package python2-ovsdbapp.noarch 0:0.17.5-1.el7 will be installed
--> Processing Dependency: python2-openvswitch for package: python2-ovsdbapp-0.17.5-1.el7.noarch
---> Package python2-pynacl.x86_64 0:1.3.0-1.el7 will be installed
--> Processing Dependency: libsodium.so.23()(64bit) for package: python2-pynacl-1.3.0-1.el7.x86_64
---> Package python2-pyroute2.noarch 0:0.5.6-1.el7 will be installed
---> Package python2-redis.noarch 0:3.1.0-1.el7 will be installed
---> Package python2-voluptuous.noarch 0:0.11.5-1.el7.1 will be installed
---> Package python2-zake.noarch 0:0.2.2-2.el7 will be installed
--> Processing Dependency: python-kazoo for package: python2-zake-0.2.2-2.el7.noarch
--> Running transaction check
---> Package libsodium.x86_64 0:1.0.18-2.el7 will be installed
---> Package python-kazoo.noarch 0:2.2.1-1.el7 will be installed
---> Package python-openvswitch.x86_64 1:2.12.0-1.el7 will be installed
--> Processing Dependency: libopenvswitch-2.12.so.0(libopenvswitch_0)(64bit) for package: 1:python-openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: libopenvswitch-2.12.so.0()(64bit) for package: 1:python-openvswitch-2.12.0-1.el7.x86_64
--> Running transaction check
---> Package openvswitch.x86_64 1:2.12.0-1.el7 will be installed
--> Processing Dependency: librte_eal.so.9(DPDK_17.08)(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_eal.so.9(DPDK_18.11)(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_eal.so.9(DPDK_2.0)(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_ethdev.so.11(DPDK_16.07)(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_ethdev.so.11(DPDK_17.05)(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_ethdev.so.11(DPDK_18.05)(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_ethdev.so.11(DPDK_18.08)(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_ethdev.so.11(DPDK_18.11)(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_ethdev.so.11(DPDK_2.2)(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_mbuf.so.4(DPDK_2.1)(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_mempool.so.5(DPDK_16.07)(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_mempool.so.5(DPDK_2.0)(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_meter.so.2(DPDK_18.08)(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_meter.so.2(DPDK_2.0)(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_pmd_ring.so.2(DPDK_2.0)(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_ring.so.2(DPDK_2.0)(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_vhost.so.4(DPDK_16.07)(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_vhost.so.4(DPDK_17.05)(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_vhost.so.4(DPDK_17.08)(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_vhost.so.4(DPDK_2.0)(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_vhost.so.4(DPDK_2.1)(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_bitratestats.so.2()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_bus_pci.so.2()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_bus_vdev.so.2()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_bus_vmbus.so.2()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_cmdline.so.2()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_eal.so.9()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_ethdev.so.11()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_gro.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_gso.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_hash.so.2()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_ip_frag.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_kvargs.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_latencystats.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_mbuf.so.4()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_member.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_mempool.so.5()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_mempool_bucket.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_mempool_ring.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_mempool_stack.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_meter.so.2()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_metrics.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_net.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_pci.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_pdump.so.2()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_pmd_bnxt.so.2()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_pmd_e1000.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_pmd_enic.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_pmd_failsafe.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_pmd_i40e.so.2()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_pmd_ixgbe.so.2()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_pmd_mlx4.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_pmd_mlx5.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_pmd_netvsc.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_pmd_nfp.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_pmd_qede.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_pmd_ring.so.2()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_pmd_tap.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_pmd_vdev_netvsc.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_pmd_vhost.so.2()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_pmd_virtio.so.1()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_ring.so.2()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Processing Dependency: librte_vhost.so.4()(64bit) for package: 1:openvswitch-2.12.0-1.el7.x86_64
--> Running transaction check
---> Package dpdk.x86_64 0:18.11.8-1.el7_8 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================================================================================================================================
 Package                                                       Arch                               Version                                       Repository                                 Size
================================================================================================================================================================================================
Installing:
 openstack-nova-api                                            noarch                             1:20.6.0-1.el7                                Clould_train                              7.9 k
 openstack-nova-conductor                                      noarch                             1:20.6.0-1.el7                                Clould_train                              5.5 k
 openstack-nova-novncproxy                                     noarch                             1:20.6.0-1.el7                                Clould_train                              5.9 k
 openstack-nova-scheduler                                      noarch                             1:20.6.0-1.el7                                Clould_train                              5.5 k
Installing for dependencies:
 dpdk                                                          x86_64                             18.11.8-1.el7_8                               extras                                    1.7 M
 libsodium                                                     x86_64                             1.0.18-2.el7                                  Clould_train                              149 k
 novnc                                                         noarch                             1.1.0-6.el7                                   Clould_train                              949 k
 openstack-nova-common                                         noarch                             1:20.6.0-1.el7                                Clould_train                              289 k
 openvswitch                                                   x86_64                             1:2.12.0-1.el7                                Clould_train                              2.0 M
 python-kazoo                                                  noarch                             2.2.1-1.el7                                   Clould_queens                             130 k
 python-openvswitch                                            x86_64                             1:2.12.0-1.el7                                Clould_train                              231 k
 python-oslo-versionedobjects-lang                             noarch                             1.36.1-1.el7                                  Clould_train                              7.9 k
 python2-nova                                                  noarch                             1:20.6.0-1.el7                                Clould_train                              3.6 M
 python2-os-vif                                                noarch                             1.17.0-1.el7                                  Clould_train                               89 k
 python2-oslo-versionedobjects                                 noarch                             1.36.1-1.el7                                  Clould_train                               72 k
 python2-ovsdbapp                                              noarch                             0.17.5-1.el7                                  Clould_train                              107 k
 python2-paramiko                                              noarch                             2.4.2-2.el7                                   Clould_stein                              286 k
 python2-pynacl                                                x86_64                             1.3.0-1.el7                                   Clould_stein                               93 k
 python2-pyroute2                                              noarch                             0.5.6-1.el7                                   Clould_stein                              551 k
 python2-redis                                                 noarch                             3.1.0-1.el7                                   Clould_stein                              120 k
 python2-tooz                                                  noarch                             1.66.3-1.el7                                  Clould_train                               99 k
 python2-voluptuous                                            noarch                             0.11.5-1.el7.1                                epel                                       53 k
 python2-websockify                                            noarch                             0.8.0-13.el7                                  Clould_train                               50 k
 python2-zake                                                  noarch                             0.2.2-2.el7                                   Clould_queens                              39 k

Transaction Summary
================================================================================================================================================================================================
Install  4 Packages (+20 Dependent packages)

Total download size: 11 M
Installed size: 40 M
Downloading packages:
(1/24): libsodium-1.0.18-2.el7.x86_64.rpm                                                                                                                                | 149 kB  00:00:00     
(2/24): openstack-nova-api-20.6.0-1.el7.noarch.rpm                                                                                                                       | 7.9 kB  00:00:00     
(3/24): novnc-1.1.0-6.el7.noarch.rpm                                                                                                                                     | 949 kB  00:00:01     
(4/24): openstack-nova-common-20.6.0-1.el7.noarch.rpm                                                                                                                    | 289 kB  00:00:00     
(5/24): openstack-nova-conductor-20.6.0-1.el7.noarch.rpm                                                                                                                 | 5.5 kB  00:00:00     
(6/24): openstack-nova-scheduler-20.6.0-1.el7.noarch.rpm                                                                                                                 | 5.5 kB  00:00:00     
(7/24): openstack-nova-novncproxy-20.6.0-1.el7.noarch.rpm                                                                                                                | 5.9 kB  00:00:00     
(8/24): dpdk-18.11.8-1.el7_8.x86_64.rpm                                                                                                                                  | 1.7 MB  00:00:01     
(9/24): python-openvswitch-2.12.0-1.el7.x86_64.rpm                                                                                                                       | 231 kB  00:00:00     
(10/24): python-kazoo-2.2.1-1.el7.noarch.rpm                                                                                                                             | 130 kB  00:00:00     
(11/24): python-oslo-versionedobjects-lang-1.36.1-1.el7.noarch.rpm                                                                                                       | 7.9 kB  00:00:00     
(12/24): openvswitch-2.12.0-1.el7.x86_64.rpm                                                                                                                             | 2.0 MB  00:00:01     
(13/24): python2-os-vif-1.17.0-1.el7.noarch.rpm                                                                                                                          |  89 kB  00:00:00     
(14/24): python2-oslo-versionedobjects-1.36.1-1.el7.noarch.rpm                                                                                                           |  72 kB  00:00:00     
(15/24): python2-ovsdbapp-0.17.5-1.el7.noarch.rpm                                                                                                                        | 107 kB  00:00:00     
(16/24): python2-pynacl-1.3.0-1.el7.x86_64.rpm                                                                                                                           |  93 kB  00:00:00     
(17/24): python2-paramiko-2.4.2-2.el7.noarch.rpm                                                                                                                         | 286 kB  00:00:00     
(18/24): python2-pyroute2-0.5.6-1.el7.noarch.rpm                                                                                                                         | 551 kB  00:00:00     
(19/24): python2-nova-20.6.0-1.el7.noarch.rpm                                                                                                                            | 3.6 MB  00:00:01     
(20/24): python2-tooz-1.66.3-1.el7.noarch.rpm                                                                                                                            |  99 kB  00:00:00     
(21/24): python2-voluptuous-0.11.5-1.el7.1.noarch.rpm                                                                                                                    |  53 kB  00:00:00     
(22/24): python2-redis-3.1.0-1.el7.noarch.rpm                                                                                                                            | 120 kB  00:00:00     
(23/24): python2-websockify-0.8.0-13.el7.noarch.rpm                                                                                                                      |  50 kB  00:00:00     
(24/24): python2-zake-0.2.2-2.el7.noarch.rpm                                                                                                                             |  39 kB  00:00:00     
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                                           2.6 MB/s |  11 MB  00:00:04     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : python2-websockify-0.8.0-13.el7.noarch                                                                                                                                      1/24 
  Installing : novnc-1.1.0-6.el7.noarch                                                                                                                                                    2/24 
  Installing : python2-voluptuous-0.11.5-1.el7.1.noarch                                                                                                                                    3/24 
  Installing : libsodium-1.0.18-2.el7.x86_64                                                                                                                                               4/24 
  Installing : python2-pynacl-1.3.0-1.el7.x86_64                                                                                                                                           5/24 
  Installing : python2-paramiko-2.4.2-2.el7.noarch                                                                                                                                         6/24 
  Installing : python2-redis-3.1.0-1.el7.noarch                                                                                                                                            7/24 
  Installing : python2-pyroute2-0.5.6-1.el7.noarch                                                                                                                                         8/24 
  Installing : python-kazoo-2.2.1-1.el7.noarch                                                                                                                                             9/24 
  Installing : python2-zake-0.2.2-2.el7.noarch                                                                                                                                            10/24 
  Installing : python2-tooz-1.66.3-1.el7.noarch                                                                                                                                           11/24 
  Installing : dpdk-18.11.8-1.el7_8.x86_64                                                                                                                                                12/24 
  Installing : 1:openvswitch-2.12.0-1.el7.x86_64                                                                                                                                          13/24 
  Installing : 1:python-openvswitch-2.12.0-1.el7.x86_64                                                                                                                                   14/24 
  Installing : python2-ovsdbapp-0.17.5-1.el7.noarch                                                                                                                                       15/24 
  Installing : python-oslo-versionedobjects-lang-1.36.1-1.el7.noarch                                                                                                                      16/24 
  Installing : python2-oslo-versionedobjects-1.36.1-1.el7.noarch                                                                                                                          17/24 
  Installing : python2-os-vif-1.17.0-1.el7.noarch                                                                                                                                         18/24 
  Installing : 1:python2-nova-20.6.0-1.el7.noarch                                                                                                                                         19/24 
  Installing : 1:openstack-nova-common-20.6.0-1.el7.noarch                                                                                                                                20/24 
  Installing : 1:openstack-nova-scheduler-20.6.0-1.el7.noarch                                                                                                                             21/24 
  Installing : 1:openstack-nova-conductor-20.6.0-1.el7.noarch                                                                                                                             22/24 
  Installing : 1:openstack-nova-api-20.6.0-1.el7.noarch                                                                                                                                   23/24 
  Installing : 1:openstack-nova-novncproxy-20.6.0-1.el7.noarch                                                                                                                            24/24 
  Verifying  : 1:openvswitch-2.12.0-1.el7.x86_64                                                                                                                                           1/24 
  Verifying  : python2-zake-0.2.2-2.el7.noarch                                                                                                                                             2/24 
  Verifying  : python2-tooz-1.66.3-1.el7.noarch                                                                                                                                            3/24 
  Verifying  : python2-paramiko-2.4.2-2.el7.noarch                                                                                                                                         4/24 
  Verifying  : python-oslo-versionedobjects-lang-1.36.1-1.el7.noarch                                                                                                                       5/24 
  Verifying  : python2-os-vif-1.17.0-1.el7.noarch                                                                                                                                          6/24 
  Verifying  : 1:openstack-nova-scheduler-20.6.0-1.el7.noarch                                                                                                                              7/24 
  Verifying  : 1:openstack-nova-common-20.6.0-1.el7.noarch                                                                                                                                 8/24 
  Verifying  : 1:openstack-nova-conductor-20.6.0-1.el7.noarch                                                                                                                              9/24 
  Verifying  : dpdk-18.11.8-1.el7_8.x86_64                                                                                                                                                10/24 
  Verifying  : 1:openstack-nova-api-20.6.0-1.el7.noarch                                                                                                                                   11/24 
  Verifying  : python-kazoo-2.2.1-1.el7.noarch                                                                                                                                            12/24 
  Verifying  : python2-websockify-0.8.0-13.el7.noarch                                                                                                                                     13/24 
  Verifying  : python2-oslo-versionedobjects-1.36.1-1.el7.noarch                                                                                                                          14/24 
  Verifying  : python2-pynacl-1.3.0-1.el7.x86_64                                                                                                                                          15/24 
  Verifying  : 1:python-openvswitch-2.12.0-1.el7.x86_64                                                                                                                                   16/24 
  Verifying  : python2-pyroute2-0.5.6-1.el7.noarch                                                                                                                                        17/24 
  Verifying  : novnc-1.1.0-6.el7.noarch                                                                                                                                                   18/24 
  Verifying  : python2-ovsdbapp-0.17.5-1.el7.noarch                                                                                                                                       19/24 
  Verifying  : python2-redis-3.1.0-1.el7.noarch                                                                                                                                           20/24 
  Verifying  : 1:openstack-nova-novncproxy-20.6.0-1.el7.noarch                                                                                                                            21/24 
  Verifying  : libsodium-1.0.18-2.el7.x86_64                                                                                                                                              22/24 
  Verifying  : 1:python2-nova-20.6.0-1.el7.noarch                                                                                                                                         23/24 
  Verifying  : python2-voluptuous-0.11.5-1.el7.1.noarch                                                                                                                                   24/24 

Installed:
  openstack-nova-api.noarch 1:20.6.0-1.el7   openstack-nova-conductor.noarch 1:20.6.0-1.el7   openstack-nova-novncproxy.noarch 1:20.6.0-1.el7   openstack-nova-scheduler.noarch 1:20.6.0-1.el7  

Dependency Installed:
  dpdk.x86_64 0:18.11.8-1.el7_8         libsodium.x86_64 0:1.0.18-2.el7            novnc.noarch 0:1.1.0-6.el7                          openstack-nova-common.noarch 1:20.6.0-1.el7            
  openvswitch.x86_64 1:2.12.0-1.el7     python-kazoo.noarch 0:2.2.1-1.el7          python-openvswitch.x86_64 1:2.12.0-1.el7            python-oslo-versionedobjects-lang.noarch 0:1.36.1-1.el7
  python2-nova.noarch 1:20.6.0-1.el7    python2-os-vif.noarch 0:1.17.0-1.el7       python2-oslo-versionedobjects.noarch 0:1.36.1-1.el7 python2-ovsdbapp.noarch 0:0.17.5-1.el7                 
  python2-paramiko.noarch 0:2.4.2-2.el7 python2-pynacl.x86_64 0:1.3.0-1.el7        python2-pyroute2.noarch 0:0.5.6-1.el7               python2-redis.noarch 0:3.1.0-1.el7                     
  python2-tooz.noarch 0:1.66.3-1.el7    python2-voluptuous.noarch 0:0.11.5-1.el7.1 python2-websockify.noarch 0:0.8.0-13.el7            python2-zake.noarch 0:0.2.2-2.el7                      

Complete!
           

3.2 编辑配置文件

/etc/nova/nova.conf

在[DEFAULT]下

启动compute和metadata APIs

在[api_database]下,连接nova_api

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

在[database]下,连接nova

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

在[DEFAULT]下,配置Rabbit MQ队列,注意rabbit mq密码不要输入错误

transport_url = rabbit://openstack:RABBIT_PASS@controller:5672/

在[api]和[keystone_authtoken]配置认证方式和keystone自动认证

[api]

auth_strategy = keystone

[keystone_authtoken]

www_authenticate_uri = http://controller:5000/

auth_url = http://controller:5000/

memcached_servers = controller:11211

auth_type = password

project_domain_name = Default

user_domain_name = Default

project_name = service

username = nova

password = nova

在[default]下使用控制节点管理接口

my_ip = 192.168.0.38

在[default]下使能支持网路

use_neutron = true

firewall_driver = nova.virt.firewall.NoopFirewallDriver

在[vnc]下,使用管理节点ip

enabled = true

server_listen = $my_ip

server_proxyclient_address = $my_ip

在[glance]下,配置本地镜像地址

api_servers = http://controller:9292

在[oslo_concurrency]配置锁路径

lock_path = /var/lib/nova/tmp

在[placement]下,配置该服务访问权限

region_name = RegionOne

project_domain_name = Default

project_name = service

auth_type = password

user_domain_name = Default

auth_url = http://controller:5000/v3

username = placement

password = placement

[root@openstack-controller ~]# cat /etc/nova/nova.conf 
[DEFAULT]
#
my_ip = 192.168.0.38
enabled_apis = osapi_compute,metadata
transport_url = rabbit://openstack:RABBIT_PASS@controller:5672/
use_neutron = true
firewall_driver = nova.virt.firewall.NoopFirewallDriver
[api]
auth_strategy = keystone
[api_database]
connection = mysql+pymysql://nova:NOVA_DBPASS@controller/nova_api
[barbican]
[cache]
[cinder]
[compute]
[conductor]
[console]
[consoleauth]
[cors]
[database]
connection = mysql+pymysql://nova:NOVA_DBPASS@controller/nova
[devices]
[ephemeral_storage_encryption]
[filter_scheduler]
[glance]
api_servers = http://controller:9292
[guestfs]
[healthcheck]
[hyperv]
[ironic]
[key_manager]
[keystone]
[keystone_authtoken]
www_authenticate_uri = http://controller:5000/
auth_url = http://controller:5000/
memcached_servers = controller:11211
auth_type = password
project_domain_name = Default
user_domain_name = Default
project_name = service
username = nova
password = nova
[libvirt]
[metrics]
[mks]
[neutron]
[notifications]
[osapi_v21]
[oslo_concurrency]
lock_path = /var/lib/nova/tmp
[oslo_messaging_amqp]
[oslo_messaging_kafka]
[oslo_messaging_notifications]
[oslo_messaging_rabbit]
[oslo_middleware]
[oslo_policy]
[pci]
[placement]
region_name = RegionOne
project_domain_name = Default
project_name = service
auth_type = password
user_domain_name = Default
auth_url = http://controller:5000/v3
username = placement
password = placement
[powervm]
[privsep]
[profiler]
[quota]
[rdp]
[remote_debug]
[scheduler]
[serial_console]
[service_user]
[spice]
[upgrade_levels]
[vault]
[vendordata_dynamic_auth]
[vmware]
[vnc]
enabled = true
server_listen = $my_ip
server_proxyclient_address = $my_ip
[workarounds]
[wsgi]
[xenserver]
[xvp]
[zvm]
           

3.3 同步nova-api数据库

su -s /bin/sh -c "nova-manage api_db sync" nova
[root@openstack-controller ~]# su -s /bin/sh -c "nova-manage api_db sync" nova
           

3.4 注册cell0数据库

su -s /bin/sh -c "nova-manage cell_v2 map_cell0" nova
[root@openstack-controller ~]# su -s /bin/sh -c "nova-manage cell_v2 map_cell0" nova
           

3.5创建cell1数据库

su -s /bin/sh -c "nova-manage cell_v2 create_cell --name=cell1 --verbose" nova
[root@openstack-controller ~]# su -s /bin/sh -c "nova-manage cell_v2 create_cell --name=cell1 --verbose" nova
4cd74431-89fe-47b4-bd62-454aa465e786
           

3.6 同步nova数据库

su -s /bin/sh -c "nova-manage db sync" nova
[root@openstack-controller ~]# su -s /bin/sh -c "nova-manage db sync" nova
/usr/lib/python2.7/site-packages/pymysql/cursors.py:170: Warning: (1831, u'Duplicate index `block_device_mapping_instance_uuid_virtual_name_device_name_idx`. This is deprecated and will be disallowed in a future release')
  result = self._query(query)
/usr/lib/python2.7/site-packages/pymysql/cursors.py:170: Warning: (1831, u'Duplicate index `uniq_instances0uuid`. This is deprecated and will be disallowed in a future release')
  result = self._query(query)
           

3.7 验证cell0和cell1注册成功

su -s /bin/sh -c "nova-manage cell_v2 list_cells" nova
[root@openstack-controller ~]# su -s /bin/sh -c "nova-manage cell_v2 list_cells" nova
+-------+--------------------------------------+------------------------------------------+-------------------------------------------------+----------+
|  Name |                 UUID                 |              Transport URL               |               Database Connection               | Disabled |
+-------+--------------------------------------+------------------------------------------+-------------------------------------------------+----------+
| cell0 | 00000000-0000-0000-0000-000000000000 |                  none:/                  | mysql+pymysql://nova:****@controller/nova_cell0 |  False   |
| cell1 | 4cd74431-89fe-47b4-bd62-454aa465e786 | rabbit://openstack:****@controller:5672/ |    mysql+pymysql://nova:****@controller/nova    |  False   |
+-------+--------------------------------------+------------------------------------------+-------------------------------------------------+----------+
           

3.8 开机自启服务并重启

systemctl enable openstack-nova-api.service openstack-nova-scheduler.service openstack-nova-conductor.service openstack-nova-novncproxy.service

systemctl start openstack-nova-api.service openstack-nova-scheduler.service openstack-nova-conductor.service openstack-nova-novncproxy.service

systemctl status openstack-nova-api.service openstack-nova-scheduler.service openstack-nova-conductor.service openstack-nova-novncproxy.service

[root@openstack-controller ~]# systemctl enable openstack-nova-api.service openstack-nova-scheduler.service openstack-nova-conductor.service openstack-nova-novncproxy.service
Created symlink from /etc/systemd/system/multi-user.target.wants/openstack-nova-api.service to /usr/lib/systemd/system/openstack-nova-api.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/openstack-nova-scheduler.service to /usr/lib/systemd/system/openstack-nova-scheduler.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/openstack-nova-conductor.service to /usr/lib/systemd/system/openstack-nova-conductor.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/openstack-nova-novncproxy.service to /usr/lib/systemd/system/openstack-nova-novncproxy.service.
[root@openstack-controller ~]# systemctl start openstack-nova-api.service openstack-nova-scheduler.service openstack-nova-conductor.service openstack-nova-novncproxy.service
[root@openstack-controller ~]# systemctl status openstack-nova-api.service openstack-nova-scheduler.service openstack-nova-conductor.service openstack-nova-novncproxy.service
● openstack-nova-api.service - OpenStack Nova API Server
   Loaded: loaded (/usr/lib/systemd/system/openstack-nova-api.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2022-09-03 19:40:19 CST; 10s ago
 Main PID: 11052 (nova-api)
   CGroup: /system.slice/openstack-nova-api.service
           ├─11052 /usr/bin/python2 /usr/bin/nova-api
           ├─11109 /usr/bin/python2 /usr/bin/nova-api
           ├─11110 /usr/bin/python2 /usr/bin/nova-api
           ├─11111 /usr/bin/python2 /usr/bin/nova-api
           ├─11113 /usr/bin/python2 /usr/bin/nova-api
           ├─11121 /usr/bin/python2 /usr/bin/nova-api
           ├─11123 /usr/bin/python2 /usr/bin/nova-api
           ├─11124 /usr/bin/python2 /usr/bin/nova-api
           └─11125 /usr/bin/python2 /usr/bin/nova-api

Sep 03 19:40:08 openstack-controller systemd[1]: Starting OpenStack Nova API Server...
Sep 03 19:40:13 openstack-controller nova-api[11052]: /usr/lib/python2.7/site-packages/paste/deploy/loadwsgi.py:22: PkgResourcesDeprecationWarning: Parameters to load are depreca...separately.
Sep 03 19:40:13 openstack-controller nova-api[11052]: return pkg_resources.EntryPoint.parse("x=" + s).load(False)
Sep 03 19:40:19 openstack-controller systemd[1]: Started OpenStack Nova API Server.

● openstack-nova-scheduler.service - OpenStack Nova Scheduler Server
   Loaded: loaded (/usr/lib/systemd/system/openstack-nova-scheduler.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2022-09-03 19:40:18 CST; 10s ago
 Main PID: 11053 (nova-scheduler)
   CGroup: /system.slice/openstack-nova-scheduler.service
           ├─11053 /usr/bin/python2 /usr/bin/nova-scheduler
           ├─11114 /usr/bin/python2 /usr/bin/nova-scheduler
           ├─11115 /usr/bin/python2 /usr/bin/nova-scheduler
           ├─11116 /usr/bin/python2 /usr/bin/nova-scheduler
           └─11117 /usr/bin/python2 /usr/bin/nova-scheduler

Sep 03 19:40:08 openstack-controller systemd[1]: Starting OpenStack Nova Scheduler Server...
Sep 03 19:40:18 openstack-controller systemd[1]: Started OpenStack Nova Scheduler Server.

● openstack-nova-conductor.service - OpenStack Nova Conductor Server
   Loaded: loaded (/usr/lib/systemd/system/openstack-nova-conductor.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2022-09-03 19:40:14 CST; 15s ago
 Main PID: 11054 (nova-conductor)
   CGroup: /system.slice/openstack-nova-conductor.service
           ├─11054 /usr/bin/python2 /usr/bin/nova-conductor
           ├─11096 /usr/bin/python2 /usr/bin/nova-conductor
           ├─11097 /usr/bin/python2 /usr/bin/nova-conductor
           ├─11098 /usr/bin/python2 /usr/bin/nova-conductor
           └─11099 /usr/bin/python2 /usr/bin/nova-conductor

Sep 03 19:40:08 openstack-controller systemd[1]: Starting OpenStack Nova Conductor Server...
Sep 03 19:40:14 openstack-controller systemd[1]: Started OpenStack Nova Conductor Server.

● openstack-nova-novncproxy.service - OpenStack Nova NoVNC Proxy Server
   Loaded: loaded (/usr/lib/systemd/system/openstack-nova-novncproxy.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2022-09-03 19:40:08 CST; 21s ago
 Main PID: 11055 (nova-novncproxy)
   CGroup: /system.slice/openstack-nova-novncproxy.service
           └─11055 /usr/bin/python2 /usr/bin/nova-novncproxy --web /usr/share/novnc/

Sep 03 19:40:08 openstack-controller systemd[1]: Started OpenStack Nova NoVNC Proxy Server.
Hint: Some lines were ellipsized, use -l to show in full.
           

4、 在计算节点安装nova

4.1 安装软件包

yum install -y python2-qpid-proton-0.26.0-2.el7.x86_64

yum install -y openstack-nova-compute

[root@openstack-compute1 ~]# yum install -y openstack-nova-compute
[root@openstack-compute1 ~]# yum install -y python2-qpid-proton-0.26.0-2.el7.x86_64
[root@openstack-compute2 ~]# yum install -y openstack-nova-compute
[root@openstack-compute2 ~]# yum install -y python2-qpid-proton-0.26.0-2.el7.x86_64
           

4.2 修改配置文件

/etc/nova/nova.conf

# 计算节点1
[root@openstack-compute1 ~]# cat /etc/nova/nova.conf
[DEFAULT]
my_ip = 192.168.0.39
enabled_apis = osapi_compute,metadata
transport_url = rabbit://openstack:RABBIT_PASS@controller:5672/
use_neutron = true
firewall_driver = nova.virt.firewall.NoopFirewallDriver
[api]
auth_strategy = keystone
[api_database]
connection = mysql+pymysql://nova:NOVA_DBPASS@controller/nova_api
[barbican]
[cache]
[cinder]
[compute]
[conductor]
[console]
[consoleauth]
[cors]
[database]
connection = mysql+pymysql://nova:NOVA_DBPASS@controller/nova
[devices]
[ephemeral_storage_encryption]
[filter_scheduler]
[glance]
api_servers = http://controller:9292
[guestfs]
[healthcheck]
[hyperv]
[ironic]
[key_manager]
[keystone]
[keystone_authtoken]
www_authenticate_uri = http://controller:5000/
auth_url = http://controller:5000/
memcached_servers = controller:11211
auth_type = password
project_domain_name = Default
user_domain_name = Default
project_name = service
username = nova
password = nova
[libvirt]
virt_type = qemu
[metrics]
[mks]
[neutron]
[notifications]
[osapi_v21]
[oslo_concurrency]
lock_path = /var/lib/nova/tmp
[oslo_messaging_amqp]
[oslo_messaging_kafka]
[oslo_messaging_notifications]
[oslo_messaging_rabbit]
[oslo_middleware]
[oslo_policy]
[pci]
[placement]
region_name = RegionOne
project_domain_name = Default
project_name = service
auth_type = password
user_domain_name = Default
auth_url = http://controller:5000/v3
username = placement
password = placement
[powervm]
[privsep]
[profiler]
[quota]
[rdp]
[remote_debug]
[scheduler]
[serial_console]
[service_user]
[spice]
[upgrade_levels]
[vault]
[vendordata_dynamic_auth]
[vmware]
[vnc]
enabled = true
server_listen = $my_ip
server_proxyclient_address = $my_ip
[workarounds]
[wsgi]
[xenserver]
[xvp]
[zvm]

# 计算节点2不同点
[root@openstack-compute1 ~]# cat /etc/nova/nova.conf
[DEFAULT]
my_ip = 192.168.0.39
...
           

4.3 开机自启服务并重启

systemctl enable libvirtd.service openstack-nova-compute.service

systemctl start libvirtd.service openstack-nova-compute.service

systemctl restart libvirtd.service openstack-nova-compute.service

systemctl status libvirtd.service openstack-nova-compute.service

[root@openstack-compute1 ~]# systemctl enable libvirtd.service openstack-nova-compute.service
Created symlink from /etc/systemd/system/multi-user.target.wants/openstack-nova-compute.service to /usr/lib/systemd/system/openstack-nova-compute.service.
[root@openstack-compute1 ~]# systemctl start libvirtd.service openstack-nova-compute.service
[root@openstack-compute1 ~]# systemctl restart libvirtd.service openstack-nova-compute.service
[root@openstack-compute1 ~]# systemctl status libvirtd.service openstack-nova-compute.service
● libvirtd.service - Virtualization daemon
   Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2022-09-03 12:54:25 CST; 9s ago
     Docs: man:libvirtd(8)
           https://libvirt.org
 Main PID: 13762 (libvirtd)
    Tasks: 17 (limit: 32768)
   CGroup: /system.slice/libvirtd.service
           └─13762 /usr/sbin/libvirtd

Sep 03 12:54:25 openstack-compute1 systemd[1]: Starting Virtualization daemon...
Sep 03 12:54:25 openstack-compute1 systemd[1]: Started Virtualization daemon.

● openstack-nova-compute.service - OpenStack Nova Compute Server
   Loaded: loaded (/usr/lib/systemd/system/openstack-nova-compute.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2022-09-03 12:54:27 CST; 7s ago
 Main PID: 13779 (nova-compute)
    Tasks: 22
   CGroup: /system.slice/openstack-nova-compute.service
           └─13779 /usr/bin/python2 /usr/bin/nova-compute

Sep 03 12:54:25 openstack-compute1 systemd[1]: Starting OpenStack Nova Compute Server...
Sep 03 12:54:27 openstack-compute1 systemd[1]: Started OpenStack Nova Compute Server.
           

4.4 确认数据库中计算节点

source openrc

openstack compute service list --service nova-compute

[root@openstack-compute1 ~]# source openrc 
[root@openstack-compute1 ~]# openstack compute service list --service nova-compute
+----+--------------+--------------------+------+---------+-------+----------------------------+
| ID | Binary       | Host               | Zone | Status  | State | Updated At                 |
+----+--------------+--------------------+------+---------+-------+----------------------------+
|  6 | nova-compute | openstack-compute1 | nova | enabled | up    | 2022-09-03T14:23:09.000000 |
+----+--------------+--------------------+------+---------+-------+----------------------------+
           

4.5 将计算节点加入nova

su -s /bin/sh -c "nova-manage cell_v2 discover_hosts --verbose" nova

openstack compute service list --service nova-compute

openstack compute service list

[root@openstack-compute1 ~]# su -s /bin/sh -c "nova-manage cell_v2 discover_hosts --verbose" nova
Found 2 cell mappings.
Skipping cell0 since it does not contain hosts.
Getting computes from cell 'cell1': 4cd74431-89fe-47b4-bd62-454aa465e786
Checking host mapping for compute host 'openstack-compute2': f8557cde-9b50-418f-a23e-890c513657dc
Creating host mapping for compute host 'openstack-compute2': f8557cde-9b50-418f-a23e-890c513657dc
Found 1 unmapped computes in cell: 4cd74431-89fe-47b4-bd62-454aa465e786
[root@openstack-compute1 ~]# openstack compute service list 
+----+----------------+----------------------+----------+---------+-------+----------------------------+
| ID | Binary         | Host                 | Zone     | Status  | State | Updated At                 |
+----+----------------+----------------------+----------+---------+-------+----------------------------+
|  1 | nova-conductor | openstack-controller | internal | enabled | up    | 2022-09-03T14:31:00.000000 |
|  2 | nova-scheduler | openstack-controller | internal | enabled | up    | 2022-09-03T14:30:56.000000 |
|  6 | nova-compute   | openstack-compute1   | nova     | enabled | up    | 2022-09-03T14:30:59.000000 |
|  7 | nova-compute   | openstack-compute2   | nova     | enabled | up    | 2022-09-03T14:30:53.000000 |
+----+----------------+----------------------+----------+---------+-------+----------------------------+
[root@openstack-compute1 ~]# openstack compute service list --service nova-compute
+----+--------------+--------------------+------+---------+-------+----------------------------+
| ID | Binary       | Host               | Zone | Status  | State | Updated At                 |
+----+--------------+--------------------+------+---------+-------+----------------------------+
|  6 | nova-compute | openstack-compute1 | nova | enabled | up    | 2022-09-03T14:33:19.000000 |
|  7 | nova-compute | openstack-compute2 | nova | enabled | up    | 2022-09-03T14:33:23.000000 |
+----+--------------+--------------------+------+---------+-------+----------------------------+
           

4.6 自动发现计算节点

在/etc/nova/nova.conf

#每300秒发现一次

[scheduler]

discover_hosts_in_cells_interval = 300

5、 nova安装测试

5.1 创建一个实例

[root@openstack-controller ~]# openstack flavor list 

[root@openstack-controller ~]# openstack flavor create 
usage: openstack flavor create [-h] [-f {json,shell,table,value,yaml}]
                               [-c COLUMN] [--max-width <integer>]
                               [--fit-width] [--print-empty] [--noindent]
                               [--prefix PREFIX] [--id <id>] [--ram <size-mb>]
                               [--disk <size-gb>] [--ephemeral <size-gb>]
                               [--swap <size-mb>] [--vcpus <vcpus>]
                               [--rxtx-factor <factor>] [--public | --private]
                               [--property <key=value>] [--project <project>]
                               [--description <description>]
                               [--project-domain <project-domain>]
                               <flavor-name>
openstack flavor create: error: too few arguments
[root@openstack-controller ~]# openstack flavor create --vcpu 1 --ram 64 --disk 1 small
+----------------------------+--------------------------------------+
| Field                      | Value                                |
+----------------------------+--------------------------------------+
| OS-FLV-DISABLED:disabled   | False                                |
| OS-FLV-EXT-DATA:ephemeral  | 0                                    |
| disk                       | 1                                    |
| id                         | 73cf90d4-41fd-4d08-aedd-3d4e056bf167 |
| name                       | small                                |
| os-flavor-access:is_public | True                                 |
| properties                 |                                      |
| ram                        | 64                                   |
| rxtx_factor                | 1.0                                  |
| swap                       |                                      |
| vcpus                      | 1                                    |
+----------------------------+--------------------------------------+
[root@openstack-controller ~]# openstack flavor list 
+--------------------------------------+-------+-----+------+-----------+-------+-----------+
| ID                                   | Name  | RAM | Disk | Ephemeral | VCPUs | Is Public |
+--------------------------------------+-------+-----+------+-----------+-------+-----------+
| 73cf90d4-41fd-4d08-aedd-3d4e056bf167 | small |  64 |    1 |         0 |     1 | True      |
+--------------------------------------+-------+-----+------+-----------+-------+-----------+
           

继续阅读