美文网首页
6.2 安装和配置控制节点

6.2 安装和配置控制节点

作者: 坚果的野望 | 来源:发表于2017-08-02 17:20 被阅读0次

本节描述如何在控制节点上安装和配置计算服务,代号 nova。

先决条件

在安装和配置计算服务之前,您必须创建数据库、服务凭证和 API 端点。

1、要创建数据库,请完成以下步骤:
root 用户身份使用数据库客户端连接到数据库服务器:

# mysql

创建 nova_apinovanova_cell0 数据库:

MariaDB [(none)]> CREATE DATABASE nova_api;
MariaDB [(none)]> CREATE DATABASE nova;
MariaDB [(none)]> CREATE DATABASE nova_cell0;

授予对数据库的适当访问权限:

MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'localhost' \
  IDENTIFIED BY 'NOVA_DBPASS';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'%' \
  IDENTIFIED BY 'NOVA_DBPASS';

MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localhost' \
  IDENTIFIED BY 'NOVA_DBPASS';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'%' \
  IDENTIFIED BY 'NOVA_DBPASS';

MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_cell0.* TO 'nova'@'localhost' \
  IDENTIFIED BY 'NOVA_DBPASS';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_cell0.* TO 'nova'@'%' \
  IDENTIFIED BY 'NOVA_DBPASS';

用适当的密码替换 NOVA_DBPASS

退出数据库客户端连接。

2、Source admin 凭证获取对 admin 专用 CLI 命令的访问权限:

$ . admin-openrc

3、创建计算服务凭证:
创建 nova 用户:

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

User Password:
Repeat User Password:
+---------------------+----------------------------------+
| Field               | Value                            |
+---------------------+----------------------------------+
| domain_id           | default                          |
| enabled             | True                             |
| id                  | 8a7dbf5279404537b1c7b86c033620fe |
| name                | nova                             |
| options             | {}                               |
| password_expires_at | None                             |
+---------------------+----------------------------------+

nova 用户添加 admin 角色:

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

这个命令不提供输出。

创建 nova 服务实体:

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

+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | OpenStack Compute                |
| enabled     | True                             |
| id          | 060d59eac51b4594815603d75a00aba2 |
| name        | nova                             |
| type        | compute                          |
+-------------+----------------------------------+

4、创建计算 API 服务端点:

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

+--------------+-------------------------------------------+
| Field        | Value                                     |
+--------------+-------------------------------------------+
| enabled      | True                                      |
| id           | 3c1caa473bfe4390a11e7177894bcc7b          |
| interface    | public                                    |
| region       | RegionOne                                 |
| region_id    | RegionOne                                 |
| service_id   | 060d59eac51b4594815603d75a00aba2          |
| service_name | nova                                      |
| service_type | compute                                   |
| url          | http://controller:8774/v2.1               |
+--------------+-------------------------------------------+

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

+--------------+-------------------------------------------+
| Field        | Value                                     |
+--------------+-------------------------------------------+
| enabled      | True                                      |
| id           | e3c918de680746a586eac1f2d9bc10ab          |
| interface    | internal                                  |
| region       | RegionOne                                 |
| region_id    | RegionOne                                 |
| service_id   | 060d59eac51b4594815603d75a00aba2          |
| service_name | nova                                      |
| service_type | compute                                   |
| url          | http://controller:8774/v2.1               |
+--------------+-------------------------------------------+

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

+--------------+-------------------------------------------+
| Field        | Value                                     |
+--------------+-------------------------------------------+
| enabled      | True                                      |
| id           | 38f7af91666a47cfb97b4dc790b94424          |
| interface    | admin                                     |
| region       | RegionOne                                 |
| region_id    | RegionOne                                 |
| service_id   | 060d59eac51b4594815603d75a00aba2          |
| service_name | nova                                      |
| service_type | compute                                   |
| url          | http://controller:8774/v2.1               |
+--------------+-------------------------------------------+

5、使用选定的 PLACEMENT_PASS 创建一个放置服务用户:

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

User Password:
Repeat User Password:
+---------------------+----------------------------------+
| Field               | Value                            |
+---------------------+----------------------------------+
| domain_id           | default                          |
| enabled             | True                             |
| id                  | fa742015a6494a949f67629884fc7ec8 |
| name                | placement                        |
| options             | {}                               |
| password_expires_at | None                             |
+---------------------+----------------------------------+

6、将放置用户添加到服务项目的管理角色

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

这个命令不提供输出。

7、在服务目录中创建放置 API 条目:

$ openstack service create --name placement --description "Placement API" placement
+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | Placement API                    |
| enabled     | True                             |
| id          | 2d1a27022e6e4185b86adac4444c495f |
| name        | placement                        |
| type        | placement                        |
+-------------+----------------------------------+

8、创建放置 API 服务端点:

$ openstack endpoint create --region RegionOne placement public http://controller:8778
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | 2b1b2637908b4137a9c2e0470487cbc0 |
| interface    | public                           |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | 2d1a27022e6e4185b86adac4444c495f |
| service_name | placement                        |
| service_type | placement                        |
| url          | http://controller:8778           |
+--------------+----------------------------------+

$ openstack endpoint create --region RegionOne placement internal http://controller:8778
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | 02bcda9a150a4bd7993ff4879df971ab |
| interface    | internal                         |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | 2d1a27022e6e4185b86adac4444c495f |
| service_name | placement                        |
| service_type | placement                        |
| url          | http://controller:8778           |
+--------------+----------------------------------+

$ openstack endpoint create --region RegionOne placement admin http://controller:8778
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | 3d71177b9e0f406f98cbff198d74b182 |
| interface    | admin                            |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | 2d1a27022e6e4185b86adac4444c495f |
| service_name | placement                        |
| service_type | placement                        |
| url          | http://controller:8778           |
+--------------+----------------------------------+

安装和配置组件

默认配置文件因发行版而异。您可能需要添加这些部分和选项,而不是修改现有的部分和选项。同时,配置片段中的省略号 () 表示您应该保留的潜在的默认配置选项。

1、安装包:

apt install nova-api nova-conductor nova-consoleauth \
  nova-novncproxy nova-scheduler nova-placement-api

2、编辑 /etc/nova/nova.conf 文件并完成以下操作:
[api_database][database]部分,配置数据库访问:

[api_database]
# ...
connection = mysql+pymysql://nova:NOVA_DBPASS@controller/nova_api

[database]
# ...
connection = mysql+pymysql://nova:NOVA_DBPASS@controller/nova

用您为计算数据库选择的密码替换 NOVA_DBPASS

[DEFAULT] 部分中,配置 RabbitMQ 消息队列访问:

[DEFAULT]
# ...
transport_url = rabbit://openstack:RABBIT_PASS@controller

使用您在 RabbitMQ 中为 openstack 帐户选择的密码替换
RABBIT_PASS

[api][keystone_authtoken] 部分中,配置身份服务访问:

[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_PASS

使用在身份服务中为 nova 用户选择的密码替换 NOVA_PASS

注释掉或删除 [keystone_authtoken] 部分中的其他选项。

[DEFAULT] 部分,配置 my_ip 选项以使用控制节点的管理接口 IP 地址:

[DEFAULT]
# ...
my_ip = 10.0.0.11

[DEFAULT] 部分,启用支持网络服务:

[DEFAULT]
# ...
use_neutron = True
firewall_driver = nova.virt.firewall.NoopFirewallDriver

默认情况下,Compute 使用内部防火墙驱动程序。由于网络服务包括一个防火墙驱动程序,所以您必须禁用 Compute 防火墙驱动,而是使用 nova.virt.firewall.NoopFirewallDriver 防火墙驱动。

[vnc] 部分,配置 vnc 代理,以使用控制节点的管理接口 IP 地址:

[vnc]
enabled = true
# ...
vncserver_listen = $my_ip
vncserver_proxyclient_address = $my_ip

[glance] 部分,配置镜像服务 API 的位置:

[glance]
# ...
api_servers = http://controller:9292

[oslo_concurrency] 部分中,配置锁路径:

[oslo_concurrency]
# ...
lock_path = /var/lib/nova/tmp

由于打包 bug,从 [DEFAULT]部分删除 log_dir 选项。

[placement] 部分,配置放置 API:

[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_PASS

PLACEMENT_PASS 替换为在身份服务中为 placement 用户选择的密码。注释掉 [placement] 部分的其他选项。

3、同步 nova-api 数据库:

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

忽略该输出中的任何弃用消息。

4、注册 cell0 数据库:

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

5、创建 cell1

su -s /bin/sh -c "nova-manage cell_v2 create_cell --name=cell1 --verbose" nova
109e1d4b-536a-40d0-83c6-5f121b82b650

6、同步 nova 数据库:

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

7、验证 nova cell0 和 cell1 正确注册:

# nova-manage cell_v2 list_cells
+-------+--------------------------------------+
| Name  | UUID                                 |
+-------+--------------------------------------+
| cell1 | 109e1d4b-536a-40d0-83c6-5f121b82b650 |
| cell0 | 00000000-0000-0000-0000-000000000000 |
+-------+--------------------------------------+

完成安装

重启计算服务:

service nova-api restart
service nova-consoleauth restart
service nova-scheduler restart
service nova-conductor restart
service nova-novncproxy restart

相关文章

  • 6.2 安装和配置控制节点

    本节描述如何在控制节点上安装和配置计算服务,代号 nova。 先决条件 在安装和配置计算服务之前,您必须创建数据库...

  • 部署Neutron网络

    安装和配置控制节点(Controller node) 在配置Openstack网络(项目代号为neutron)服务...

  • 3.neutron控制端和计算节点

    安装和配置控制器节点 参考安装网站https://docs.openstack.org/neutron/stein...

  • 如何在RHEL 8上安装和配置Ansible控制节点(2)

    在本文中,我们将演示如何在RHEL 8上安装Ansible控制节点以及如何配置控制节点以连接和控制托管主机。 在上...

  • 3.3.2 其他节点

    其他节点引用控制器节点来进行时钟同步,在所有其他节点上执行这些步骤。 安装和配置组件 1、安装包: 2、编辑 /e...

  • 部署 Option 1: Provider网络

    Option 1: Provider 网络 在controller node控制节点安装、配置网络组件 安装组件 ...

  • 3.3.1 控制节点

    在控制器节点上执行这些步骤。 安装和配置组件 1、安装包: 2、编辑 /etc/chrony/chrony.con...

  • 个人-003-OpenStack-镜像服务

    OpenStack-镜像服务 【基于此文章的环境】点我快速打开文章 1、安装和配置 控制节点(controller...

  • MQ RabbitMQ 高可用集群(二):集群搭建

    1 集群节点安装 单节点安装RabbitMQ,可参考博文: MQ RocketMQ安装部署和配置: https:...

  • 5.2 安装和配置

    本节描述如何在控制节点上安装和配置镜像服务,代号为 glance。为简单起见,该配置将映像存储在本地文件系统上。 ...

网友评论

      本文标题:6.2 安装和配置控制节点

      本文链接:https://www.haomeiwen.com/subject/sskylxtx.html