CentOS Stream 9
Sponsored Link

OpenStack Antelope : Compute ノードを追加する2023/04/17

 
Computeノードを追加します。
Computeノードを追加することにより、より多くのインスタンスを扱うことができます。
以下では、Nova Compute の設定のみを例示しています。
実際に新規追加ノードで仮想マシンインスタンスを起動する場合は、Network コンポーネントの設定も必要になります。
Neutron with ML2 または Neutron with OVN
当例では以下のような環境を例に Nova Compute ノードを追加します。
------------+--------------------------+------------
            |                          |
        eth0|10.0.0.30             eth0|10.0.0.51
+-----------+-----------+  +-----------+-----------+
|   [ dlp.srv.world ]   |  |  [ node01.srv.world ] |
|     (Control Node)    |  |     (Compute Node)    |
|                       |  |                       |
|  MariaDB    RabbitMQ  |  |        Libvirt        |
|  Memcached  Nginx     |  |      Nova Compute     |
|  Keystone   httpd     |  |                       |
|  Glance     Nova API  |  |                       |
+-----------------------+  +-----------------------+

[1]
[2]
追加する Compute ノードに、こちらを参考にして KVM ハイパーバイザーをインストールしておきます
なお、リンク先 [2] のブリッジの設定は不要です。
[3] Nova-Compute をインストールします。
# Antelope, EPEL, CRB からインストール

[root@node01 ~]#
dnf --enablerepo=centos-openstack-antelope,epel,crb -y install openstack-nova-compute
[4] Nova の基本設定です。
[root@node01 ~]#
mv /etc/nova/nova.conf /etc/nova/nova.conf.org

[root@node01 ~]#
vi /etc/nova/nova.conf
# 新規作成

[DEFAULT]
state_path = /var/lib/nova
enabled_apis = osapi_compute,metadata
log_dir = /var/log/nova
# RabbitMQ サーバー接続情報
transport_url = rabbit://openstack:password@dlp.srv.world
compute_driver = libvirt.LibvirtDriver

[api]
auth_strategy = keystone

[vnc]
enabled = True
# インスタンスがリスンする IP アドレス
# ノードの IP アドレスを指定
server_listen = 10.0.0.51
server_proxyclient_address = 10.0.0.51
novncproxy_base_url = https://dlp.srv.world:6080/vnc_auto.html

# Glance サーバーを指定
[glance]
api_servers = https://dlp.srv.world:9292

[oslo_concurrency]
lock_path = $state_path/tmp

# Keystone サーバー接続情報
[keystone_authtoken]
www_authenticate_uri = https://dlp.srv.world:5000
auth_url = https://dlp.srv.world:5000
memcached_servers = dlp.srv.world:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = nova
password = servicepassword
# httpd Keystone で自己署名の証明書を使用の場合は [true]
insecure = false

[placement]
auth_url = https://dlp.srv.world:5000
os_region_name = RegionOne
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = placement
password = servicepassword
# httpd Keystone で自己署名の証明書を使用の場合は [true]
insecure = false

[wsgi]
api_paste_config = /etc/nova/api-paste.ini

[oslo_policy]
enforce_new_defaults = true

[root@node01 ~]#
chmod 640 /etc/nova/nova.conf

[root@node01 ~]#
chgrp nova /etc/nova/nova.conf

[5] SELinux を有効にしている場合は、ポリシーの変更が必要です。
[root@node01 ~]#
dnf --enablerepo=centos-openstack-antelope -y install openstack-selinux

[root@node01 ~]#
vi lsmd.te
# 以下の内容で新規作成

module lsmd 1.0;

require {
        type pasta_exec_t;
        type lsmd_t;
        class lnk_file getattr;
}

#============= lsmd_t ==============
allow lsmd_t pasta_exec_t:lnk_file getattr;

[root@node01 ~]#
checkmodule -m -M -o lsmd.mod lsmd.te

[root@node01 ~]#
semodule_package --outfile lsmd.pp --module lsmd.mod

[root@node01 ~]#
semodule -i lsmd.pp

[6] Firewalld を有効にしている場合は、サービスポートの許可が必要です。
[root@node01 ~]#
firewall-cmd --add-port=5900-5999/tcp

success
[root@node01 ~]#
firewall-cmd --runtime-to-permanent

success
[7] Nova Compute サービス起動を起動します。
[root@node01 ~]#
systemctl enable --now openstack-nova-compute

[8] Control ノード上でサービスの稼働状況を確認します。以下のように計算ノード分が追加されていれば OK です。
# Compute ノード ディスカバー

[root@dlp ~(keystone)]#
su -s /bin/bash nova -c "nova-manage cell_v2 discover_hosts"
[root@dlp ~(keystone)]#
openstack compute service list

+--------------------------------------+----------------+------------------+----------+---------+-------+----------------------------+
| ID                                   | Binary         | Host             | Zone     | Status  | State | Updated At                 |
+--------------------------------------+----------------+------------------+----------+---------+-------+----------------------------+
| 708353f0-d539-4bcb-ad32-ed9d43437cfb | nova-scheduler | dlp.srv.world    | internal | enabled | up    | 2023-04-17T02:29:51.000000 |
| 8348531a-fb0d-4fd6-a6b1-11f09afd0529 | nova-conductor | dlp.srv.world    | internal | enabled | up    | 2023-04-17T02:29:52.000000 |
| 9fc2c275-0112-4f8b-b983-e9fc9f89cb5b | nova-compute   | dlp.srv.world    | nova     | enabled | up    | 2023-04-17T02:29:49.000000 |
| 8206cb4b-46c5-45ad-b53e-6264f99a857c | nova-compute   | node01.srv.world | nova     | enabled | up    | 2023-04-17T02:29:54.000000 |
+--------------------------------------+----------------+------------------+----------+---------+-------+----------------------------+
関連コンテンツ