Its been 4 weeks now we have started deploying RHOSP16.1,the latest version of Red Hat Openstack. Through this blog I would like to describe some of the experience we gained. This article might provide the audience with additional insights and tips that will help to succeed. We are building private cloud for “PoC” , for support deployment & engineering team and document best practices for RHOSP 16.1 deployment gained through our experience. We are maintaining the version for the entire set of documents as we expedite our deployment in parts.
This article covers Undercloud deployment and Overcloud deployment. Subsequently I will cover VNF onboarding (spinning telecom VNF’s/ VM’s),deployment of RHOSP virtual controller on Red Hat Enterprise Virtualization (RHEV),please also check out those blogs.
Drop me a line if you have any queries or need any further information.
We have servers from 3 vendors HP DL380, Dell R630 and QCT. All the servers used here supports BMC/IPMI module, use IPMI in heterogenous environment. A word of caution at the beginning is that all the Overcloud servers should belong to the same vendor and model in order to have the same NIC names conventions and order of their appearance in the OS. In our case we are deploying RHOSP 16.1 in the heterogeneous environment. It is a good idea to refer the hardware documentation or call the vendor TAC for identifying the interface convention for.
- Ensure you have the Red Hat account with required privilege’s to download the packages required for openstack.
- Plan your undercloud director installation which includes disk space subnets, host naming convention, interface configuration.
- Connect all the servers as per the plan, enable port configuration on the switches and enable appropriate routing.
I am running undercloud director and a DNS server on separate VM’s. DNS server configuration file and the router configuration details are available at the end of this blog.
The functions of undercloud are as below:
- The Undercloud will discover the bare-metal servers, DELL/HP/Quanta in my case, on which the deployment of Openstack Platform will be deployed
- Undercloud acts as a deployment manager for the software to be deployed on the nodes ,post installation Undercloud can even be made offline.
- Based on the YAML/JSON data files network topology and configuration for the deployment is defined
- Software updates and configurations to the deployed nodes is done via Undercloud
Before you start the installation ensure that you have created correct VLANS, configured routing& switching, properly connected the ethernet cables to switch port and verify the layer 2 and layer 3 connectivity. I have enabled LLDP protocol on the switch which exchanges messages with the Openstack; and the discovered nodes can be seen on router and the nodes with respective commands mentioned in the blog.
In my set up I have used the following subnets.
Subnet |
Network type |
VLAN ID |
10.205.6.0/24 |
Internal API |
206 |
10.205.7.0/24 |
Tenant Network |
207 |
10.205.8.0/24 |
External |
208 |
10.200.11.0 |
Management & ILO |
1 |
- Undercloud interface ip is not a management ip address and it belongs to CTL PLANE subnet.Double check your IP plan.
- SELINUX must be in default enforcing state and firewall disabled.
- It is a good idea that you allocate around 250 gb space and ensure /var has sufficient space, else validation will fail.
- Allocate sufficient ip address range in DHCP pool and introspection pool, while preparing the undercloud.conf configuration file. Verification may fail if the pool is small, typically 20 ip addresses in the pool is desirable.
instackenv.json – Node import file
{
"nodes": [{
"name": "controller1",
"mac": [
"40:a8:f0:22:e5:1e"
],
"arch": "x86_64",
"pm_type": "pxe_ipmitool",
"pm_user": "ranjeetbadhe",
"pm_password": "Ranjeet@123",
"pm_addr": "10.200.10.14",
"capabilities": "profile:control,boot_option:local"
},
{
"name": "compute1",
"mac": [
"d8:c4:97:8a:62:b7"
],
"arch": "x86_64",
"pm_type": "pxe_ipmitool",
"pm_user": "ranjeetbadhe",
"pm_password": "Ranjeet@123",
"pm_addr": "10.200.10.31",
"capabilities": "profile:compute,boot_option:local"
}
Check the hostname and FQDN. The domain name should be conflicting with pervious deployments.
[root@undercloud ~]# hostname
undercloud.itchundredlab.com
[root@undercloud ~]# hostname -f
undercloud.itchundredlab.com
Host file before deployment. Also find Host file post deployment to check how Ansible augments the host file.
[root@undercloud ~]# cat /etc/hosts
[stack@undercloud ~]$ sudo cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
10.205.1.7 undercloud.itchundredlab.com undercloud
[root@undercloud ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
devtmpfs 31G 0 31G 0% /dev
tmpfs 31G 0 31G 0% /dev/shm
tmpfs tmpfs 31G 9.4M 31G 1% /run
tmpfs tmpfs 31G 0 31G 0% /sys/fs/cgroup
/dev/mapper/rhel-root xfs 150G 5.0G 146G 4% /
/dev/mapper/rhel-var xfs 25G 396M 25G 2% /var
/dev/vda1 xfs 2.0G 237M 1.8G 12% /boot
tmpfs tmpfs 6.2G 1.2M 6.2G 1% /run/user/42
tmpfs tmpfs 6.2G 4.0K 6.2G 1% /run/user/0
Create stack user and folders for images and templates
[root@undercloud ~]# echo "stack ALL=(root) NOPASSWD:ALL" | tee -a /etc/sudoers.d/stack
stack ALL=(root) NOPASSWD:ALL
[root@undercloud ~]# chmod 0440 /etc/sudoers.d/stack
[root@undercloud ~]# su - stack
[stack@undercloud ~]$
[stack@undercloud ~]$
[stack@undercloud ~]$ mkdir ~/images
[stack@undercloud ~]$ mkdir ~/templates
Register the system with the Red Hat for package downloads
[stack@undercloud ~]$ sudo subscription-manager register
Registering to: subscription.rhsm.redhat.com:443/subscription
Username: ranjeet_badhe_stack
Password: XXXXXXXXXX
The system has been registered with ID: a85f99f7a7d65ce017zzzzzzzz
The registered system name is: undercloud.itchundredlab.com
[stack@undercloud ~]$ sudo subscription-manager list --available --all --matches="Red Hat OpenStack"
Red Hat OpenStack
Red Hat Enterprise Linux Atomic Host
Red Hat OpenStack for IBM Power
Red Hat Enterprise Linux for Real Time for NFV
Red Hat Software Collections Beta (for RHEL Server)
Red Hat Enterprise Linux Server
Red Hat Enterprise Linux for x86_64 - Extended Update Support
SKU: SER0505
Contract: 12725478
Pool ID: 8a85f99f7a7d65ce017zzzzzzzz
Provides Management: No
Available: 24
Suggested: 1
Service Type: L1-L3
Roles:
Service Level: Standard
Usage:
Add-ons:
Subscription Type: Standard
Starts: Wednesday 30 June 2021
Ends: Thursday 30 June 2022
Entitlement Type: Physical
Subscription Name: Red Hat OpenStack Platform, Standard Support (4 Sockets, NFR, Partner Only)
Provides: Red Hat Enterprise Linux FDIO Early Access (RHEL 7 Server)
Red Hat Ansible Engine
Red Hat OpenStack Certification Test Suite
Red Hat CodeReady Linux Builder for Power, little endian
Red Hat Enterprise Linux Fast Datapath
Red Hat CloudForms
Red Hat Software Collections Beta (for RHEL Server for IBM Power LE)
Red Hat Enterprise Linux Advanced Virtualization Beta
Red Hat Beta
Red Hat Enterprise Linux Fast Datapath (for RHEL Server for IBM Power LE)
dotNET on RHEL (for RHEL Server)
Red Hat Certification (for RHEL Server)
Red Hat CodeReady Linux Builder for x86_64 - Extended Update Support
Red Hat Ceph Storage Calamari
Red Hat Developer Tools (for RHEL Server for IBM Power LE)
Red Hat OpenStack Beta Certification Test Suite
Red Hat Enterprise Linux High Availability (for IBM Power LE) - Extended Update Support
Red Hat OpenStack Beta for IBM Power LE
Red Hat Enterprise Linux Fast Datapath Beta for Power, little endian
Red Hat Software Collections (for RHEL Server)
Red Hat Enterprise Linux for Power, little endian - Extended Update Support
Red Hat Enterprise Linux for Power, little endian
Red Hat Developer Tools (for RHEL Server for IBM Power 9)
Red Hat Enterprise Linux Server (for IBM Power LE) - Update Services for SAP Solutions
Red Hat Enterprise Linux for Power 9
Red Hat Enterprise Linux Fast Datapath Beta for x86_64
Red Hat Enterprise MRG Messaging
Power 9)
Red Hat OpenStack
Red Hat Enterprise Linux Atomic Host
Red Hat OpenStack for IBM Power
Red Hat Enterprise Linux for Real Time for NFV
Red Hat Software Collections Beta (for RHEL Server)
Red Hat Enterprise Linux Server
Red Hat Enterprise Linux for x86_64 - Extended Update Support
SKU: SER0505
Contract: 12725478
Pool ID: 8a85f99f7a7d65ce017zzzzzzzz
Provides Management: No
Available: Unlimited
Suggested: 1
Service Type: L1-L3
Roles:
Service Level: Standard
Usage:
Add-ons:
Subscription Type: Standard
Starts: Wednesday 30 June 2021
Ends: Thursday 30 June 2022
Entitlement Type: Virtual
Attach the subscription pool
[stack@undercloud ~]$ sudo subscription-manager attach --pool=8a85f99f7a7d65ce017zzzzzzzz
Successfully attached a subscription for: Red Hat OpenStack Platform, Standard Support (4 Sockets, NFR, Partner Only)
[stack@undercloud ~]$ sudo subscription-manager release --set=8.2
Release set to: 8.2
[stack@undercloud ~]$ sudo subscription-manager repos --disable=*
Repository 'rhel-8-for-x86_64-nfv-debug-rpms' is disabled for this system.
Repository 'satellite-tools-6.9-for-rhel-8-x86_64-eus-rpms' is disabled for this system.
Repository 'rhv-4-tools-for-rhel-8-x86_64-source-rpms' is disabled for this system.
Repository 'rh-sso-7.4-for-rhel-8-x86_64-rpms' is disabled for this system.
Repository 'satellite-tools-6.6-for-rhel-8-x86_64-eus-debug-rpms' is disabled for this system.
Repository 'rhel-8-for-x86_64-supplementary-debug-rpms' is disabled for this system.
Repository 'rhv-4-tools-beta-for-rhel-8-x86_64-rpms' is disabled for this system.
Repository 'rhel-8-for-x86_64-baseos-eus-debug-rpms' is disabled for this system.
Repository 'ansible-2.9-for-rhel-8-x86_64-debug-rpms' is disabled for this system.
Repository 'satellite-tools-6.5-for-rhel-8-x86_64-eus-debug-rpms' is disabled for this system.
Repository 'codeready-builder-for-rhel-8-x86_64-eus-debug-rpms' is disabled for this system.
Repository 'openstack-16.1-for-rhel-8-x86_64-rpms' is disabled for this system
[stack@undercloud ~]$ sudo subscription-manager repos --enable=rhel-8-for-x86_64-baseos-eus-rpms --enable=rhel-8-for-x86_64-appstream-e us-rpms --enable=rhel-8-for-x86_64-highavailability-eus-rpms --enable=ansible-2.9-for-rhel-8-x86_64-rpms --enable=openstack-16.1-for-rhel -8-x86_64-rpms --enable=fast-datapath-for-rhel-8-x86_64-rpms --enable=advanced-virt-for-rhel-8-x86_64-rpms --enable=rhceph-4-tools-for-rh el-8-x86_64-rpms
Repository 'rhel-8-for-x86_64-baseos-eus-rpms' is enabled for this system.
Repository 'rhel-8-for-x86_64-appstream-eus-rpms' is enabled for this system.
Repository 'rhel-8-for-x86_64-highavailability-eus-rpms' is enabled for this system.
Repository 'ansible-2.9-for-rhel-8-x86_64-rpms' is enabled for this system.
Repository 'openstack-16.1-for-rhel-8-x86_64-rpms' is enabled for this system.
Repository 'fast-datapath-for-rhel-8-x86_64-rpms' is enabled for this system.
Repository 'advanced-virt-for-rhel-8-x86_64-rpms' is enabled for this system.
Repository 'rhceph-4-tools-for-rhel-8-x86_64-rpms' is enabled for this system.
Update the system.
[stack@undercloud ~]$ sudo dnf update -y
Updating Subscription Management repositories.
Red Hat Enterprise Linux 8 for x86_64 - AppStream - Extended Update Support (RPMs) 1.7 MB/s | 21 MB 00:12
Red Hat Ansible Engine 2.9 for RHEL 8 x86_64 (RPMs) 180 kB/s | 1.9 MB 00:10
Advanced Virtualization for RHEL 8 x86_64 (RPMs) 119 kB/s | 1.2 MB 00:10
Red Hat Ceph Storage Tools 4 for RHEL 8 x86_64 (RPMs) 29 kB/s | 308 kB 00:10
Red Hat Enterprise Linux 8 for x86_64 - BaseOS - Extended Update Support (RPMs)
rhel-8-for-x86_64-appstream-eus-rpms 259 k
Transaction Summary
=========================================================================================================================================
Install 5 Packages
Upgrade 208 Packages
Total download size: 434 M
Downloading Packages:
(1/213): lttng-ust-2.8.1-11.el8.x86_64.rpm 47 kB/s | 259 kB 00:05
(2/213): grub2-tools-efi-2.02-87.el8_2.3.x86_64.rpm 83 kB/s | 470 kB 00:05
(3/213): kernel-4.18.0-193.60.2.el8_2.x86_64.rpm
Installed:
grub2-tools-efi-1:2.02-87.el8_2.3.x86_64 kernel-4.18.0-193.60.2.el8_2.x86_64 kernel-core-4.18.0-193.60.2.el8_2.x86_64
kernel-modules-4.18.0-193.60.2.el8_2.x86_64 lttng-ust-2.8.1-11.el8.x86_64
Complete!
Reboot the system
[stack@undercloud ~]$ sudo reboot
[root@undercloud ~]# cd /sys/class/net/
[root@undercloud net]# ls
ens3 ens4 ens5 ens5.206 ens5.207 ens5.208 ens5.209 lo virbr0 virbr0-nic
Install the tripleoclient
[stack@undercloud ~]$ sudo dnf install -y python3-tripleoclient
Updating Subscription Management repositories.
/usr/lib/python3.6/site-packages/dateutil/parser/_parser.py:70: UnicodeWarning: decode() called on unicode string, see https://bugzilla.r edhat.com/show_bug.cgi?id=1693751
instream = instream.decode()
Last metadata expiration check: 0:10:17 ago on Tuesday 31 August 2021 02:20:18 PM IST.
Dependencies resolved.
=========================================================================================================================================
Package Arch Version Repository Size
=========================================================================================================================================
Installing:
python3-tripleoclient noarch 12.3.2-1.20210407123431.ae58329.el8ost openstack-16.1-for-rhel-8-x86_64-rpms 550 k
Installing dependencies:
ansible noarch 2.9.25-1.el8ae ansible-2.9-for-rhel-8-x86_64-rpms 17 M
ansible-config_template noarch 1.1.2-1.20201114014833.ea07ed0.el8ost openstack-16.1-for-rhel-8-x86_64-rpms 29 k
ansible-freeipa noarch 0.1.8-3.el8 rhel-8-for-x86_64-appstream-eus-rpms 182 k
ansible-pacemaker noarch 1.0.4-1.20201114025227.accaf26.el8ost openstack-16.1-for-rhel-8-x86_64-rpms 21 k
ansible-role-atos-hsm noarch 0.1.1-0.20200318203421.1269408.el8ost openstack-16.1-for-rhel-8-x86_64-rpms 17 k
ansible-role-chrony noarch 1.0.2-1.20201113192301.03e7fbe.el8ost openstack-16.1-for-rhel-8-x86_64-rpms 20 k
ansible-role-container-registry noarch 1.2.0-1.20201113192748.7eca2dd.el8ost openstack-16.1-for-rhel-8-x86_64-rpms 24 k
ansible-role-lunasa-hsm noarch 1.0.0-1.20210315120131.1f79d94.el8ost
rubygems-2.7.6.2-105.module+el8.1.0+3656+f80bfa1d.noarch
skopeo-1:0.1.40-11.module+el8.2.0+6374+67f43e89.x86_64
sshpass-1.06-3.el8ae.x86_64
tripleo-ansible-0.5.1-1.20210323173507.el8ost.noarch
validations-common-1.1.2-1.20210326153615.7f3c565.el8ost.noarch
yaml-cpp-0.6.1-8.el8ost.x86_64
Complete!
Generate the containers-prepare-parameter file.
[stack@undercloud ~]$ openstack tripleo container image prepare default \
> --local-push-destination \
> --output-env-file containers-prepare-parameter.yaml
# Generated with the following on 2021-08-31T14:36:03.281480
#
# openstack tripleo container image prepare default --local-push-destination --output-env-file containers-prepare-parameter.yaml
#
Generate the Undercloud.conf file and put tour own relevant parameters
[stack@undercloud ~]$ cp \
> /usr/share/python-tripleoclient/undercloud.conf.sample \
> ~/undercloud.conf
[stack@undercloud ~]$ ls
containers-prepare-parameter.yaml images templates undercloud.conf
Undercloud.conf
[stack@undercloud ~]$ cat undercloud.conf
[DEFAULT]
cleanup = true
undercloud_hostname = undercloud.itchundredlab.com
overcloud_domain_name= itchundredlab.com
container_cli = podman
container_healthcheck_disabled = false
container_images_file = /home/stack/containers-prepare-parameter.yaml
enable_ironic = true
enable_ironic_inspector = true
enable_mistral = true
enable_nova = true
enable_tempest = true
enable_validations = true
enable_zaqar = true
generate_service_certificate = true
heat_native = true
inspection_interface = br-ctlplane
#ipxe_enabled = true
local_interface = ens4
local_ip = 10.205.0.7/24
local_mtu = 1500
scheduler_max_attempts = 30
undercloud_enable_paunch = true
undercloud_admin_host = 10.205.0.11
undercloud_public_host = 10.205.0.12
undercloud_timezone = Asia/Kolkata
undercloud_ntp_servers = 10.200.11.251
upgrade_cleanup = false
undercloud_debug = true
undercloud_log_file = install-undercloud.log
masquerade = true
Enable_routed_networks = false
local_subnet = ctlplane-subnet
Subnets = ctlplane-subnet
[ctlplane-subnet]
cidr = 10.205.0.0/24
dhcp_start = 10.205.0.20
dhcp_end = 10.205.0.45
dns_nameservers = 10.200.11.172
gateway = 10.205.0.7
inspection_iprange = 10.205.0.50,10.205.0.75
Masquerade = true
upgrade_cleanup = false
local_ip : This is UC’s Provisioning NIC. This is also the IP address the director uses for its DHCP and PXE boot services
network_gateway : The gateway for the overcloud instances. This is the undercloud host, which forwards traffic to the External network.
undercloud_public_vip : The IP address defined for the director’s Public API. Use an IP address on the Provisioning network that does not conflict with any other IP addresses or address ranges.
undercloud_admin_vip : The IP address defined for the director’s Admin API. Use an IP address on the Provisioning network that does not conflict with any other IP addresses or address ranges.
local_interface : The chosen interface for the director’s Provisioning NIC. This is also the device the director uses for its DHCP and PXE boot services. Change this value to your chosen device.
network_cidr : The network that the director uses to manage overcloud instances. This is the Provisioning network, which the undercloud’s neutron service manages.
masquerade_network : Defines the network that will masquerade for external access. This provides the Provisioning network with a degree of network address translation (NAT) so that it has external access through the director.
dhcp_start; dhcp_end : The start and end of the DHCP allocation range for overcloud nodes. Ensure this range contains enough IP addresses to allocate your nodes.
inspection_iprange : A range of IP address that the director’s introspection service uses during the PXE boot and provisioning process. Use comma-separated values to define the start and end of this range. Make sure this range contains enough IP addresses for your nodes and does not conflict with the range for dhcp_start and dhcp_end.
Containers.Yaml
parameter_defaults:
ContainerImagePrepare:
- push_destination: true
set:
ceph_alertmanager_image: ose-prometheus-alertmanager
ceph_alertmanager_namespace: registry.redhat.io/openshift4
ceph_alertmanager_tag: 4.1
ceph_grafana_image: rhceph-4-dashboard-rhel8
ceph_grafana_namespace: registry.redhat.io/rhceph
ceph_grafana_tag: 4
ceph_image: rhceph-4-rhel8
ceph_namespace: registry.redhat.io/rhceph
ceph_node_exporter_image: ose-prometheus-node-exporter
ceph_node_exporter_namespace: registry.redhat.io/openshift4
ceph_node_exporter_tag: v4.1
ceph_prometheus_image: ose-prometheus
ceph_prometheus_namespace: registry.redhat.io/openshift4
ceph_prometheus_tag: 4.1
ceph_tag: latest
name_prefix: openstack-
name_suffix: ''
namespace: registry.redhat.io/rhosp-rhel8
neutron_driver: ovn
rhel_containers: false
tag: '16.1'
tag_from_label: '{version}-{release}'
## Adding security Credentials, from document
ContainerImageRegistryCredentials:
registry.redhat.io:
ranjeet_badhe_stack: "XXXXXXXXX"
Start the Undercloud installation
[stack@undercloud ~]$ openstack undercloud install
Using /tmp/undercloud-disk-space.yamlrg7qjf47ansible.cfg as config file
[WARNING]: log file at /usr/share/ansible/validation-playbooks/ansible.log is not writeable and we cannot create it, aborting
Success! The validation passed for all hosts:
* undercloud
Running: sudo --preserve-env openstack tripleo deploy --standalone --standalone-role Undercloud --stack undercloud --local-domain=itchund redlab.com --local-ip=10.205.0.7/24
16.86s
tripleo-network-config : Run NetworkConfig script ------------------------------------------------------------------------------- 13.91s
Install artifact is located at /home/stack/undercloud-install-20210831094917.tar.bzip2
Sit back and enjoy , it will take 45 minutes !!!! Patience ……
TASK [Wait for puppet host configuration to finish] *************************************************************************************
Tuesday 31 August 2021 15:01:15 +0530 (0:00:00.533) 0:10:42.800 ********
WAITING FOR COMPLETION: Wait for puppet host configuration to finish (1200 retries left
TASK [Wait for puppet host configuration to finish] *************************************************************************************
Tuesday 31 August 2021 15:01:15 +0530 (0:00:00.533) 0:10:42.800 ********
WAITING FOR COMPLETION: Wait for puppet host configuration to finish (1200 retries left).
TASK [Wait for container-puppet tasks (generate config) to finish] **********************************************************************
Tuesday 31 August 2021 15:03:01 +0530 (0:00:00.532) 0:12:28.854 ********
WAITING FOR COMPLETION: Wait for container-puppet tasks (generate config) to finish (1200 retries left).
WAITING FOR COMPLETION: Wait for container-puppet tasks (generate config) to finish (1199 retries left).
Output truncated for brevity
########################################################
Deployment successful!
########################################################
Writing the stack virtual update mark file /var/lib/tripleo-heat-installer/update_mark_undercloud
Erase is control-H (^H).
##########################################################
The Undercloud has been successfully installed.
Useful files:
Password file is at /home/stack/undercloud-passwords.conf
The stackrc file is at ~/stackrc
Use these files to interact with OpenStack services, and ensure they are secured.
Verify the files
(undercloud) [stack@undercloud ~]$ ls
ansible-errors.json stackrc tripleo-undercloud-passwords.yaml
containers-prepare-parameter.yaml templates undercloud.conf
images tripleo-config-generated-env-files undercloud-install-20210831094917.tar.bzip2
install-undercloud.log tripleo-undercloud-outputs.yaml undercloud-passwords.conf
[stack@undercloud ~]$ systemctl status dnsmasq
● dnsmasq.service - DNS caching server.
Loaded: loaded (/usr/lib/systemd/system/dnsmasq.service; disabled; vendor preset: disabled)
Active: failed (Result: exit-code) since Tue 2021-08-31 15:59:27 IST; 7s ago
Process: 13403 ExecStart=/usr/sbin/dnsmasq -k (code=exited, status=2)
Main PID: 13403 (code=exited, status=2)
Aug 31 15:59:27 undercloud.itchundredlab.com systemd[1]: Started DNS caching server..
Aug 31 15:59:27 undercloud.itchundredlab.com dnsmasq[13403]: dnsmasq: failed to create listening socket for port 53: Address already i>
Aug 31 15:59:27 undercloud.itchundredlab.com dnsmasq[13403]: failed to create listening socket for port 53: Address already in use
Aug 31 15:59:27 undercloud.itchundredlab.com dnsmasq[13403]: FAILED to start up
Aug 31 15:59:27 undercloud.itchundredlab.com systemd[1]: dnsmasq.service: Main process exited, code=exited, status=2/INVALIDARGUMENT
Aug 31 15:59:27 undercloud.itchundredlab.com systemd[1]: dnsmasq.service: Failed with result 'exit-code'.
[stack@undercloud ~]$ systemctl start dnsmasq
[stack@undercloud ~]$ systemctl stop libvirtd
Check the dnsmasq service is listening on the port 53
[stack@undercloud ~]$ netstat -ntlp | grep :53
If the DNS is not listening on 0.0.0.0:53 , go-ahead and kill dnsmasq
[stack@undercloud ~]$ sudo pkill dnsmasq
Check the /etc/resolv.conf entry and make sure the entry of your DNS Server and 8.8.8.8 and Don’t forget to make the you host entry into DNS server
[stack@undercloud ~]$ sudo systemctl status dnsmasq
● dnsmasq.service - DNS caching server.
Loaded: loaded (/usr/lib/systemd/system/dnsmasq.service; disabled; vendor preset: disabled)
Active: active (running) since Tue 2021-08-31 16:03:35 IST; 12s ago
Main PID: 20154 (dnsmasq)
Tasks: 1 (limit: 401173)
Memory: 824.0K
CGroup: /system.slice/dnsmasq.service
└─20154 /usr/sbin/dnsmasq -k
Aug 31 16:03:35 undercloud.itchundredlab.com systemd[1]: Started DNS caching server..
Aug 31 16:03:35 undercloud.itchundredlab.com dnsmasq[20154]: started, version 2.79 cachesize 150
Aug 31 16:03:35 undercloud.itchundredlab.com dnsmasq[20154]: compile time options: IPv6 GNU-getopt DBus no-i18n IDN2 DHCP DHCPv6 no-Lu>
Aug 31 16:03:35 undercloud.itchundredlab.com dnsmasq[20154]: reading /etc/resolv.conf
Aug 31 16:03:35 undercloud.itchundredlab.com dnsmasq[20154]: using nameserver 10.200.11.172#53
Aug 31 16:03:35 undercloud.itchundredlab.com dnsmasq[20154]: using nameserver 8.8.8.8#53
Aug 31 16:03:35 undercloud.itchundredlab.com dnsmasq[20154]: read /etc/hosts - 6 addresses
[stack@undercloud ~]$ sudo ss -tulpn | grep :67
udp UNCONN 0 0 0.0.0.0:67 0.0.0.0:* users:(("dnsmasq",pid=3391,fd=4))
[stack@undercloud ~]$ netstat -ntlp | grep :53
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
tcp 0 0 0.0.0.0:5355 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:53 0.0.0.0:* LISTEN -
tcp6 0 0 :::5355 :::* LISTEN -
tcp6 0 0 :::53 :::* LISTEN -
Import the nodes
[stack@undercloud ~]$ source stackrc
(undercloud) [stack@undercloud ~]$ openstack overcloud node import ~/instackenv.json
Waiting for messages on queue 'tripleo' with no timeout.
2 node(s) successfully moved to the "manageable" state.
Successfully registered node UUID 9167797b-41c0-4b25-a09c-197533fb28db
Successfully registered node UUID 6763c50b-44a1-4fac-bf97-92b59e2e43a4
(undercloud) [stack@undercloud ~]$ openstack baremetal node list
+--------------------------------------+-------------+---------------+-------------+--------------------+-------------+
| UUID | Name | Instance UUID | Power State | Provisioning State | Maintenance |
+--------------------------------------+-------------+---------------+-------------+--------------------+-------------+
| 9167797b-41c0-4b25-a09c-197533fb28db | controller1 | None | power on | manageable | False |
| 6763c50b-44a1-4fac-bf97-92b59e2e43a4 | compute1 | None | power on | manageable | False |
+--------------------------------------+-------------+---------------+-------------+------------------
Perform introspection of nodes
(undercloud) [stack@undercloud ~]$ openstack overcloud node introspect --all-manageable --provide --debug
START with options: overcloud node introspect --all-manageable --provide --debug
options: Namespace(access_token='***', access_token_endpoint='', access_token_type='', aodh_endpoint='', application_credential_id='', application_credential_name='', application_credential_secret='***', auth_methods='', auth_type='password', auth_url='https://10.205.0.12:13000', cacert='/etc/pki/ca-trust/source/anchors/cm-local-ca.pem', cert='', client_id='',
'root_execution_id': '5d58b746-171c-4e29-b4c4-7b3f0de2079b', 'execution_id': 'f9466266-3dcf-4521-b436-a3aba72c7737', 'plan_name': None, 'deployment_status': None}}, 'Message_Type': 'Notification', 'queue_name': 'tripleo'}
2 node(s) successfully moved to the "available" state.
{'ttl': 3600, 'body': {'type': 'tripleo.baremetal.v1.provide_manageable_nodes', 'payload': {'status': 'SUCCESS', 'message': '', 'root_execution_id': None, 'execution_id': '5d58b746-171c-4e29-b4c4-7b3f0de2079b', 'plan_name': None, 'deployment_status': None}}, 'Message_Type': 'Notification', 'queue_name': 'tripleo'}
clean_up IntrospectNode:
Verify the nodes status
(undercloud) [stack@undercloud ~]$ openstack overcloud profiles list
+————————————–+————-+—————–+—————–+——————-+
| Node UUID | Node Name | Provision State | Current Profile | Possible Profiles |
+————————————–+————-+—————–+—————–+——————-+
| 9167797b-41c0-4b25-a09c-197533fb28db | controller1 | available | control | |
| 6763c50b-44a1-4fac-bf97-92b59e2e43a4 | compute1 | available | compute | |
+————————————–+————-+—————–+—————–+————
Set the property
(undercloud) [stack@undercloud ~]$ openstack baremetal node set --property capabilities='profile:control,boot_option:local' 9167797b-41c0-4b25-a09c-197533fb28db
(undercloud) [stack@undercloud ~]$ openstack baremetal node set --property capabilities='profile:compute,boot_option:local' 6763c50b-44a1-4fac-bf97-92b59e2e43a4
(undercloud) [stack@undercloud ~]$ openstack baremetal introspection data save 9167797b-41c0-4b25-a09c-197533fb28db | jq . > /tmp/pp
(undercloud) [stack@undercloud ~]$ openstack baremetal introspection interface list 9167797b-41c0-4b25-a09c-197533fb28db
Check the interfaces introspection details. Note the that Openstack nodes has synced with the Cisco switch using the lldp protocol
(undercloud) [stack@undercloud ~]$ openstack baremetal introspection interface list 9167797b-41c0-4b25-a09c-197533fb28db
+-----------+-------------------+----------------------+-------------------+----------------+
| Interface | MAC Address | Switch Port VLAN IDs | Switch Chassis ID | Switch Port ID |
+-----------+-------------------+----------------------+-------------------+----------------+
| ens2f1 | 90:e2:ba:0b:08:55 | [] | None | None |
| ens3f0 | 14:02:ec:7c:f4:84 | [] | None | None |
| eno3 | 40:a8:f0:22:e5:1e | [] | 64:f6:9d:2a:6c:00 Gi2/0/1 |
| eno1 | 40:a8:f0:22:e5:1c | [] | 64:f6:9d:2a:6c:00 | Gi2/0/11 |
| ens2f0 | 90:e2:ba:0b:08:54 | [] | None | None |
| ens3f1 | 14:02:ec:7c:f4:85 | [] | None | None |
| eno4 | 40:a8:f0:22:e5:1f | [] | 64:f6:9d:2a:6c:00 | Gi2/0/7 |
| eno2 | 40:a8:f0:22:e5:1d | [] | 64:f6:9d:2a:6c:00 | Gi2/0/12 |
+-----------+-------------------+----------------------+-------------------+----------------+
(undercloud) [stack@undercloud ~]$ openstack baremetal introspection interface list 6763c50b-44a1-4fac-bf97-92b59e2e43a4
+-----------+-------------------+----------------------+-------------------+----------------+
| Interface | MAC Address | Switch Port VLAN IDs | Switch Chassis ID | Switch Port ID |
+-----------+-------------------+----------------------+-------------------+----------------+
| ens5f3 | d8:c4:97:8a:62:b8 | [] | None | None |
| ens17f0 | 3c:fd:fe:cb:33:28 | [] | None | None |
| ens5f1 | d8:c4:97:8a:62:b6 | [] | 64:f6:9d:2a:6c:00 | Gi2/0/9 |
| ens50f1 | 3c:fd:fe:cb:2c:21 | [] | None | None |
| ens17f1 | 3c:fd:fe:cb:33:29 | [] | None | None |
| ens5f2 | d8:c4:97:8a:62:b7 | [] | 64:f6:9d:2a:6c:00 | Gi2/0/3 |
| ens5f0 | d8:c4:97:8a:62:b5 | [] | 64:f6:9d:2a:6c:00 | Gi2/0/13 |
| ens50f0 | 3c:fd:fe:cb:2c:20 | [] | None | None |
+-----------+-------------------+----------------------+-------------------+----------------+
Perform the disk binding
(undercloud) [stack@undercloud ~]$ for NODE in `openstack overcloud profiles list | awk 'NR >3 {print $2}'`; do echo $NODE ; openstack baremetal introspection data save $NODE | jq ".inventory.disks" | egrep -A5 "sd" ; done
9167797b-41c0-4b25-a09c-197533fb28db
"name": "/dev/sda",
"model": "LOGICAL VOLUME",
"size": 1200187203584,
"rotational": true,
"wwn": "0x600508b1001c4995",
"serial": "600508b1001c4995174e6411c98de0a3",
6763c50b-44a1-4fac-bf97-92b59e2e43a4
"name": "/dev/sda",
"model": "INTEL SSDSC2KB48",
"size": 480103981056,
"rotational": false,
"wwn": "0x55cd2e414fd28470",
"serial": "BTYF830607J1480BGN",
--
"name": "/dev/sdb",
"model": "INTEL SSDSC2KB48",
"size": 480103981056,
"rotational": false,
"wwn": "0x55cd2e414fd15473",
"serial": "BTYF830500DJ480BGN",
--
"name": "/dev/sdc",
"model": "INTEL SSDSC2KB48",
"size": 480103981056,
"rotational": false,
"wwn": "0x55cd2e414fd09bc3",
"serial": "BTYF830403L6480BGN",
(undercloud) [stack@undercloud ~]$ openstack baremetal node set 9167797b-41c0-4b25-a09c-197533fb28db --property root_device='{ "serial" : "600508b1001c4995174e6411c98de0a3" }'
(undercloud) [stack@undercloud ~]$ openstack baremetal node set 6763c50b-44a1-4fac-bf97-92b59e2e43a4 --property root_device='{ "serial" : "BTYF830607J1480BGN" }'
(undercloud) [stack@undercloud ~]$ for NODE in `openstack baremetal node list -c UUID -f value`; do openstack baremetal node show $NODE -f json -c properties | jq -r .properties.capabilities;done
profile:control,boot_option:local
profile:compute,boot_option:local
(undercloud) [stack@undercloud ~]$ for NODE in `openstack baremetal node list -c UUID -f value`; do openstack baremetal node show $NODE -f json -c properties | jq -r .properties.root_device;done
{
"serial": "600508b1001c4995174e6411c98de0a3"
}
{
"serial": "BTYF830607J1480BGN"
}
(undercloud) [stack@undercloud ~]$ for NODE in `openstack baremetal node list -c UUID -f value`; do openstack baremetal node validate $NODE -f json;done
[
{
"Interface": "bios",
"Result": false,
"Reason": "Driver ipmi does not support bios (disabled or not implemented)."
},
{
"Interface": "boot",
"Result": false,
"Reason": "Cannot validate image information for node 9167797b-41c0-4b25-a09c-197533fb28db because one or more parameters are missing from its instance_info and insufficent information is present to boot from a remote volume. Missing are: ['image_source', 'kernel', 'ramdisk']"
},
{
"Interface": "console",
"Result": false,
"Reason": "Missing 'ipmi_terminal_port' parameter in node's driver_info."
},
{
"Interface": "deploy",
"Result": false,
"Reason": "Cannot validate image information for node 9167797b-41c0-4b25-a09c-197533fb28db because one or more parameters are missing from its instance_info and insufficent information is present to boot from a remote volume. Missing are: ['image_source', 'kernel', 'ramdisk']"
},
{
"Interface": "inspect",
"Result": true,
"Reason": ""
},
{
"Interface": "management",
"Result": true,
"Reason": ""
},
{
"Interface": "network",
"Result": true,
"Reason": ""
},
{
"Interface": "power",
"Result": true,
"Reason": ""
},
{
"Interface": "raid",
"Result": false,
"Reason": "Driver ipmi does not support raid (disabled or not implemented)."
},
{
"Interface": "rescue",
"Result": false,
"Reason": "Cannot validate image information for node 9167797b-41c0-4b25-a09c-197533fb28db because one or more parameters are missing from its instance_info and insufficent information is present to boot from a remote volume. Missing are: ['image_source', 'kernel', 'ramdisk']"
},
{
"Interface": "storage",
"Result": true,
"Reason": ""
}
]
[
{
"Interface": "bios",
"Result": false,
"Reason": "Driver ipmi does not support bios (disabled or not implemented)."
},
{
"Interface": "boot",
"Result": false,
"Reason": "Cannot validate image information for node 6763c50b-44a1-4fac-bf97-92b59e2e43a4 because one or more parameters are missing from its instance_info and insufficent information is present to boot from a remote volume. Missing are: ['image_source', 'kernel', 'ramdisk']"
},
{
"Interface": "console",
"Result": false,
"Reason": "Missing 'ipmi_terminal_port' parameter in node's driver_info."
},
{
"Interface": "deploy",
"Result": false,
"Reason": "Cannot validate image information for node 6763c50b-44a1-4fac-bf97-92b59e2e43a4 because one or more parameters are missing from its instance_info and insufficent information is present to boot from a remote volume. Missing are: ['image_source', 'kernel', 'ramdisk']"
},
{
"Interface": "inspect",
"Result": true,
"Reason": ""
},
{
"Interface": "management",
"Result": true,
"Reason": ""
},
{
"Interface": "network",
"Result": true,
"Reason": ""
},
{
"Interface": "power",
"Result": true,
"Reason": ""
},
{
"Interface": "raid",
"Result": false,
"Reason": "Driver ipmi does not support raid (disabled or not implemented)."
},
{
"Interface": "rescue",
"Result": false,
"Reason": "Cannot validate image information for node 6763c50b-44a1-4fac-bf97-92b59e2e43a4 because one or more parameters are missing from its instance_info and insufficent information is present to boot from a remote volume. Missing are: ['image_source', 'kernel', 'ramdisk']"
},
{
"Interface": "storage",
"Result": true,
"Reason": ""
}
]
Verify the nodes again.
(undercloud) [stack@undercloud ~]$ openstack baremetal node list
+————————————–+————-+—————+————-+——————–+————-+
| UUID | Name | Instance UUID | Power State | Provisioning State | Maintenance |
+————————————–+————-+—————+————-+——————–+————-+
| 9167797b-41c0-4b25-a09c-197533fb28db | controller1 | None | power off | manageable | False |
| 6763c50b-44a1-4fac-bf97-92b59e2e43a4 | compute1 | None | power off | manageable | False |
+————————————–+————-+—————+————-+——————–+————-+
Download the images
[stack@undercloud ~]$ sudo dnf install rhosp-director-images rhosp-director-images-ipa -y
Updating Subscription Management repositories.
/usr/lib/python3.6/site-packages/dateutil/parser/_parser.py:70: UnicodeWarning: decode() called on unicode string, see https://bugzilla.redhat.com/show_bug.cgi?id=1693751
instream = instream.decode()
Last metadata expiration check: 0:10:07 ago on Tuesday 31 August 2021 03:54:09 PM IST.
Error:
Problem 1: package rhosp-director-images-x86_64-16.1-20210430.3.el8ost.noarch requires rhosp-release > 16.1.2-1, but none of the providers can be installed
- package rhosp-director-images-16.1-20210430.3.el8ost.noarch requires rhosp-director-images-x86_64 = 16.1-20210430.3.el8ost, but none of the providers can be installed
- package rhosp-release-16.1.2-2.el8ost.noarch requires podman >= 1.6.4-15, but none of the providers can be installed
[stack@ undercloud ~]$ sudo subscription-manager release --set=8.2
[stack@ undercloud ~]$ sudo dnf module disable -y container-tools:rhel8
[stack@ undercloud ~]$ sudo dnf module enable -y container-tools:2.0
[stack@ undercloud ~]$ sudo dnf module disable -y virt:rhel
[stack@ undercloud ~]$ sudo dnf module enable -y virt:8.2
[stack@ undercloud ~]$ sudo subscription-manager repos --disable=*
[stack@ undercloud ~]$ sudo subscription-manager repos --enable=rhel-8-for-x86_64-baseos-eus-rpms --enable=rhel-8-for-x86_64-appstream-eus-rpms --enable=rhel-8-for-x86_64-highavailability-eus-rpms --enable=ansible-2.9-for-rhel-8-x86_64-rpms --enable=openstack-16.1-for-rhel-8-x86_64-rpms --enable=fast-datapath-for-rhel-8-x86_64-rpms --enable=advanced-virt-for-rhel-8-x86_64-rpms
Solution reference: https://access.redhat.com/solutions/5528711
Perform group pre-introspection
(undercloud) [stack@undercloud ~]$ openstack tripleo validator run --group pre-introspection
Running Validations without Overcloud settings.
WARNING:tripleo_common.inventory:Stack not found: overcloud. Only the undercloud will be added to the inventory.
Validate group pre-deployment
(undercloud) [stack@undercloud ~]$ openstack tripleo validator run --group pre-deployment
Running Validations without Overcloud settings.
WARNING:tripleo_common.inventory:Stack not found: overcloud. Only the undercloud will be added to the inventory.
(undercloud) [stack@undercloud ~]$ openstack tripleo validator run --group pre-deployment
Running Validations without Overcloud settings.
WARNING:tripleo_common.inventory:Stack not found: overcloud. Only the undercloud will be added to the inventory.
+--------------------------------------+-------------------------------------+--------+--------------+----------------+-------------------+-------------+
| UUID | Validations | Status | Host_Group | Status_by_Host | Unreachable_Hosts | Duration |
+--------------------------------------+-------------------------------------+--------+--------------+----------------+-------------------+-------------+
| c1ce1f5c-b6eb-479e-aee0-b54f4ca5254a | 512e | PASSED | all | | | |
| f70a85e9-8103-41b3-938e-d2dbc36e6718 | switch-vlans | PASSED | undercloud | undercloud | | 0:00:35.212 |
| d678dbe8-1460-4631-b6df-7b4e756fba5d | dns | PASSED | all | | | |
| 5ed1a8e5-8731-4019-a6d9-fbe7c7191c58 | service-status | PASSED | all | | | |
| 350f45df-2c7b-4532-9da2-625dfd7478f1 | validate-selinux | PASSED | all | | | |
| f8c2d683-44e6-4080-8292-a27b99b900cb | undercloud-heat-purge-deleted | PASSED | undercloud | undercloud | | 0:00:02.671 |
| 285b0348-966e-4a19-88bd-05d4b23d1ce0 | ceilometerdb-size | PASSED | undercloud | undercloud | | 0:00:01.781 |
| 95ac0c4f-b2f1-40f2-8af6-a793aea4e7cb | ceph-ansible-installed | PASSED | undercloud | undercloud | | 0:00:12.961 |
| d4d96fb8-1d10-41c0-9b0f-6cff37065a89 | ceph-dependencies-installed | PASSED | allovercloud | | |
| 154144f3-9ad6-4997-8051-d345e662beda | undercloud-process-count | PASSED | undercloud | undercloud | | 0:00:17.987 |
| 141f47f4-0af7-4bd9-a04a-faf0a21ef641 | collect-flavors-and-verify-profiles | FAILED | undercloud | undercloud | | 0:00:06.214 |
| 654bdbc5-8f7f-40e0-82b5-a0363f7e96cd | default-node-count | PASSED | undercloud | undercloud | | 0:00:06.045 |
| 6a3a6bc2-72a7-4c65-b351-95177a4e9dae | dhcp-provisioning | PASSED | undercloud | undercloud | | 0:00:06.812 |
| 217846e9-4cb8-4063-b058-63adaadd0219 | ironic-boot-configuration | PASSED | undercloud | undercloud | | 0:00:01.742 |
| fb60a965-5f4d-41d9-bfac-c84533dd1a7f | network-environment | PASSED | undercloud | undercloud | | 0:00:31.188 |
| 82471dd1-874d-4f2a-a66b-f5d1bd54568a | node-disks | PASSED | undercloud | undercloud | | 0:00:05.276 |
| 21a059bc-decf-41c0-9801-0964891e9cb6 | tls-everywhere-pre-deployment | PASSED | undercloud | undercloud | | 0:00:06.915 |
| f4fd17f3-bf5d-4d53-bcb5-b1ea1f0b303a | undercloud-debug | PASSED | undercloud | undercloud | | 0:00:02.257 |
+--------------------------------------+-------------------------------------+--------+--------------+----------------+-------------------+-------------+
Before Overcloud Installation, issue Swift List command ,your output must be similar to the mentioned below.
[stack@undercloud working-nic-config]$ cat v1_deploy.sh
#!/bin/bash
time openstack overcloud deploy --templates /usr/share/openstack-tripleo-heat-templates/ \
-r /home/stack/working-nic-config/roles_data.yaml \
-e /usr/share/openstack-tripleo-heat-templates/environments/network-isolation.yaml \
-e /home/stack/working-nic-config/network-environment1.yaml \
-e /home/stack/containers-prepare-parameter.yaml \
-e /home/stack/osprendered/extra-config/node-info.yaml \
--stack overcloud21sept \
--log-file /tmp/install_overcloud.log --timeout 90 --libvirt-type kvm
(undercloud) [stack@undercloud templates]$ ./deploy.sh
Creating Swift container to store the plan
Creating plan from template files in: /tmp/tripleoclient-a3tbzg28/tripleo-heat-templates
Plan created.
Processing templates in the directory /tmp/tripleoclient-a3tbzg28/tripleo-heat-templates
WARNING: Following parameter(s) are defined but not currently used in the deployment plan. These parameters may be valid but not in use due to the service or deployment configuration. GnocchiRbdPoolName
Deploying templates in the directory /tmp/tripleoclient-a3tbzg28/tripleo-heat-templates
Initializing overcloud15 plan deployment
Creating overcloud15 Heat stack
2021-09-08 11:25:52Z [overcloud15]: CREATE_IN_PROGRESS Stack CREATE started
2021-09-08 11:25:56Z [overcloud15.CephStorageRoleUserData]: CREATE_IN_PROGRESS state changed
2021-09-08 11:25:57Z [overcloud15.CephStorageRoleUserData]: CREATE_IN_PROGRESS Stack CREATE started
Output truncated for brevity *******
Login to your Ilo/IDRAC to check the node booting. You will find similar screen as depicted below.
Overcloud deployment done, depicts below snapshot. It takes 50 minutes approximately
# BEGIN ANSIBLE MANAGED BLOCK
10.205.6.140 overcloud21sept-novacompute-0.localdomain overcloud21sept-novacompute-0
10.205.9.133 overcloud21sept-novacompute-0.storage.localdomain overcloud21sept-novacompute-0.storage
10.205.6.140 overcloud21sept-novacompute-0.internalapi.localdomain overcloud21sept-novacompute-0.internalapi
10.205.7.111 overcloud21sept-novacompute-0.tenant.localdomain overcloud21sept-novacompute-0.tenant
10.205.8.164 overcloud21sept-novacompute-0.external.localdomain overcloud21sept-novacompute-0.external
10.205.0.40 overcloud21sept-novacompute-0.ctlplane.localdomain overcloud21sept-novacompute-0.ctlplane
10.205.6.191 overcloud21sept-novacompute-3.localdomain overcloud21sept-novacompute-3
10.205.9.180 overcloud21sept-novacompute-3.storage.localdomain overcloud21sept-novacompute-3.storage
10.205.6.191 overcloud21sept-novacompute-3.internalapi.localdomain overcloud21sept-novacompute-3.internalapi
10.205.7.130 overcloud21sept-novacompute-3.tenant.localdomain overcloud21sept-novacompute-3.tenant
10.205.8.194 overcloud21sept-novacompute-3.external.localdomain overcloud21sept-novacompute-3.external
10.205.0.44 overcloud21sept-novacompute-3.ctlplane.localdomain overcloud21sept-novacompute-3.ctlplane
10.205.6.200 overcloud21sept-controller-0.localdomain overcloud21sept-controller-0
10.205.9.152 overcloud21sept-controller-0.storage.localdomain overcloud21sept-controller-0.storage
10.205.10.132 overcloud21sept-controller-0.storagemgmt.localdomain overcloud21sept-controller-0.storagemgmt
10.205.6.200 overcloud21sept-controller-0.internalapi.localdomain overcloud21sept-controller-0.internalapi
10.205.7.127 overcloud21sept-controller-0.tenant.localdomain overcloud21sept-controller-0.tenant
10.205.8.144 overcloud21sept-controller-0.external.localdomain overcloud21sept-controller-0.external
10.205.0.21 overcloud21sept-controller-0.ctlplane.localdomain overcloud21sept-controller-0.ctlplane
10.205.0.7 undercloud.ctlplane.itchundredlab.com undercloud.ctlplane undercloud.ctlplane.localdomain
10.205.0.34 overcloud.ctlplane.localdomain
10.205.9.108 overcloud.storage.localdomain
10.205.10.115 overcloud.storagemgmt.localdomain
10.205.6.153 overcloud.internalapi.localdomain
10.205.8.117 overcloud.localdomain
# END ANSIBLE MANAGED BLOCK
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
10.205.0.7 undercloud.localdomain undercloud
10.205.0.7 undercloud.ctlplane.localdomain undercloud.ctlplane
10.205.0.7 undercloud.itchundredlab.com undercloud
This completes our overcloud node installation.
Verification:
openstack stack list
openstack server list
openstack baremetal node list
openstack network list
openstack overcloud node introspect <UUID> --provide
openstack overcloud node import instackenv.json
openstack baremetal node power off <UUID>
python3 -m json.tool instackenv.json
sudo podman ps
swift list
Openstack overcloud profiles list
./tools/process-templates.py -o ~/openstack-tripleo-heat-templates-rendered -n /home/stack/templates/network_data.yaml -r /home/stack/roles_data.yaml
I thank Prahin Parmeshwaran and Sumit Singh for deployment support.