Ubuntu 22.04
Sponsored Link

OpenStack Yoga : Add Compute Nodes
2022/04/30
 
Add Compute Nodes to run more instances.
This example is based on the environment like follows.
------------+-----------------------------+------------
            |                             |
        eth0|10.0.0.30                eth0|10.0.0.51
+-----------+-----------+     +-----------+-----------+
|   [ dlp.srv.world ]   |     |  [ node01.srv.world ] |
|     (Control Node)    |     |     (Compute Node)    |
|                       |     |                       |
|  MariaDB    RabbitMQ  |     |        Libvirt        |
|  Memcached  httpd     |     |      Nova Compute     |
|  Keystone   Glance    |     |                       |
|  Nova API             |     |                       |
+-----------------------+     +-----------------------+

[1]
Install KVM Hypervisor on Compute Node, refer to here.
It's unnecessarry to set Bridge networking on the section [2] of the link.
[2] Install Nova-Compute.
root@node01:~#
apt -y install nova-compute nova-compute-kvm qemu-system-data
[3] Configure Nova.
root@node01:~#
mv /etc/nova/nova.conf /etc/nova/nova.conf.org

root@node01:~#
vi /etc/nova/nova.conf
# create new

[DEFAULT]
state_path = /var/lib/nova
enabled_apis = osapi_compute,metadata
log_dir = /var/log/nova
# RabbitMQ connection info
transport_url = rabbit://openstack:password@dlp.srv.world

[api]
auth_strategy = keystone

[vnc]
enabled = True
# IP address compute instances listen
# specify this node's 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 connection info
[glance]
api_servers = https://dlp.srv.world:9292

[oslo_concurrency]
lock_path = $state_path/tmp

# Keystone auth info
[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
# if using self-signed certs on Apache2 Keystone, turn to [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
# if using self-signed certs on Apache2 Keystone, turn to [true]
insecure = false

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

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

root@node01:~#
chgrp nova /etc/nova/nova.conf

root@node01:~#
systemctl restart nova-compute
[4] Confirm the status of Nova services on Controle Node. If all State is [up], they are running normally.
# discover Compute Nodes

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                 |
+--------------------------------------+----------------+------------------+----------+---------+-------+----------------------------+
| 65429d28-6313-4f6c-a733-0b8426d6d5dd | nova-scheduler | dlp.srv.world    | internal | enabled | up    | 2022-04-29T13:25:12.000000 |
| d1f20c3a-ea4a-4d1e-a3ab-276dc80319bf | nova-conductor | dlp.srv.world    | internal | enabled | up    | 2022-04-29T13:25:12.000000 |
| 3ca3eb17-726b-4133-b3a5-619079e5fa86 | nova-compute   | dlp.srv.world    | nova     | enabled | up    | 2022-04-29T13:25:12.000000 |
| 916f46d4-f916-4514-8d8d-35c62a8f723e | nova-compute   | node01.srv.world | nova     | enabled | up    | 2022-04-29T13:25:11.000000 |
+--------------------------------------+----------------+------------------+----------+---------+-------+----------------------------+
Matched Content