openstack-armada-app/stx-openstack-helm-fluxcd
marantes 785cfbb4f0 Changing Nova compute pod IP acquisition
This task aims to change the IP acquisition method for Nova compute
pods from the Nova plugin to a new environment variable that maps to
the status.hostIP field. The environment variable-based approach will
provide the cluster host IP address to the Nova compute container.

With the goal of assisting in the task of deploying Nova compute with
fewer daemonsets, grouping hosts with identical configurations, and
consequently making the solution more scalable, this implementation
removes the responsibility from the plugin of setting the IP
information, since doing so would prevent the grouping of the override
configurations due to having different values for each compute host.
Using the environment variable-based approach, the IP change will occur
inside the container just before executing the nova-compute command.

Since this task aims to set the IP inside the container and the Nova
configuration file located at /etc/nova is read-only, a new Nova
configuration file has been created, which is located inside the
compute container at /tmp/pod-shared, a similar approach of using this
path is already followed by other Nova configuration files
(nova-console.conf, nova-hypervisor.conf and nova-libvirt.conf). The
difference between the two nova.conf files is only the IPs in fields
my_ip, server_listen, server_proxyclient_address and
live_migration_inbound_addr, which will contain the cluster host IP
configured in the new environment variable in the new one.

TEST PLAN:
    PASS: build-pkg -c -l openstack
    PASS: build openstack tarball
    PASS: upload and apply openstack tarball on standard system
    PASS: nova-compute pod is running
    PASS: CLUSTER_HOST_IP environment variable created with
          .status.hostIP value
    PASS: /tmp/pod-shared/nova.conf has the same configuration of
          /etc/nova/nova.conf, with the only difference being that the
          fields:
                  DEFAULT.my_ip
                  vnc.server_listen
                  vnc.server_proxyclient_address and
                  libvirt.live_migration_inbound_addr
          are updated with the IP from the new environment variable
    PASS: launch a guest instance (tis-centos-guest VM)

Story: 2011304
Task: 51517

Change-Id: I19792f4c15bc9adddc7e45c2d600ddeb1b3ec420
Signed-off-by: marantes <murillo.arantes@windriver.com>
2025-01-08 11:31:32 -03:00
..
debian Upversion base openstack-helm-infra (6b6ca9e2) 2023-07-24 14:30:11 -03:00
stx-openstack-helm-fluxcd Changing Nova compute pod IP acquisition 2025-01-08 11:31:32 -03:00