From 45ea2cb5bb369c0ca6d99a6642f6767be69719bd Mon Sep 17 00:00:00 2001 From: Clark Boylan Date: Mon, 17 Mar 2025 08:55:53 -0700 Subject: [PATCH] Deploy nb05 and nb06 Noble nodepool builders This adds two new Noble nodepool builders to our inventory. When we deploy these two servers we will shutdown services on nb01 and nb02 and put those older servers in the emergency file to force the new Noble nodes to build images. This should give us a safe way to rollforward onto the new platform and catch any problems. Depends-On: https://review.opendev.org/c/opendev/zone-opendev.org/+/944794 Change-Id: Icbb48404ff11a1c887a0184fc60ae2ff6f7a3409 --- doc/source/nodepool.rst | 2 ++ hiera/common.yaml | 2 ++ inventory/base/hosts.yaml | 22 +++++++++++++++++++ .../service/host_vars/nb05.opendev.org.yaml | 4 ++++ .../service/host_vars/nb06.opendev.org.yaml | 4 ++++ .../handlers/main.yaml | 9 +++++--- testinfra/test_nodepool.py | 12 +++++----- zuul.d/system-config-run.yaml | 6 ++--- 8 files changed, 49 insertions(+), 12 deletions(-) create mode 100644 inventory/service/host_vars/nb05.opendev.org.yaml create mode 100644 inventory/service/host_vars/nb06.opendev.org.yaml diff --git a/doc/source/nodepool.rst b/doc/source/nodepool.rst index d9ce38c7c9..15542173b3 100644 --- a/doc/source/nodepool.rst +++ b/doc/source/nodepool.rst @@ -20,6 +20,8 @@ At a Glance * nb02.opendev.org * nb03.opendev.org * nb04.opendev.org + * nb05.opendev.org + * nb06.opendev.org * zk04.opendev.org * zk05.opendev.org * zk06.opendev.org diff --git a/hiera/common.yaml b/hiera/common.yaml index 9836774c6d..bc64d44381 100644 --- a/hiera/common.yaml +++ b/hiera/common.yaml @@ -34,6 +34,8 @@ cacti_hosts: - nb01.opendev.org - nb02.opendev.org - nb04.opendev.org +- nb05.opendev.org +- nb06.opendev.org - nl01.opendev.org - nl02.opendev.org - nl03.opendev.org diff --git a/inventory/base/hosts.yaml b/inventory/base/hosts.yaml index 7e8fdad185..6f004397f3 100644 --- a/inventory/base/hosts.yaml +++ b/inventory/base/hosts.yaml @@ -501,6 +501,28 @@ all: - 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDSmH8Z7z8ejDVJzOfF68tXI6Im37qH+5gGQtg7xwcYxNMDco/jYZ1SyfVvJGiAmFp1OFG2ZVIqtFuzOJOwLN6dbA5t+IEC6a4dMXlawMQNPrAyISvE6eIU1CNYzU1tbBmDh+1WWB4K8tC7zEXJPc12GbHB7syvJq5MoFLH3qNNqUF6P2ls4NwFzo/TonEWOk8ajtgAWurKtUd9TCiAiKPy5irpRNRJQYTT7ZD+g4Z+LMRCkJF+UxOM0ubxh7OufPRS9ZflPZmC8BqaJazRkVS/Dtv+zJn9tYFnZ4w9C1sfxiMTjDHmrpbRfCYRx3Q+l4+2KRYRn9RGDClZttugpRqw0IEXkqyOTUChNsjpgw1HDv3U3U4f2NT4e+2EOXLehfC/lROZ1Ck0w1vg+7YPko8kkpXXmF5wUPXHlSJr6zvFNUByFSBC5x9NCz76dMPDXYkyMi/kN/58B8CPcBObiRmjOQz3qVfpyLNiQDZqxPlVOlDt+pPjwDnB5OCrNdTDre0=' - 'ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBHApRdup9wYJyWmY/38+yweY6IQecA4XHSpdy6A+diuYyNtPXb+pKOd7yIJa0k2yqr7xZZb07JSZTIFELZ1vxIQ=' - 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILVJQlsfOLQFGtjvLWv1QPgNuDC9r3maCBmr9IwU3QFm' + nb05.opendev.org: + ansible_host: 104.130.253.28 + location: + cloud: openstackci-rax + region_name: DFW + public_v4: 104.130.253.28 + public_v6: 2001:4800:7818:103:be76:4eff:fe04:7ea + host_keys: + - 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCWZ4A+LQpJ/10DixiuD6pgDX3ZfRe95IFcy7nzIfb7quJsT3tbBOM0BEN89cH10fkJe0f1w0aAdIZsMvx4UVJ5EGNL0Nll5sPJ/GqzSHhowWjsHolOFpGpE3tZ5gJ21bOcjI9mE1fG9UAfh0Y6CAZSkBv03W+un1CbTO7VmYJ1d7AHBNIngsuhrxM+/Xo0tmKXmhrHXppDRJA9mTF6xrjBOQn6n0xuc8cGSQmlCXis8/5ov2XJ9z1bpwJxlJWjwrVPLdUNOdy7atCSkVTJ8RqAc1Ko4aI+hyFpcLrDG0h7e84zt/4/2o56dowpsSWMZvjWEU7cihqoJnAKyyCVPzoxQsWUNafDhxPH3cyxVuSHeEdBALbGTr9T3f48nHDcFNsqEPJkjK8GosF1rgGY736ZEVj18fZfYsw4HJktqnIck2FMT67iX52hKcWJma25j9u2n8AOuK4qRGF34mf60TzDngpxdHinuhY7E0pywskanFakKpV5PWJpiHEEGxK2fGE=' + - 'ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJamsRcPR9nxg1qPqjZn6DLHkMVmBmj9QiyAqUi+aoFt2Vv1n811ulMHKZb8WaAgzXLDLkqyXLU3Rs/wTioA6J8=' + - 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIA/BThVy6Ji6Hg9gdTA8EWILrgrOkk3g/yN4l3EqZMuV' + nb06.opendev.org: + ansible_host: 104.130.127.175 + location: + cloud: openstackci-rax + region_name: DFW + public_v4: 104.130.127.175 + public_v6: 2001:4800:7818:104:be76:4eff:fe04:4115 + host_keys: + - 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDKvg+5aeKi42FOWmpqLwU9Qq6w1grGRiTcLsKfz+1UswPX7ocj5ExKZyx3sr9O7Pu2hqar9u1s3GQ+bVLVJW3L6NyoGsAr/g6It4QkUOo2P2X7f36Kc4aKQLwWqoRv7Sb7t/4RWo+sDYm38Wacv7ITz3VbF4cUDEdh/Gj9NC9BVdTgXT9GhGRJJeDSw6s+U9V4dY350VY0QmcQ2spwpRe7BZYS8Uc1r5BYHP0PnG5h1+FEt9edvvd8sVe92OVaUV0e3GZ5JfoAB1KlPt4iuszRh5E7YWPpI5P9hO5l8I0CcaX1W4q2UuvJGuOCU9ZoOI4xhUzuY2x3BzVrqhJDyLNDL5BraZrGZAEMpW758hzCnTnDZ/i+5yucglm4O3EJUSeVI0AQIxfy/sySLOaGHPop2bnXj0qbCFC/NA8ixUAjrL2wQx+728rkxVPpvSGY2cPDLVM6t4HxAc2m92EKunCdXal/B65bqdPLjX4z+QrnwBd4v7lumon2phOVg2g9ueU=' + - 'ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBInRkNCTHCYNqrXeBxkw7Xo1JAsESbMHTpBH8iMSOMAZHL+Bwe4ya7Q1VO4ks1Ej02nsHqzB0F7tzWQzrorwyH0=' + - 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGO/ynjygOoVBxSOTdjbNi/s6gMIclQVgBrNjJZrYtg/' nl01.opendev.org: ansible_host: 104.239.144.109 location: diff --git a/inventory/service/host_vars/nb05.opendev.org.yaml b/inventory/service/host_vars/nb05.opendev.org.yaml new file mode 100644 index 0000000000..670da6ac5b --- /dev/null +++ b/inventory/service/host_vars/nb05.opendev.org.yaml @@ -0,0 +1,4 @@ +letsencrypt_certs: + nb05-opendev-org-main: + - nb05.opendev.org + diff --git a/inventory/service/host_vars/nb06.opendev.org.yaml b/inventory/service/host_vars/nb06.opendev.org.yaml new file mode 100644 index 0000000000..f542dbf340 --- /dev/null +++ b/inventory/service/host_vars/nb06.opendev.org.yaml @@ -0,0 +1,4 @@ +letsencrypt_certs: + nb06-opendev-org-main: + - nb06.opendev.org + diff --git a/playbooks/roles/letsencrypt-create-certs/handlers/main.yaml b/playbooks/roles/letsencrypt-create-certs/handlers/main.yaml index b1c03ae83c..f6b4686191 100644 --- a/playbooks/roles/letsencrypt-create-certs/handlers/main.yaml +++ b/playbooks/roles/letsencrypt-create-certs/handlers/main.yaml @@ -169,6 +169,12 @@ - name: letsencrypt updated nb04-opendev-org-main include_tasks: roles/letsencrypt-create-certs/handlers/restart_apache.yaml +- name: letsencrypt updated nb05-opendev-org-main + include_tasks: roles/letsencrypt-create-certs/handlers/restart_apache.yaml + +- name: letsencrypt updated nb06-opendev-org-main + include_tasks: roles/letsencrypt-create-certs/handlers/restart_apache.yaml + # paste - name: letsencrypt updated paste-opendev-org-main @@ -249,9 +255,6 @@ - name: letsencrypt updated gitea99-main include_tasks: roles/letsencrypt-create-certs/handlers/restart_gitea.yaml -- name: letsencrypt updated nb01-test-main - include_tasks: roles/letsencrypt-create-certs/handlers/restart_apache.yaml - - name: letsencrypt updated etherpad-opendev-org-main include_tasks: roles/letsencrypt-create-certs/handlers/restart_apache.yaml diff --git a/testinfra/test_nodepool.py b/testinfra/test_nodepool.py index 74b754967e..4a5fa02bde 100644 --- a/testinfra/test_nodepool.py +++ b/testinfra/test_nodepool.py @@ -14,7 +14,7 @@ import pytest -testinfra_hosts = ['nl01.opendev.org', 'nb01.opendev.org'] +testinfra_hosts = ['nl01.opendev.org', 'nb05.opendev.org'] def test_clouds_yaml(host): @@ -40,20 +40,20 @@ def test_launcher_container_running(host): assert 'nodepool-docker_nodepool-launcher_1' in cmd.stdout def test_builder_container_running(host): - if host.backend.get_hostname() != 'nb01.opendev.org': + if host.backend.get_hostname() != 'nb05.opendev.org': pytest.skip() cmd = host.run("docker ps -a --format '{{ .Names }}'") - assert 'nodepool-builder-compose_nodepool-builder_1' in cmd.stdout + assert 'nodepool-builder-compose-nodepool-builder-1' in cmd.stdout def test_builder_webserver_running(host): - if host.backend.get_hostname() != 'nb01.opendev.org': + if host.backend.get_hostname() != 'nb05.opendev.org': pytest.skip() apache = host.service('apache2') assert apache.is_running cmd = host.run('curl --insecure ' - '--resolve nb01.opendev.org:443:127.0.0.1 ' - 'https://nb01.opendev.org/') + '--resolve nb05.opendev.org:443:127.0.0.1 ' + 'https://nb05.opendev.org/') assert 'Index of /' in cmd.stdout diff --git a/zuul.d/system-config-run.yaml b/zuul.d/system-config-run.yaml index cfba552c29..a721e16b70 100644 --- a/zuul.d/system-config-run.yaml +++ b/zuul.d/system-config-run.yaml @@ -337,8 +337,8 @@ label: ubuntu-focal - name: nl01.opendev.org label: ubuntu-focal - - name: nb01.opendev.org - label: ubuntu-focal + - name: nb05.opendev.org + label: ubuntu-noble groups: - <<: *bastion_group required-projects: @@ -349,7 +349,7 @@ host_copy_output: '/etc/nodepool/nodepool.yaml': logs '/var/log/nodepool/launcher-debug.log': logs - nb01.opendev.org: + nb05.opendev.org: host_copy_output: '/etc/nodepool/nodepool.yaml': logs '/var/log/nodepool/builder-debug.log': logs