Yoga, AlmaLinux9


This guide explains how to add a new compute node 


In the following instructions the node cld-np-19, an INFN node, is the one to be added

Step-by-step guide


  • Install the operating system using foreman. For this use the hosts_all foreman hostgroup
  • Disable SELinux
  • Configure the management and data network
  • Stop puppet:
systemctl stop puppet
  • In foreman move the host under the ComputeNode-Prod_Yoga  hostgroup
  • Run puppet manually:

    puppet agent -t
    
    If the configuration fails reporting


error: "net.bridge.bridge-nf-call-ip6tables" is an unknown key  
error: "net.bridge.bridge-nf-call-iptables" is an unknown key  
error: "net.bridge.bridge-nf-call-arptables" is an unknown key


then please issue:


modprobe br_netfilter

and then rerun puppet

In the configuration fails reporting a problem because of a wrong dependency required by swtpm, then issue:

mv /etc/yum.repos.d/advanced-virtualization.repo /etc/yum.repos.d/advanced-virtualization.repo.old
yum install centos-release-advanced-virtualization


and then rerun puppet

  • Disable the compute node so that it doesn't accept new VMs:

    openstack compute service set --disable cld-np-19.cloud.pd.infn.it nova-compute
  • Start and enable puppet:

    systemctl start puppet; systemctl enable puppet


  • reboot the host

  • reboot


  • and check the services
  • systemctl status openstack-nova-compute
    systemctl status neutron-openvswitch-agent


  • Add the host to the 'admin' aggregate 
    • this is necessary to enable the "VM Network"
      • the host has to belong to at least any Host Aggregate (HA)
      • WARNING: if the host belongs to more then one HA,  there could be problems with the scheduling. Please check HostAggregates howto


nova aggregate-add-host admin cld-nl-25.cloud.pd.infn.it


  • Enable the checks in Nagios for this host

  • Wait till all checks are ok (in particular the VM network and volume one: remember to enable the node just for the time to force the run from Nagios; othwerwise the check will fail.)

  • Add this node in the following scripts on cld-ctrl-01: /usr/local/bin/display_usage_of_hypervisors.sh,,  /usr/local/bin/free_resources_compute_nodes.sh


If and only if this node will have to be used by all INFN/Unipd projects do the following operations on the controllers:

  • Stop puppet on the 2 controller nodes:

    systemctl stop puppet
  • Add the new compute node in cld-config:/var/puppet/puppet_caracal/controller_caracal/templates/aai_settings.py.erb

  • Run puppet on the first controller node (this will trigger a restart of httpd):

    puppet agent -t
  • Run puppet on the second controller node (this will trigger a restart of httpd):

    puppet agent -t
    
  • Start puppet on the two controller nodes:

    systemctl start puppet 
    


  • Enable the host:

    openstack compute service set --enable cld-np-19.cloud.pd.infn.it nova-compute
    

If this host has to be used by all existing INFN/Unipd projects,  run the aggregate_manage.sh script to add the node in the relevant hostgroups, e.g.:

/usr/local/bin/aggregate_manage.sh add cld-np-19.cloud.pd.infn.it INFN