Re: ERROR openstack [-] Resource OS::TripleO::Network::Ports::ControlPlaneVipPort maps to type OS::Neutron::Port and the Neutron service is not available when using ephemeral Heat.| Openstack tripleo wallaby version
Hi Swogat, Thanks once again. with the files as shown below I am running the overcloud deploy for wallaby using this command: (undercloud) [stack@undercloud ~]$ cat deploy_overcloud_working_1.sh openstack overcloud deploy --templates \ -n /home/stack/templates/network_data.yaml \ -r /home/stack/templates/roles_data.yaml \ -e /home/stack/templates/environment.yaml \ -e /home/stack/templates/environments/network-isolation.yaml \ -e /home/stack/templates/environments/network-environment.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-conductor.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-inspector.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-overcloud.yaml \ -e /home/stack/templates/ironic-config.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/docker-ha.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/podman.yaml \ -e /home/stack/containers-prepare-parameter.yaml (undercloud) [stack@undercloud ~]$ This deployment is on ipv6 using triple0 wallaby, templates, as mentioned below, are generated using rendering steps and the network_data.yaml the roles_data.yaml Steps used to render the templates: cd /usr/share/openstack-tripleo-heat-templates/ ./tools/process-templates.py -o ~/openstack-tripleo-heat-templates-rendered_at_wallaby -n /home/stack/templates/network_data.yaml -r /home/stack/templates/roles_data.yaml *Now if i try adding the related to VIP port I do get the error as:* 2022-05-30 10:37:12.792 979387 WARNING tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] rendering j2 template to file: /home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/puppet/controller-role.yaml 2022-05-30 10:37:12.792 979387 WARNING tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] rendering j2 template to file: /home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/puppet/compute-role.yaml 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] Exception occured while running the command: ValueError: The environment is not a valid YAML mapping data type. 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud Traceback (most recent call last): 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/command.py", line 34, in run 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud super(Command, self).run(parsed_args) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/osc_lib/command/command.py", line 39, in run 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud return super(Command, self).run(parsed_args) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/cliff/command.py", line 185, in run 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud return_code = self.take_action(parsed_args) or 0 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", line 1189, in take_action 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud stack, parsed_args, new_tht_root, user_tht_root) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", line 227, in create_env_files 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud created_env_files, parsed_args, new_tht_root, user_tht_root) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", line 204, in build_image_params 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud cleanup=(not parsed_args.no_cleanup)) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/utils.py", line 1929, in process_multiple_environments 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud env_path=env_path, include_env_in_files=include_env_in_files) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/heatclient/common/template_utils.py", line 326, in process_environment_and_files 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud env = environment_format.parse(raw_env) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/heatclient/common/environment_format.py", line 50, in parse 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud raise ValueError(_('The environment is not a valid ' 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud ValueError: The environment is not a valid YAML mapping data type. 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud 2022-05-30 10:37:14.457 979387 ERROR openstack [-] The environment is not a valid YAML mapping data type. 2022-05-30 10:37:14.457 979387 INFO osc_lib.shell [-] END return value: 1 (undercloud) [stack@undercloud ~]$ This is more of a syntax error where it is not able to understand the passed VIP data file: undercloud) [stack@undercloud ~]$ cat /home/stack/templates/vip-data-default-network-isolation.yaml - dns_name: overcloud network: internal_api - dns_name: overcloud network: external - dns_name: overcloud network: ctlplane - dns_name: overcloud network: oc_provisioning - dns_name: overcloud network: j3mgmt Please advise, also please note that similar templates generated in prior releases such as train/ussuri works perfectly. Please check the list of *templates *files: drwxr-xr-x. 2 stack stack 68 May 30 09:22 environments -rw-r--r--. 1 stack stack 265 May 27 13:47 environment.yaml -rw-rw-r--. 1 stack stack 297 May 27 13:47 init-repo.yaml -rw-r--r--. 1 stack stack 570 May 27 13:47 ironic-config.yaml drwxrwxr-x. 4 stack stack 4096 May 27 13:53 network -rw-r--r--. 1 stack stack 6370 May 27 14:26 network_data.yaml -rw-r--r--. 1 stack stack 11137 May 27 13:53 roles_data.yaml -rw-r--r--. 1 stack stack 234 May 30 09:23 vip-data-default-network-isolation.yaml (undercloud) [stack@undercloud templates]$ cat environment.yaml parameter_defaults: OvercloudControllerFlavor: control OvercloudComputeFlavor: compute ControllerCount: 3 ComputeCount: 1 TimeZone: 'Asia/Kolkata' NtpServer: ['30.30.30.3'] NeutronBridgeMappings: datacentre:br-tenant NeutronFlatNetworks: datacentre (undercloud) [stack@undercloud templates]$ (undercloud) [stack@undercloud templates]$ cat ironic-config.yaml parameter_defaults: NovaSchedulerDefaultFilters: - AggregateInstanceExtraSpecsFilter - AvailabilityZoneFilter - ComputeFilter - ComputeCapabilitiesFilter - ImagePropertiesFilter IronicEnabledHardwareTypes: - ipmi - redfish IronicEnabledPowerInterfaces: - ipmitool - redfish IronicEnabledManagementInterfaces: - ipmitool - redfish IronicCleaningDiskErase: metadata IronicIPXEEnabled: true IronicInspectorSubnets: - ip_range: 172.23.3.100,172.23.3.150 (undercloud) [stack@undercloud templates]$ cat network_data.yaml - name: J3Mgmt name_lower: j3mgmt vip: true vlan: 400 ipv6: true ipv6_subnet: 'fd80:fd00:fd00:4000::/64' ipv6_allocation_pools: [{'start': 'fd80:fd00:fd00:4000::10', 'end': 'fd80:fd00:fd00:4000:ffff:ffff:ffff:fffe'}] mtu: 9000 - name: InternalApi name_lower: internal_api vip: true vlan: 418 ipv6: true ipv6_subnet: 'fd00:fd00:fd00:2000::/64' ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:2000::10', 'end': 'fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe'}] mtu: 9000 - name: External vip: true name_lower: external vlan: 408 ipv6: true gateway_ipv6: 'fd00:fd00:fd00:9900::1' ipv6_subnet: 'fd00:fd00:fd00:9900::/64' ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:9900::10', 'end': 'fd00:fd00:fd00:9900:ffff:ffff:ffff:fffe'}] mtu: 9000 - name: OCProvisioning vip: true name_lower: oc_provisioning vlan: 412 ip_subnet: '172.23.3.0/24' allocation_pools: [{'start': '172.23.3.10', 'end': '172.23.3.50'}] mtu: 9000 (undercloud) [stack@undercloud templates]$ cat roles_data.yaml ############################################################################### # File generated by TripleO ############################################################################### ############################################################################### # Role: Controller # ############################################################################### - name: Controller description: | Controller role that has all the controller services loaded and handles Database, Messaging, and Network functions. CountDefault: 1 tags: - primary - controller # Create external Neutron bridge for SNAT (and floating IPs when using # ML2/OVS without DVR) - external_bridge networks: External: subnet: external_subnet InternalApi: subnet: internal_api_subnet OCProvisioning: subnet: oc_provisioning_subnet J3Mgmt: subnet: j3mgmt_subnet # For systems with both IPv4 and IPv6, you may specify a gateway network for # each, such as ['ControlPlane', 'External'] default_route_networks: ['External'] HostnameFormatDefault: '%stackname%-controller-%index%' RoleParametersDefault: OVNCMSOptions: "enable-chassis-as-gw" # Deprecated & backward-compatible values (FIXME: Make parameters consistent) # Set uses_deprecated_params to True if any deprecated params are used. uses_deprecated_params: True deprecated_param_extraconfig: 'controllerExtraConfig' deprecated_param_flavor: 'OvercloudControlFlavor' deprecated_param_image: 'controllerImage' deprecated_nic_config_name: 'controller.yaml' update_serial: 1 ServicesDefault: - OS::TripleO::Services::Aide - OS::TripleO::Services::AodhApi - OS::TripleO::Services::AodhEvaluator .. . ..############################################################################### # Role: Compute # ############################################################################### - name: Compute description: | Basic Compute Node role CountDefault: 1 # Create external Neutron bridge (unset if using ML2/OVS without DVR) tags: - compute - external_bridge networks: InternalApi: subnet: internal_api_subnet J3Mgmt: subnet: j3mgmt_subnet HostnameFormatDefault: '%stackname%-novacompute-%index%' RoleParametersDefault: FsAioMaxNumber: 1048576 TunedProfileName: "virtual-host" # Deprecated & backward-compatible values (FIXME: Make parameters consistent) # Set uses_deprecated_params to True if any deprecated params are used. # These deprecated_params only need to be used for existing roles and not for # composable roles. uses_deprecated_params: True deprecated_param_image: 'NovaImage' deprecated_param_extraconfig: 'NovaComputeExtraConfig' deprecated_param_metadata: 'NovaComputeServerMetadata' deprecated_param_scheduler_hints: 'NovaComputeSchedulerHints' deprecated_param_ips: 'NovaComputeIPs' deprecated_server_resource_name: 'NovaCompute' deprecated_nic_config_name: 'compute.yaml' update_serial: 25 ServicesDefault: - OS::TripleO::Services::Aide - OS::TripleO::Services::AuditD - OS::TripleO::Services::BootParams (undercloud) [stack@undercloud templates]$ cat environments/network-environment.yaml #This file is an example of an environment file for defining the isolated #networks and related parameters. resource_registry: # Network Interface templates to use (these files must exist). You can # override these by including one of the net-*.yaml environment files, # such as net-bond-with-vlans.yaml, or modifying the list here. # Port assignments for the Controller OS::TripleO::Controller::Net::SoftwareConfig: OS::Heat::None # Port assignments for the Compute OS::TripleO::Compute::Net::SoftwareConfig: OS::Heat::None parameter_defaults: # This section is where deployment-specific configuration is done # ServiceNetMap: IronicApiNetwork: oc_provisioning IronicNetwork: oc_provisioning # This section is where deployment-specific configuration is done ControllerNetworkConfigTemplate: 'templates/bonds_vlans/bonds_vlans.j2' ComputeNetworkConfigTemplate: 'templates/bonds_vlans/bonds_vlans.j2' # Customize the IP subnet to match the local environment J3MgmtNetCidr: 'fd80:fd00:fd00:4000::/64' # Customize the IP range to use for static IPs and VIPs J3MgmtAllocationPools: [{'start': 'fd80:fd00:fd00:4000::10', 'end': 'fd80:fd00:fd00:4000:ffff:ffff:ffff:fffe'}] # Customize the VLAN ID to match the local environment J3MgmtNetworkVlanID: 400 # Customize the IP subnet to match the local environment InternalApiNetCidr: 'fd00:fd00:fd00:2000::/64' # Customize the IP range to use for static IPs and VIPs InternalApiAllocationPools: [{'start': 'fd00:fd00:fd00:2000::10', 'end': 'fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe'}] # Customize the VLAN ID to match the local environment InternalApiNetworkVlanID: 418 # Customize the IP subnet to match the local environment ExternalNetCidr: 'fd00:fd00:fd00:9900::/64' # Customize the IP range to use for static IPs and VIPs # Leave room if the external network is also used for floating IPs ExternalAllocationPools: [{'start': 'fd00:fd00:fd00:9900::10', 'end': 'fd00:fd00:fd00:9900:ffff:ffff:ffff:fffe'}] # Gateway router for routable networks ExternalInterfaceDefaultRoute: 'fd00:fd00:fd00:9900::1' # Customize the VLAN ID to match the local environment ExternalNetworkVlanID: 408 # Customize the IP subnet to match the local environment OCProvisioningNetCidr: '172.23.3.0/24' # Customize the IP range to use for static IPs and VIPs OCProvisioningAllocationPools: [{'start': '172.23.3.10', 'end': '172.23.3.50'}] # Customize the VLAN ID to match the local environment OCProvisioningNetworkVlanID: 412 # List of Neutron network types for tenant networks (will be used in order) NeutronNetworkType: 'geneve,vlan' # Neutron VLAN ranges per network, for example 'datacentre:1:499,tenant:500:1000': NeutronNetworkVLANRanges: 'datacentre:1:1000' # Customize bonding options, e.g. "mode=4 lacp_rate=1 updelay=1000 miimon=100" # for Linux bonds w/LACP, or "bond_mode=active-backup" for OVS active/backup. BondInterfaceOvsOptions: "bond_mode=active-backup" (undercloud) [stack@undercloud templates]$ (undercloud) [stack@undercloud templates]$ cat environments/network-isolation.yaml # NOTE: This template is now deprecated, and is only included for compatibility # when upgrading a deployment where this template was originally used. For new # deployments, set "ipv6: true" on desired networks in network_data.yaml, and # include network-isolation.yaml. # # Enable the creation of Neutron networks for isolated Overcloud # traffic and configure each role to assign ports (related # to that role) on these networks. resource_registry: # networks as defined in network_data.yaml OS::TripleO::Network::J3Mgmt: ../network/j3mgmt_v6.yaml OS::TripleO::Network::InternalApi: ../network/internal_api_v6.yaml OS::TripleO::Network::External: ../network/external_v6.yaml OS::TripleO::Network::OCProvisioning: ../network/oc_provisioning.yaml # Port assignments for the VIPs OS::TripleO::Network::Ports::J3MgmtVipPort: ../network/ports/j3mgmt_v6.yaml OS::TripleO::Network::Ports::InternalApiVipPort: ../network/ports/internal_api_v6.yaml OS::TripleO::Network::Ports::ExternalVipPort: ../network/ports/external_v6.yaml OS::TripleO::Network::Ports::OCProvisioningVipPort: ../network/ports/oc_provisioning.yaml # Port assignments by role, edit role definition to assign networks to roles. # Port assignments for the Controller OS::TripleO::Controller::Ports::J3MgmtPort: ../network/ports/j3mgmt_v6.yaml OS::TripleO::Controller::Ports::InternalApiPort: ../network/ports/internal_api_v6.yaml OS::TripleO::Controller::Ports::ExternalPort: ../network/ports/external_v6.yaml OS::TripleO::Controller::Ports::OCProvisioningPort: ../network/ports/oc_provisioning.yaml # Port assignments for the Compute OS::TripleO::Compute::Ports::J3MgmtPort: ../network/ports/j3mgmt_v6.yaml OS::TripleO::Compute::Ports::InternalApiPort: ../network/ports/internal_api_v6.yaml parameter_defaults: # Enable IPv6 environment for Manila ManilaIPv6: True (undercloud) [stack@undercloud templates]$ On Tue, May 24, 2022 at 5:04 PM Lokendra Rathour <lokendrarathour@gmail.com> wrote:
Thanks, I'll check them out. will let you know in case it works out.
On Tue, May 24, 2022 at 2:37 PM Swogat Pradhan <swogatpradhan22@gmail.com> wrote:
Hi, Please find the below templates: These are for openstack wallaby release:
(undercloud) [stack@hkg2director workplace]$ cat custom_network_data.yaml - name: Storage name_lower: storage vip: true mtu: 1500 subnets: storage_subnet: ip_subnet: 172.25.202.0/26 allocation_pools: - start: 172.25.202.6 end: 172.25.202.20 vlan: 1105 - name: StorageMgmt name_lower: storage_mgmt vip: true mtu: 1500 subnets: storage_mgmt_subnet: ip_subnet: 172.25.202.64/26 allocation_pools: - start: 172.25.202.72 end: 172.25.202.87 vlan: 1106 - name: InternalApi name_lower: internal_api vip: true mtu: 1500 subnets: internal_api_subnet: ip_subnet: 172.25.201.192/26 allocation_pools: - start: 172.25.201.198 end: 172.25.201.212 vlan: 1104 - name: Tenant vip: false # Tenant network does not use VIPs mtu: 1500 name_lower: tenant subnets: tenant_subnet: ip_subnet: 172.25.202.128/26 allocation_pools: - start: 172.25.202.135 end: 172.25.202.150 vlan: 1108 - name: External name_lower: external vip: true mtu: 1500 subnets: external_subnet: ip_subnet: 172.25.201.128/26 allocation_pools: - start: 172.25.201.135 end: 172.25.201.150 gateway_ip: 172.25.201.129 vlan: 1103
(undercloud) [stack@hkg2director workplace]$ cat custom_vip_data.yaml - network: ctlplane #dns_name: overcloud ip_address: 172.25.201.91 subnet: ctlplane-subnet - network: external #dns_name: overcloud ip_address: 172.25.201.150 subnet: external_subnet - network: internal_api #dns_name: overcloud ip_address: 172.25.201.250 subnet: internal_api_subnet - network: storage #dns_name: overcloud ip_address: 172.25.202.50 subnet: storage_subnet - network: storage_mgmt #dns_name: overcloud ip_address: 172.25.202.90 subnet: storage_mgmt_subnet
(undercloud) [stack@hkg2director workplace]$ cat overcloud-baremetal-deploy.yaml - name: Controller count: 4 defaults: networks: - network: ctlplane vif: true - network: external subnet: external_subnet - network: internal_api subnet: internal_api_subnet - network: storage subnet: storage_subnet - network: storage_mgmt subnet: storage_mgmt_subnet - network: tenant subnet: tenant_subnet network_config: template: /home/stack/templates/controller.j2 default_route_network: - external instances: - hostname: overcloud-controller-0 name: dc1-controller2 #provisioned: false - hostname: overcloud-controller-1 name: dc2-controller2 #provisioned: false - hostname: overcloud-controller-2 name: dc1-controller1 #provisioned: false - hostname: overcloud-controller-no-ceph-3 name: dc2-ceph2 #provisioned: false #- hostname: overcloud-controller-3 #name: dc2-compute3 #provisioned: false
- name: Compute count: 5 defaults: networks: - network: ctlplane vif: true - network: internal_api subnet: internal_api_subnet - network: tenant subnet: tenant_subnet - network: storage subnet: storage_subnet network_config: template: /home/stack/templates/compute.j2 instances: - hostname: overcloud-novacompute-0 name: dc2-compute1 #provisioned: false - hostname: overcloud-novacompute-1 name: dc2-ceph1 #provisioned: false - hostname: overcloud-novacompute-2 name: dc1-compute1 #provisioned: false - hostname: overcloud-novacompute-3 name: dc1-compute2 #provisioned: false - hostname: overcloud-novacompute-4 name: dc2-compute3 #provisioned: false
- name: CephStorage count: 4 defaults: networks: - network: ctlplane vif: true - network: internal_api subnet: internal_api_subnet - network: storage subnet: storage_subnet - network: storage_mgmt subnet: storage_mgmt_subnet network_config: template: /home/stack/templates/ceph-storage.j2 instances: - hostname: overcloud-cephstorage-0 name: dc2-controller1 #provisioned: false # - hostname: overcloud-cephstorage-1 # name: dc2-ceph2 - hostname: overcloud-cephstorage-1 name: dc1-ceph1 # provisioned: false - hostname: overcloud-cephstorage-2 name: dc1-ceph2 #provisioned: false - hostname: overcloud-cephstorage-3 name: dc2-compute2 #provisioned: false
You must use these templates to provision network, vip and nodes. You must use the output files generated during the provisioning step in openstack overcloud deploy command using -e parameter.
With regards, Swogat Pradhan
On Mon, May 23, 2022 at 8:33 PM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Hi Swogat, I tried checking your solution and my templates but could not relate much. But issue seems the same
http://lists.openstack.org/pipermail/openstack-discuss/2022-May/028401.html
I tried somemore ways but looks like some issue with templates. Can you please share the templates used to deploy the overcloud.
Mysetup have 3 controller and 1 compute.
Thanks once again for reading my mail.
Waiting for your reply.
-Lokendra
On Fri, 20 May 2022, 08:25 Swogat Pradhan, <swogatpradhan22@gmail.com> wrote:
Hi, Yes I was able to find the issue and fix it. The issue was with the overcloud-baremetal-deployed.yaml file i was trying to provision controller-0, controller-1 and controller-3 and kept controller-2 aside for later, but the tripleo scripts are built in such a way that they were taking controller- 0, 1 and 2 inplace of controller-3, so the network ports and vip were created for controller 0,1 and 2 but not for 3 , so this error was popping off. Also i would request you to check the jinja nic templates and once the node provisioning is done check the /etc/os-net-config/config.json/yaml file for syntax if using bonded nic template. If you need any more infor please let me know.
With regards, Swogat Pradhan
On Fri, May 20, 2022 at 8:01 AM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Hi Swogat, Thanks for raising this issue. Did you find any solution? to this problem ?
Please let me know it might be helpful
On Tue, Apr 19, 2022 at 12:43 PM Swogat Pradhan < swogatpradhan22@gmail.com> wrote:
Hi, I am currently trying to deploy openstack wallaby using tripleo arch. I created the network jinja templates, ran the following commands also:
#openstack overcloud network provision --stack overcloud --output networks-deployed-environment.yaml custom_network_data.yaml # openstack overcloud network vip provision --stack overcloud --output vip-deployed-environment.yaml custom_vip_data.yaml # openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa overcloud-baremetal-deploy.yaml
and used the environment files in the openstack overcloud deploy command:
(undercloud) [stack@hkg2director ~]$ cat deploy.sh #!/bin/bash THT=/usr/share/openstack-tripleo-heat-templates/ CNF=/home/stack/ openstack overcloud deploy --templates $THT \ -r $CNF/templates/roles_data.yaml \ -n $CNF/workplace/custom_network_data.yaml \ -e ~/containers-prepare-parameter.yaml \ -e $CNF/templates/node-info.yaml \ -e $CNF/templates/scheduler-hints.yaml \ -e $CNF/workplace/networks-deployed-environment.yaml \ -e $CNF/workplace/vip-deployed-environment.yaml \ -e $CNF/workplace/overcloud-baremetal-deployed.yaml \ -e $CNF/workplace/custom-net-bond-with-vlans.yaml
Now when i run the ./deploy.sh script i encounter an error stating:
ERROR openstack [-] Resource OS::TripleO::Network::Ports::ControlPlaneVipPort maps to type OS::Neutron::Port and the Neutron service is not available when using ephemeral Heat. The generated environments from 'openstack overcloud baremetal provision' and 'openstack overcloud network provision' must be included with the deployment command.: tripleoclient.exceptions.InvalidConfiguration: Resource OS::TripleO::Network::Ports::ControlPlaneVipPort maps to type OS::Neutron::Port and the Neutron service is not available when using ephemeral Heat. The generated environments from 'openstack overcloud baremetal provision' and 'openstack overcloud network provision' must be included with the deployment command. 2022-04-19 13:47:16.582 735924 INFO osc_lib.shell [-] END return value: 1
Can someone tell me where the mistake is?
With regards, Swogat Pradhan
Hi Swogat, I tried generating the scripts as used by you in your deployments using the #openstack overcloud network provision --stack overcloud --output networks-deployed-environment.yaml custom_network_data.yaml # openstack overcloud network vip provision --stack overcloud --output vip-deployed-environment.yaml custom_vip_data.yaml # openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa overcloud-baremetal-deploy.yaml and used the first two in the final deployment script, but it gives the error: heatclient.exc.HTTPInternalServerError: ERROR: Internal Error 2022-05-30 14:14:39.772 479668 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud Traceback (most recent call last):\n', ' File "/usr/lib/python3.6/ted_stack\n nested_stack.validate()\n', ' File "/usr/lib/python3.6/site-packages/osprofiler/profiler.py", line 160, in wrapper\n result = f(*args, ine 969, in validate\n result = res.validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/openstack/neutron/port.py", line 454site-packages/heat/engine/resources/openstack/neutron/neutron.py", line 43, in validate\n res = super(NeutronResource, self).validate()\n', ' File "/un return self.validate_template()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resource.py", line 1882, in validate_template\n self.t.rpy", line 200, in _validate_service_availability\n raise ex\n', 'heat.common.exception.ResourceTypeUnavailable: HEAT-E99001 Service neutron is not avaieutron network endpoint is not in service catalog.\n', '\nDuring handling of the above exception, another exception occurred:\n\n', 'Traceback (most recens/stack_resource.py", line 75, in validate_nested_stack\n nested_stack.validate()\n', ' File "/usr/lib/python3.6/site-packages/osprofiler/profiler.py"thon3.6/site-packages/heat/engine/stack.py", line 969, in validate\n result = res.validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/ateResource, self).validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/stack_resource.py", line 65, in validate\n self.validources/stack_resource.py", line 81, in validate_nested_stack\n ex, path=[self.stack.t.RESOURCES, path])\n', 'heat.common.exception.StackValidationFaileeploy/overcloud/tripleo-heat-templates/deployed-server/deployed-server.yaml>: HEAT-E99001 Service neutron is not available for resource type OS::TripleO::vice catalog.\n', '\nDuring handling of the above exception, another exception occurred:\n\n', 'Traceback (most recent call last):\n', ' File "/usr/lib/pline 320, in validate_nested_stack\n nested_stack.validate()\n', ' File "/usr/lib/python3.6/site-packages/osprofiler/profiler.py", line 160, in wrappe/heat/engine/stack.py", line 969, in validate\n result = res.validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/template_relidate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/stack_resource.py", line 65, in validate\n self.validate_nested_stack()\n'.py", line 81, in validate_nested_stack\n ex, path=[self.stack.t.RESOURCES, path])\n', 'heat.common.exception.StackValidationFailed: ResourceTypeUnavaimplates/puppet/compute-role.yaml>.resources.NovaCompute<file:///home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/deployed-server/deployed-servpleO::DeployedServer::ControlPlanePort, reason: neutron network endpoint is not in service catalog.\n', '\nDuring handling of the above exception, another/lib/python3.6/site-packages/heat/common/context.py", line 416, in wrapped\n return func(self, ctx, *args, **kwargs)\n', ' File "/usr/lib/python3.6/sirce_name, template_id)\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/service.py", line 756, in _parse_template_and_validate_stack\n stack.v line 160, in wrapper\n result = f(*args, **kwargs)\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/stack.py", line 969, in validate\n resesources/stack_resource.py", line 65, in validate\n self.validate_nested_stack()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/oph=[self.stack.t.RESOURCES, path])\n', 'heat.common.exception.StackValidationFailed: ResourceTypeUnavailable: resources.Compute<nested_stack>.resources.0<fte-role.yaml>.resources.NovaCompute<file:///home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/deployed-server/deployed-server.yaml>: HEAT-E9900::ControlPlanePort, reason: neutron network endpoint is not in service catalog.\n']. Request you to check once, please. On Mon, May 30, 2022 at 11:06 AM Lokendra Rathour <lokendrarathour@gmail.com> wrote:
Hi Swogat, Thanks once again.
with the files as shown below I am running the overcloud deploy for wallaby using this command:
(undercloud) [stack@undercloud ~]$ cat deploy_overcloud_working_1.sh openstack overcloud deploy --templates \ -n /home/stack/templates/network_data.yaml \ -r /home/stack/templates/roles_data.yaml \ -e /home/stack/templates/environment.yaml \ -e /home/stack/templates/environments/network-isolation.yaml \ -e /home/stack/templates/environments/network-environment.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-conductor.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-inspector.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-overcloud.yaml \ -e /home/stack/templates/ironic-config.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/docker-ha.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/podman.yaml \ -e /home/stack/containers-prepare-parameter.yaml (undercloud) [stack@undercloud ~]$
This deployment is on ipv6 using triple0 wallaby, templates, as mentioned below, are generated using rendering steps and the network_data.yaml the roles_data.yaml Steps used to render the templates: cd /usr/share/openstack-tripleo-heat-templates/ ./tools/process-templates.py -o ~/openstack-tripleo-heat-templates-rendered_at_wallaby -n /home/stack/templates/network_data.yaml -r /home/stack/templates/roles_data.yaml
*Now if i try adding the related to VIP port I do get the error as:*
2022-05-30 10:37:12.792 979387 WARNING tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] rendering j2 template to file: /home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/puppet/controller-role.yaml 2022-05-30 10:37:12.792 979387 WARNING tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] rendering j2 template to file: /home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/puppet/compute-role.yaml 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] Exception occured while running the command: ValueError: The environment is not a valid YAML mapping data type. 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud Traceback (most recent call last): 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/command.py", line 34, in run 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud super(Command, self).run(parsed_args) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/osc_lib/command/command.py", line 39, in run 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud return super(Command, self).run(parsed_args) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/cliff/command.py", line 185, in run 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud return_code = self.take_action(parsed_args) or 0 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", line 1189, in take_action 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud stack, parsed_args, new_tht_root, user_tht_root) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", line 227, in create_env_files 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud created_env_files, parsed_args, new_tht_root, user_tht_root) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", line 204, in build_image_params 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud cleanup=(not parsed_args.no_cleanup)) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/utils.py", line 1929, in process_multiple_environments 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud env_path=env_path, include_env_in_files=include_env_in_files) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/heatclient/common/template_utils.py", line 326, in process_environment_and_files 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud env = environment_format.parse(raw_env) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/heatclient/common/environment_format.py", line 50, in parse 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud raise ValueError(_('The environment is not a valid ' 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud ValueError: The environment is not a valid YAML mapping data type. 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud 2022-05-30 10:37:14.457 979387 ERROR openstack [-] The environment is not a valid YAML mapping data type. 2022-05-30 10:37:14.457 979387 INFO osc_lib.shell [-] END return value: 1 (undercloud) [stack@undercloud ~]$
This is more of a syntax error where it is not able to understand the passed VIP data file:
undercloud) [stack@undercloud ~]$ cat /home/stack/templates/vip-data-default-network-isolation.yaml - dns_name: overcloud network: internal_api - dns_name: overcloud network: external - dns_name: overcloud network: ctlplane - dns_name: overcloud network: oc_provisioning - dns_name: overcloud network: j3mgmt
Please advise, also please note that similar templates generated in prior releases such as train/ussuri works perfectly.
Please check the list of *templates *files:
drwxr-xr-x. 2 stack stack 68 May 30 09:22 environments -rw-r--r--. 1 stack stack 265 May 27 13:47 environment.yaml -rw-rw-r--. 1 stack stack 297 May 27 13:47 init-repo.yaml -rw-r--r--. 1 stack stack 570 May 27 13:47 ironic-config.yaml drwxrwxr-x. 4 stack stack 4096 May 27 13:53 network -rw-r--r--. 1 stack stack 6370 May 27 14:26 network_data.yaml -rw-r--r--. 1 stack stack 11137 May 27 13:53 roles_data.yaml -rw-r--r--. 1 stack stack 234 May 30 09:23 vip-data-default-network-isolation.yaml
(undercloud) [stack@undercloud templates]$ cat environment.yaml
parameter_defaults: OvercloudControllerFlavor: control OvercloudComputeFlavor: compute ControllerCount: 3 ComputeCount: 1 TimeZone: 'Asia/Kolkata' NtpServer: ['30.30.30.3'] NeutronBridgeMappings: datacentre:br-tenant NeutronFlatNetworks: datacentre (undercloud) [stack@undercloud templates]$
(undercloud) [stack@undercloud templates]$ cat ironic-config.yaml
parameter_defaults: NovaSchedulerDefaultFilters: - AggregateInstanceExtraSpecsFilter - AvailabilityZoneFilter - ComputeFilter - ComputeCapabilitiesFilter - ImagePropertiesFilter IronicEnabledHardwareTypes: - ipmi - redfish IronicEnabledPowerInterfaces: - ipmitool - redfish IronicEnabledManagementInterfaces: - ipmitool - redfish IronicCleaningDiskErase: metadata IronicIPXEEnabled: true IronicInspectorSubnets: - ip_range: 172.23.3.100,172.23.3.150
(undercloud) [stack@undercloud templates]$ cat network_data.yaml
- name: J3Mgmt name_lower: j3mgmt vip: true vlan: 400 ipv6: true ipv6_subnet: 'fd80:fd00:fd00:4000::/64' ipv6_allocation_pools: [{'start': 'fd80:fd00:fd00:4000::10', 'end': 'fd80:fd00:fd00:4000:ffff:ffff:ffff:fffe'}] mtu: 9000
- name: InternalApi name_lower: internal_api vip: true vlan: 418 ipv6: true ipv6_subnet: 'fd00:fd00:fd00:2000::/64' ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:2000::10', 'end': 'fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe'}] mtu: 9000
- name: External vip: true name_lower: external vlan: 408 ipv6: true gateway_ipv6: 'fd00:fd00:fd00:9900::1' ipv6_subnet: 'fd00:fd00:fd00:9900::/64' ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:9900::10', 'end': 'fd00:fd00:fd00:9900:ffff:ffff:ffff:fffe'}] mtu: 9000
- name: OCProvisioning vip: true name_lower: oc_provisioning vlan: 412 ip_subnet: '172.23.3.0/24' allocation_pools: [{'start': '172.23.3.10', 'end': '172.23.3.50'}] mtu: 9000
(undercloud) [stack@undercloud templates]$ cat roles_data.yaml
############################################################################### # File generated by TripleO
###############################################################################
############################################################################### # Role: Controller #
############################################################################### - name: Controller description: | Controller role that has all the controller services loaded and handles Database, Messaging, and Network functions. CountDefault: 1 tags: - primary - controller # Create external Neutron bridge for SNAT (and floating IPs when using # ML2/OVS without DVR) - external_bridge networks: External: subnet: external_subnet InternalApi: subnet: internal_api_subnet OCProvisioning: subnet: oc_provisioning_subnet J3Mgmt: subnet: j3mgmt_subnet
# For systems with both IPv4 and IPv6, you may specify a gateway network for # each, such as ['ControlPlane', 'External'] default_route_networks: ['External'] HostnameFormatDefault: '%stackname%-controller-%index%' RoleParametersDefault: OVNCMSOptions: "enable-chassis-as-gw" # Deprecated & backward-compatible values (FIXME: Make parameters consistent) # Set uses_deprecated_params to True if any deprecated params are used. uses_deprecated_params: True deprecated_param_extraconfig: 'controllerExtraConfig' deprecated_param_flavor: 'OvercloudControlFlavor' deprecated_param_image: 'controllerImage' deprecated_nic_config_name: 'controller.yaml' update_serial: 1 ServicesDefault: - OS::TripleO::Services::Aide - OS::TripleO::Services::AodhApi - OS::TripleO::Services::AodhEvaluator
.. .
..############################################################################### # Role: Compute #
############################################################################### - name: Compute description: | Basic Compute Node role CountDefault: 1 # Create external Neutron bridge (unset if using ML2/OVS without DVR) tags: - compute - external_bridge networks: InternalApi: subnet: internal_api_subnet J3Mgmt: subnet: j3mgmt_subnet HostnameFormatDefault: '%stackname%-novacompute-%index%' RoleParametersDefault: FsAioMaxNumber: 1048576 TunedProfileName: "virtual-host" # Deprecated & backward-compatible values (FIXME: Make parameters consistent) # Set uses_deprecated_params to True if any deprecated params are used. # These deprecated_params only need to be used for existing roles and not for # composable roles. uses_deprecated_params: True deprecated_param_image: 'NovaImage' deprecated_param_extraconfig: 'NovaComputeExtraConfig' deprecated_param_metadata: 'NovaComputeServerMetadata' deprecated_param_scheduler_hints: 'NovaComputeSchedulerHints' deprecated_param_ips: 'NovaComputeIPs' deprecated_server_resource_name: 'NovaCompute'
deprecated_nic_config_name: 'compute.yaml' update_serial: 25 ServicesDefault: - OS::TripleO::Services::Aide - OS::TripleO::Services::AuditD - OS::TripleO::Services::BootParams
(undercloud) [stack@undercloud templates]$ cat environments/network-environment.yaml
#This file is an example of an environment file for defining the isolated #networks and related parameters. resource_registry: # Network Interface templates to use (these files must exist). You can # override these by including one of the net-*.yaml environment files, # such as net-bond-with-vlans.yaml, or modifying the list here. # Port assignments for the Controller OS::TripleO::Controller::Net::SoftwareConfig: OS::Heat::None # Port assignments for the Compute OS::TripleO::Compute::Net::SoftwareConfig: OS::Heat::None
parameter_defaults: # This section is where deployment-specific configuration is done # ServiceNetMap: IronicApiNetwork: oc_provisioning IronicNetwork: oc_provisioning
# This section is where deployment-specific configuration is done ControllerNetworkConfigTemplate: 'templates/bonds_vlans/bonds_vlans.j2' ComputeNetworkConfigTemplate: 'templates/bonds_vlans/bonds_vlans.j2'
# Customize the IP subnet to match the local environment J3MgmtNetCidr: 'fd80:fd00:fd00:4000::/64' # Customize the IP range to use for static IPs and VIPs J3MgmtAllocationPools: [{'start': 'fd80:fd00:fd00:4000::10', 'end': 'fd80:fd00:fd00:4000:ffff:ffff:ffff:fffe'}] # Customize the VLAN ID to match the local environment J3MgmtNetworkVlanID: 400
# Customize the IP subnet to match the local environment InternalApiNetCidr: 'fd00:fd00:fd00:2000::/64' # Customize the IP range to use for static IPs and VIPs InternalApiAllocationPools: [{'start': 'fd00:fd00:fd00:2000::10', 'end': 'fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe'}] # Customize the VLAN ID to match the local environment InternalApiNetworkVlanID: 418
# Customize the IP subnet to match the local environment ExternalNetCidr: 'fd00:fd00:fd00:9900::/64' # Customize the IP range to use for static IPs and VIPs # Leave room if the external network is also used for floating IPs ExternalAllocationPools: [{'start': 'fd00:fd00:fd00:9900::10', 'end': 'fd00:fd00:fd00:9900:ffff:ffff:ffff:fffe'}] # Gateway router for routable networks ExternalInterfaceDefaultRoute: 'fd00:fd00:fd00:9900::1' # Customize the VLAN ID to match the local environment ExternalNetworkVlanID: 408
# Customize the IP subnet to match the local environment OCProvisioningNetCidr: '172.23.3.0/24' # Customize the IP range to use for static IPs and VIPs OCProvisioningAllocationPools: [{'start': '172.23.3.10', 'end': '172.23.3.50'}] # Customize the VLAN ID to match the local environment OCProvisioningNetworkVlanID: 412
# List of Neutron network types for tenant networks (will be used in order) NeutronNetworkType: 'geneve,vlan' # Neutron VLAN ranges per network, for example 'datacentre:1:499,tenant:500:1000': NeutronNetworkVLANRanges: 'datacentre:1:1000' # Customize bonding options, e.g. "mode=4 lacp_rate=1 updelay=1000 miimon=100" # for Linux bonds w/LACP, or "bond_mode=active-backup" for OVS active/backup. BondInterfaceOvsOptions: "bond_mode=active-backup"
(undercloud) [stack@undercloud templates]$
(undercloud) [stack@undercloud templates]$ cat environments/network-isolation.yaml
# NOTE: This template is now deprecated, and is only included for compatibility # when upgrading a deployment where this template was originally used. For new # deployments, set "ipv6: true" on desired networks in network_data.yaml, and # include network-isolation.yaml. # # Enable the creation of Neutron networks for isolated Overcloud # traffic and configure each role to assign ports (related # to that role) on these networks. resource_registry: # networks as defined in network_data.yaml OS::TripleO::Network::J3Mgmt: ../network/j3mgmt_v6.yaml OS::TripleO::Network::InternalApi: ../network/internal_api_v6.yaml OS::TripleO::Network::External: ../network/external_v6.yaml OS::TripleO::Network::OCProvisioning: ../network/oc_provisioning.yaml
# Port assignments for the VIPs OS::TripleO::Network::Ports::J3MgmtVipPort: ../network/ports/j3mgmt_v6.yaml OS::TripleO::Network::Ports::InternalApiVipPort: ../network/ports/internal_api_v6.yaml OS::TripleO::Network::Ports::ExternalVipPort: ../network/ports/external_v6.yaml OS::TripleO::Network::Ports::OCProvisioningVipPort: ../network/ports/oc_provisioning.yaml
# Port assignments by role, edit role definition to assign networks to roles. # Port assignments for the Controller OS::TripleO::Controller::Ports::J3MgmtPort: ../network/ports/j3mgmt_v6.yaml OS::TripleO::Controller::Ports::InternalApiPort: ../network/ports/internal_api_v6.yaml OS::TripleO::Controller::Ports::ExternalPort: ../network/ports/external_v6.yaml OS::TripleO::Controller::Ports::OCProvisioningPort: ../network/ports/oc_provisioning.yaml # Port assignments for the Compute OS::TripleO::Compute::Ports::J3MgmtPort: ../network/ports/j3mgmt_v6.yaml OS::TripleO::Compute::Ports::InternalApiPort: ../network/ports/internal_api_v6.yaml
parameter_defaults: # Enable IPv6 environment for Manila ManilaIPv6: True
(undercloud) [stack@undercloud templates]$
On Tue, May 24, 2022 at 5:04 PM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Thanks, I'll check them out. will let you know in case it works out.
On Tue, May 24, 2022 at 2:37 PM Swogat Pradhan <swogatpradhan22@gmail.com> wrote:
Hi, Please find the below templates: These are for openstack wallaby release:
(undercloud) [stack@hkg2director workplace]$ cat custom_network_data.yaml - name: Storage name_lower: storage vip: true mtu: 1500 subnets: storage_subnet: ip_subnet: 172.25.202.0/26 allocation_pools: - start: 172.25.202.6 end: 172.25.202.20 vlan: 1105 - name: StorageMgmt name_lower: storage_mgmt vip: true mtu: 1500 subnets: storage_mgmt_subnet: ip_subnet: 172.25.202.64/26 allocation_pools: - start: 172.25.202.72 end: 172.25.202.87 vlan: 1106 - name: InternalApi name_lower: internal_api vip: true mtu: 1500 subnets: internal_api_subnet: ip_subnet: 172.25.201.192/26 allocation_pools: - start: 172.25.201.198 end: 172.25.201.212 vlan: 1104 - name: Tenant vip: false # Tenant network does not use VIPs mtu: 1500 name_lower: tenant subnets: tenant_subnet: ip_subnet: 172.25.202.128/26 allocation_pools: - start: 172.25.202.135 end: 172.25.202.150 vlan: 1108 - name: External name_lower: external vip: true mtu: 1500 subnets: external_subnet: ip_subnet: 172.25.201.128/26 allocation_pools: - start: 172.25.201.135 end: 172.25.201.150 gateway_ip: 172.25.201.129 vlan: 1103
(undercloud) [stack@hkg2director workplace]$ cat custom_vip_data.yaml - network: ctlplane #dns_name: overcloud ip_address: 172.25.201.91 subnet: ctlplane-subnet - network: external #dns_name: overcloud ip_address: 172.25.201.150 subnet: external_subnet - network: internal_api #dns_name: overcloud ip_address: 172.25.201.250 subnet: internal_api_subnet - network: storage #dns_name: overcloud ip_address: 172.25.202.50 subnet: storage_subnet - network: storage_mgmt #dns_name: overcloud ip_address: 172.25.202.90 subnet: storage_mgmt_subnet
(undercloud) [stack@hkg2director workplace]$ cat overcloud-baremetal-deploy.yaml - name: Controller count: 4 defaults: networks: - network: ctlplane vif: true - network: external subnet: external_subnet - network: internal_api subnet: internal_api_subnet - network: storage subnet: storage_subnet - network: storage_mgmt subnet: storage_mgmt_subnet - network: tenant subnet: tenant_subnet network_config: template: /home/stack/templates/controller.j2 default_route_network: - external instances: - hostname: overcloud-controller-0 name: dc1-controller2 #provisioned: false - hostname: overcloud-controller-1 name: dc2-controller2 #provisioned: false - hostname: overcloud-controller-2 name: dc1-controller1 #provisioned: false - hostname: overcloud-controller-no-ceph-3 name: dc2-ceph2 #provisioned: false #- hostname: overcloud-controller-3 #name: dc2-compute3 #provisioned: false
- name: Compute count: 5 defaults: networks: - network: ctlplane vif: true - network: internal_api subnet: internal_api_subnet - network: tenant subnet: tenant_subnet - network: storage subnet: storage_subnet network_config: template: /home/stack/templates/compute.j2 instances: - hostname: overcloud-novacompute-0 name: dc2-compute1 #provisioned: false - hostname: overcloud-novacompute-1 name: dc2-ceph1 #provisioned: false - hostname: overcloud-novacompute-2 name: dc1-compute1 #provisioned: false - hostname: overcloud-novacompute-3 name: dc1-compute2 #provisioned: false - hostname: overcloud-novacompute-4 name: dc2-compute3 #provisioned: false
- name: CephStorage count: 4 defaults: networks: - network: ctlplane vif: true - network: internal_api subnet: internal_api_subnet - network: storage subnet: storage_subnet - network: storage_mgmt subnet: storage_mgmt_subnet network_config: template: /home/stack/templates/ceph-storage.j2 instances: - hostname: overcloud-cephstorage-0 name: dc2-controller1 #provisioned: false # - hostname: overcloud-cephstorage-1 # name: dc2-ceph2 - hostname: overcloud-cephstorage-1 name: dc1-ceph1 # provisioned: false - hostname: overcloud-cephstorage-2 name: dc1-ceph2 #provisioned: false - hostname: overcloud-cephstorage-3 name: dc2-compute2 #provisioned: false
You must use these templates to provision network, vip and nodes. You must use the output files generated during the provisioning step in openstack overcloud deploy command using -e parameter.
With regards, Swogat Pradhan
On Mon, May 23, 2022 at 8:33 PM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Hi Swogat, I tried checking your solution and my templates but could not relate much. But issue seems the same
http://lists.openstack.org/pipermail/openstack-discuss/2022-May/028401.html
I tried somemore ways but looks like some issue with templates. Can you please share the templates used to deploy the overcloud.
Mysetup have 3 controller and 1 compute.
Thanks once again for reading my mail.
Waiting for your reply.
-Lokendra
On Fri, 20 May 2022, 08:25 Swogat Pradhan, <swogatpradhan22@gmail.com> wrote:
Hi, Yes I was able to find the issue and fix it. The issue was with the overcloud-baremetal-deployed.yaml file i was trying to provision controller-0, controller-1 and controller-3 and kept controller-2 aside for later, but the tripleo scripts are built in such a way that they were taking controller- 0, 1 and 2 inplace of controller-3, so the network ports and vip were created for controller 0,1 and 2 but not for 3 , so this error was popping off. Also i would request you to check the jinja nic templates and once the node provisioning is done check the /etc/os-net-config/config.json/yaml file for syntax if using bonded nic template. If you need any more infor please let me know.
With regards, Swogat Pradhan
On Fri, May 20, 2022 at 8:01 AM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Hi Swogat, Thanks for raising this issue. Did you find any solution? to this problem ?
Please let me know it might be helpful
On Tue, Apr 19, 2022 at 12:43 PM Swogat Pradhan < swogatpradhan22@gmail.com> wrote:
> Hi, > I am currently trying to deploy openstack wallaby using tripleo arch. > I created the network jinja templates, ran the following commands > also: > > #openstack overcloud network provision --stack overcloud --output > networks-deployed-environment.yaml custom_network_data.yaml > # openstack overcloud network vip provision --stack overcloud > --output vip-deployed-environment.yaml custom_vip_data.yaml > # openstack overcloud node provision --stack overcloud > --overcloud-ssh-key /home/stack/sshkey/id_rsa > overcloud-baremetal-deploy.yaml > > and used the environment files in the openstack overcloud deploy > command: > > (undercloud) [stack@hkg2director ~]$ cat deploy.sh > #!/bin/bash > THT=/usr/share/openstack-tripleo-heat-templates/ > CNF=/home/stack/ > openstack overcloud deploy --templates $THT \ > -r $CNF/templates/roles_data.yaml \ > -n $CNF/workplace/custom_network_data.yaml \ > -e ~/containers-prepare-parameter.yaml \ > -e $CNF/templates/node-info.yaml \ > -e $CNF/templates/scheduler-hints.yaml \ > -e $CNF/workplace/networks-deployed-environment.yaml \ > -e $CNF/workplace/vip-deployed-environment.yaml \ > -e $CNF/workplace/overcloud-baremetal-deployed.yaml \ > -e $CNF/workplace/custom-net-bond-with-vlans.yaml > > Now when i run the ./deploy.sh script i encounter an error stating: > > ERROR openstack [-] Resource > OS::TripleO::Network::Ports::ControlPlaneVipPort maps to type > OS::Neutron::Port and the Neutron service is not available when using > ephemeral Heat. The generated environments from 'openstack overcloud > baremetal provision' and 'openstack overcloud network provision' must be > included with the deployment command.: > tripleoclient.exceptions.InvalidConfiguration: Resource > OS::TripleO::Network::Ports::ControlPlaneVipPort maps to type > OS::Neutron::Port and the Neutron service is not available when using > ephemeral Heat. The generated environments from 'openstack overcloud > baremetal provision' and 'openstack overcloud network provision' must be > included with the deployment command. > 2022-04-19 13:47:16.582 735924 INFO osc_lib.shell [-] END return > value: 1 > > Can someone tell me where the mistake is? > > With regards, > Swogat Pradhan >
Hi Lokendra, You need to generate another file also in the following step: openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa overcloud-baremetal-deploy.yaml also you need to pass another parameter --network-config. example: openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa *--network-config* *--output overcloud-baremetal-deployed.yaml* overcloud-baremetal-deploy.yaml And then all these output files will be passed on to the openstack overcloud deploy command. NOTE: when passing --network-config parameter in node provision step, it creates a directory in /etc/os-net-config and in it creates a file config.yaml, do check the indentation of that file. (in my case the indentation was wrong when i was using bondind everytime, so i had to manually change the script and run a while loop and then my node provision step was successful) On Tue, May 31, 2022 at 8:59 AM Lokendra Rathour <lokendrarathour@gmail.com> wrote:
Hi Swogat, I tried generating the scripts as used by you in your deployments using the
#openstack overcloud network provision --stack overcloud --output networks-deployed-environment.yaml custom_network_data.yaml # openstack overcloud network vip provision --stack overcloud --output vip-deployed-environment.yaml custom_vip_data.yaml # openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa overcloud-baremetal-deploy.yaml
and used the first two in the final deployment script, but it gives the error:
heatclient.exc.HTTPInternalServerError: ERROR: Internal Error 2022-05-30 14:14:39.772 479668 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud Traceback (most recent call last):\n', ' File "/usr/lib/python3.6/ted_stack\n nested_stack.validate()\n', ' File "/usr/lib/python3.6/site-packages/osprofiler/profiler.py", line 160, in wrapper\n result = f(*args, ine 969, in validate\n result = res.validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/openstack/neutron/port.py", line 454site-packages/heat/engine/resources/openstack/neutron/neutron.py", line 43, in validate\n res = super(NeutronResource, self).validate()\n', ' File "/un return self.validate_template()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resource.py", line 1882, in validate_template\n self.t.rpy", line 200, in _validate_service_availability\n raise ex\n', 'heat.common.exception.ResourceTypeUnavailable: HEAT-E99001 Service neutron is not avaieutron network endpoint is not in service catalog.\n', '\nDuring handling of the above exception, another exception occurred:\n\n', 'Traceback (most recens/stack_resource.py", line 75, in validate_nested_stack\n nested_stack.validate()\n', ' File "/usr/lib/python3.6/site-packages/osprofiler/profiler.py"thon3.6/site-packages/heat/engine/stack.py", line 969, in validate\n result = res.validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/ateResource, self).validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/stack_resource.py", line 65, in validate\n self.validources/stack_resource.py", line 81, in validate_nested_stack\n ex, path=[self.stack.t.RESOURCES, path])\n', 'heat.common.exception.StackValidationFaileeploy/overcloud/tripleo-heat-templates/deployed-server/deployed-server.yaml>: HEAT-E99001 Service neutron is not available for resource type OS::TripleO::vice catalog.\n', '\nDuring handling of the above exception, another exception occurred:\n\n', 'Traceback (most recent call last):\n', ' File "/usr/lib/pline 320, in validate_nested_stack\n nested_stack.validate()\n', ' File "/usr/lib/python3.6/site-packages/osprofiler/profiler.py", line 160, in wrappe/heat/engine/stack.py", line 969, in validate\n result = res.validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/template_relidate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/stack_resource.py", line 65, in validate\n self.validate_nested_stack()\n'.py", line 81, in validate_nested_stack\n ex, path=[self.stack.t.RESOURCES, path])\n', 'heat.common.exception.StackValidationFailed: ResourceTypeUnavaimplates/puppet/compute-role.yaml>.resources.NovaCompute<file:///home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/deployed-server/deployed-servpleO::DeployedServer::ControlPlanePort, reason: neutron network endpoint is not in service catalog.\n', '\nDuring handling of the above exception, another/lib/python3.6/site-packages/heat/common/context.py", line 416, in wrapped\n return func(self, ctx, *args, **kwargs)\n', ' File "/usr/lib/python3.6/sirce_name, template_id)\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/service.py", line 756, in _parse_template_and_validate_stack\n stack.v line 160, in wrapper\n result = f(*args, **kwargs)\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/stack.py", line 969, in validate\n resesources/stack_resource.py", line 65, in validate\n self.validate_nested_stack()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/oph=[self.stack.t.RESOURCES, path])\n', 'heat.common.exception.StackValidationFailed: ResourceTypeUnavailable: resources.Compute<nested_stack>.resources.0<fte-role.yaml>.resources.NovaCompute<file:///home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/deployed-server/deployed-server.yaml>: HEAT-E9900::ControlPlanePort, reason: neutron network endpoint is not in service catalog.\n'].
Request you to check once, please.
On Mon, May 30, 2022 at 11:06 AM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Hi Swogat, Thanks once again.
with the files as shown below I am running the overcloud deploy for wallaby using this command:
(undercloud) [stack@undercloud ~]$ cat deploy_overcloud_working_1.sh openstack overcloud deploy --templates \ -n /home/stack/templates/network_data.yaml \ -r /home/stack/templates/roles_data.yaml \ -e /home/stack/templates/environment.yaml \ -e /home/stack/templates/environments/network-isolation.yaml \ -e /home/stack/templates/environments/network-environment.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-conductor.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-inspector.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-overcloud.yaml \ -e /home/stack/templates/ironic-config.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/docker-ha.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/podman.yaml \ -e /home/stack/containers-prepare-parameter.yaml (undercloud) [stack@undercloud ~]$
This deployment is on ipv6 using triple0 wallaby, templates, as mentioned below, are generated using rendering steps and the network_data.yaml the roles_data.yaml Steps used to render the templates: cd /usr/share/openstack-tripleo-heat-templates/ ./tools/process-templates.py -o ~/openstack-tripleo-heat-templates-rendered_at_wallaby -n /home/stack/templates/network_data.yaml -r /home/stack/templates/roles_data.yaml
*Now if i try adding the related to VIP port I do get the error as:*
2022-05-30 10:37:12.792 979387 WARNING tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] rendering j2 template to file: /home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/puppet/controller-role.yaml 2022-05-30 10:37:12.792 979387 WARNING tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] rendering j2 template to file: /home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/puppet/compute-role.yaml 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] Exception occured while running the command: ValueError: The environment is not a valid YAML mapping data type. 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud Traceback (most recent call last): 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/command.py", line 34, in run 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud super(Command, self).run(parsed_args) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/osc_lib/command/command.py", line 39, in run 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud return super(Command, self).run(parsed_args) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/cliff/command.py", line 185, in run 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud return_code = self.take_action(parsed_args) or 0 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", line 1189, in take_action 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud stack, parsed_args, new_tht_root, user_tht_root) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", line 227, in create_env_files 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud created_env_files, parsed_args, new_tht_root, user_tht_root) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", line 204, in build_image_params 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud cleanup=(not parsed_args.no_cleanup)) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/utils.py", line 1929, in process_multiple_environments 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud env_path=env_path, include_env_in_files=include_env_in_files) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/heatclient/common/template_utils.py", line 326, in process_environment_and_files 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud env = environment_format.parse(raw_env) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/heatclient/common/environment_format.py", line 50, in parse 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud raise ValueError(_('The environment is not a valid ' 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud ValueError: The environment is not a valid YAML mapping data type. 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud 2022-05-30 10:37:14.457 979387 ERROR openstack [-] The environment is not a valid YAML mapping data type. 2022-05-30 10:37:14.457 979387 INFO osc_lib.shell [-] END return value: 1 (undercloud) [stack@undercloud ~]$
This is more of a syntax error where it is not able to understand the passed VIP data file:
undercloud) [stack@undercloud ~]$ cat /home/stack/templates/vip-data-default-network-isolation.yaml - dns_name: overcloud network: internal_api - dns_name: overcloud network: external - dns_name: overcloud network: ctlplane - dns_name: overcloud network: oc_provisioning - dns_name: overcloud network: j3mgmt
Please advise, also please note that similar templates generated in prior releases such as train/ussuri works perfectly.
Please check the list of *templates *files:
drwxr-xr-x. 2 stack stack 68 May 30 09:22 environments -rw-r--r--. 1 stack stack 265 May 27 13:47 environment.yaml -rw-rw-r--. 1 stack stack 297 May 27 13:47 init-repo.yaml -rw-r--r--. 1 stack stack 570 May 27 13:47 ironic-config.yaml drwxrwxr-x. 4 stack stack 4096 May 27 13:53 network -rw-r--r--. 1 stack stack 6370 May 27 14:26 network_data.yaml -rw-r--r--. 1 stack stack 11137 May 27 13:53 roles_data.yaml -rw-r--r--. 1 stack stack 234 May 30 09:23 vip-data-default-network-isolation.yaml
(undercloud) [stack@undercloud templates]$ cat environment.yaml
parameter_defaults: OvercloudControllerFlavor: control OvercloudComputeFlavor: compute ControllerCount: 3 ComputeCount: 1 TimeZone: 'Asia/Kolkata' NtpServer: ['30.30.30.3'] NeutronBridgeMappings: datacentre:br-tenant NeutronFlatNetworks: datacentre (undercloud) [stack@undercloud templates]$
(undercloud) [stack@undercloud templates]$ cat ironic-config.yaml
parameter_defaults: NovaSchedulerDefaultFilters: - AggregateInstanceExtraSpecsFilter - AvailabilityZoneFilter - ComputeFilter - ComputeCapabilitiesFilter - ImagePropertiesFilter IronicEnabledHardwareTypes: - ipmi - redfish IronicEnabledPowerInterfaces: - ipmitool - redfish IronicEnabledManagementInterfaces: - ipmitool - redfish IronicCleaningDiskErase: metadata IronicIPXEEnabled: true IronicInspectorSubnets: - ip_range: 172.23.3.100,172.23.3.150
(undercloud) [stack@undercloud templates]$ cat network_data.yaml
- name: J3Mgmt name_lower: j3mgmt vip: true vlan: 400 ipv6: true ipv6_subnet: 'fd80:fd00:fd00:4000::/64' ipv6_allocation_pools: [{'start': 'fd80:fd00:fd00:4000::10', 'end': 'fd80:fd00:fd00:4000:ffff:ffff:ffff:fffe'}] mtu: 9000
- name: InternalApi name_lower: internal_api vip: true vlan: 418 ipv6: true ipv6_subnet: 'fd00:fd00:fd00:2000::/64' ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:2000::10', 'end': 'fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe'}] mtu: 9000
- name: External vip: true name_lower: external vlan: 408 ipv6: true gateway_ipv6: 'fd00:fd00:fd00:9900::1' ipv6_subnet: 'fd00:fd00:fd00:9900::/64' ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:9900::10', 'end': 'fd00:fd00:fd00:9900:ffff:ffff:ffff:fffe'}] mtu: 9000
- name: OCProvisioning vip: true name_lower: oc_provisioning vlan: 412 ip_subnet: '172.23.3.0/24' allocation_pools: [{'start': '172.23.3.10', 'end': '172.23.3.50'}] mtu: 9000
(undercloud) [stack@undercloud templates]$ cat roles_data.yaml
############################################################################### # File generated by TripleO
###############################################################################
############################################################################### # Role: Controller #
############################################################################### - name: Controller description: | Controller role that has all the controller services loaded and handles Database, Messaging, and Network functions. CountDefault: 1 tags: - primary - controller # Create external Neutron bridge for SNAT (and floating IPs when using # ML2/OVS without DVR) - external_bridge networks: External: subnet: external_subnet InternalApi: subnet: internal_api_subnet OCProvisioning: subnet: oc_provisioning_subnet J3Mgmt: subnet: j3mgmt_subnet
# For systems with both IPv4 and IPv6, you may specify a gateway network for # each, such as ['ControlPlane', 'External'] default_route_networks: ['External'] HostnameFormatDefault: '%stackname%-controller-%index%' RoleParametersDefault: OVNCMSOptions: "enable-chassis-as-gw" # Deprecated & backward-compatible values (FIXME: Make parameters consistent) # Set uses_deprecated_params to True if any deprecated params are used. uses_deprecated_params: True deprecated_param_extraconfig: 'controllerExtraConfig' deprecated_param_flavor: 'OvercloudControlFlavor' deprecated_param_image: 'controllerImage' deprecated_nic_config_name: 'controller.yaml' update_serial: 1 ServicesDefault: - OS::TripleO::Services::Aide - OS::TripleO::Services::AodhApi - OS::TripleO::Services::AodhEvaluator
.. .
..############################################################################### # Role: Compute #
############################################################################### - name: Compute description: | Basic Compute Node role CountDefault: 1 # Create external Neutron bridge (unset if using ML2/OVS without DVR) tags: - compute - external_bridge networks: InternalApi: subnet: internal_api_subnet J3Mgmt: subnet: j3mgmt_subnet HostnameFormatDefault: '%stackname%-novacompute-%index%' RoleParametersDefault: FsAioMaxNumber: 1048576 TunedProfileName: "virtual-host" # Deprecated & backward-compatible values (FIXME: Make parameters consistent) # Set uses_deprecated_params to True if any deprecated params are used. # These deprecated_params only need to be used for existing roles and not for # composable roles. uses_deprecated_params: True deprecated_param_image: 'NovaImage' deprecated_param_extraconfig: 'NovaComputeExtraConfig' deprecated_param_metadata: 'NovaComputeServerMetadata' deprecated_param_scheduler_hints: 'NovaComputeSchedulerHints' deprecated_param_ips: 'NovaComputeIPs' deprecated_server_resource_name: 'NovaCompute'
deprecated_nic_config_name: 'compute.yaml' update_serial: 25 ServicesDefault: - OS::TripleO::Services::Aide - OS::TripleO::Services::AuditD - OS::TripleO::Services::BootParams
(undercloud) [stack@undercloud templates]$ cat environments/network-environment.yaml
#This file is an example of an environment file for defining the isolated #networks and related parameters. resource_registry: # Network Interface templates to use (these files must exist). You can # override these by including one of the net-*.yaml environment files, # such as net-bond-with-vlans.yaml, or modifying the list here. # Port assignments for the Controller OS::TripleO::Controller::Net::SoftwareConfig: OS::Heat::None # Port assignments for the Compute OS::TripleO::Compute::Net::SoftwareConfig: OS::Heat::None
parameter_defaults: # This section is where deployment-specific configuration is done # ServiceNetMap: IronicApiNetwork: oc_provisioning IronicNetwork: oc_provisioning
# This section is where deployment-specific configuration is done ControllerNetworkConfigTemplate: 'templates/bonds_vlans/bonds_vlans.j2' ComputeNetworkConfigTemplate: 'templates/bonds_vlans/bonds_vlans.j2'
# Customize the IP subnet to match the local environment J3MgmtNetCidr: 'fd80:fd00:fd00:4000::/64' # Customize the IP range to use for static IPs and VIPs J3MgmtAllocationPools: [{'start': 'fd80:fd00:fd00:4000::10', 'end': 'fd80:fd00:fd00:4000:ffff:ffff:ffff:fffe'}] # Customize the VLAN ID to match the local environment J3MgmtNetworkVlanID: 400
# Customize the IP subnet to match the local environment InternalApiNetCidr: 'fd00:fd00:fd00:2000::/64' # Customize the IP range to use for static IPs and VIPs InternalApiAllocationPools: [{'start': 'fd00:fd00:fd00:2000::10', 'end': 'fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe'}] # Customize the VLAN ID to match the local environment InternalApiNetworkVlanID: 418
# Customize the IP subnet to match the local environment ExternalNetCidr: 'fd00:fd00:fd00:9900::/64' # Customize the IP range to use for static IPs and VIPs # Leave room if the external network is also used for floating IPs ExternalAllocationPools: [{'start': 'fd00:fd00:fd00:9900::10', 'end': 'fd00:fd00:fd00:9900:ffff:ffff:ffff:fffe'}] # Gateway router for routable networks ExternalInterfaceDefaultRoute: 'fd00:fd00:fd00:9900::1' # Customize the VLAN ID to match the local environment ExternalNetworkVlanID: 408
# Customize the IP subnet to match the local environment OCProvisioningNetCidr: '172.23.3.0/24' # Customize the IP range to use for static IPs and VIPs OCProvisioningAllocationPools: [{'start': '172.23.3.10', 'end': '172.23.3.50'}] # Customize the VLAN ID to match the local environment OCProvisioningNetworkVlanID: 412
# List of Neutron network types for tenant networks (will be used in order) NeutronNetworkType: 'geneve,vlan' # Neutron VLAN ranges per network, for example 'datacentre:1:499,tenant:500:1000': NeutronNetworkVLANRanges: 'datacentre:1:1000' # Customize bonding options, e.g. "mode=4 lacp_rate=1 updelay=1000 miimon=100" # for Linux bonds w/LACP, or "bond_mode=active-backup" for OVS active/backup. BondInterfaceOvsOptions: "bond_mode=active-backup"
(undercloud) [stack@undercloud templates]$
(undercloud) [stack@undercloud templates]$ cat environments/network-isolation.yaml
# NOTE: This template is now deprecated, and is only included for compatibility # when upgrading a deployment where this template was originally used. For new # deployments, set "ipv6: true" on desired networks in network_data.yaml, and # include network-isolation.yaml. # # Enable the creation of Neutron networks for isolated Overcloud # traffic and configure each role to assign ports (related # to that role) on these networks. resource_registry: # networks as defined in network_data.yaml OS::TripleO::Network::J3Mgmt: ../network/j3mgmt_v6.yaml OS::TripleO::Network::InternalApi: ../network/internal_api_v6.yaml OS::TripleO::Network::External: ../network/external_v6.yaml OS::TripleO::Network::OCProvisioning: ../network/oc_provisioning.yaml
# Port assignments for the VIPs OS::TripleO::Network::Ports::J3MgmtVipPort: ../network/ports/j3mgmt_v6.yaml OS::TripleO::Network::Ports::InternalApiVipPort: ../network/ports/internal_api_v6.yaml OS::TripleO::Network::Ports::ExternalVipPort: ../network/ports/external_v6.yaml OS::TripleO::Network::Ports::OCProvisioningVipPort: ../network/ports/oc_provisioning.yaml
# Port assignments by role, edit role definition to assign networks to roles. # Port assignments for the Controller OS::TripleO::Controller::Ports::J3MgmtPort: ../network/ports/j3mgmt_v6.yaml OS::TripleO::Controller::Ports::InternalApiPort: ../network/ports/internal_api_v6.yaml OS::TripleO::Controller::Ports::ExternalPort: ../network/ports/external_v6.yaml OS::TripleO::Controller::Ports::OCProvisioningPort: ../network/ports/oc_provisioning.yaml # Port assignments for the Compute OS::TripleO::Compute::Ports::J3MgmtPort: ../network/ports/j3mgmt_v6.yaml OS::TripleO::Compute::Ports::InternalApiPort: ../network/ports/internal_api_v6.yaml
parameter_defaults: # Enable IPv6 environment for Manila ManilaIPv6: True
(undercloud) [stack@undercloud templates]$
On Tue, May 24, 2022 at 5:04 PM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Thanks, I'll check them out. will let you know in case it works out.
On Tue, May 24, 2022 at 2:37 PM Swogat Pradhan < swogatpradhan22@gmail.com> wrote:
Hi, Please find the below templates: These are for openstack wallaby release:
(undercloud) [stack@hkg2director workplace]$ cat custom_network_data.yaml - name: Storage name_lower: storage vip: true mtu: 1500 subnets: storage_subnet: ip_subnet: 172.25.202.0/26 allocation_pools: - start: 172.25.202.6 end: 172.25.202.20 vlan: 1105 - name: StorageMgmt name_lower: storage_mgmt vip: true mtu: 1500 subnets: storage_mgmt_subnet: ip_subnet: 172.25.202.64/26 allocation_pools: - start: 172.25.202.72 end: 172.25.202.87 vlan: 1106 - name: InternalApi name_lower: internal_api vip: true mtu: 1500 subnets: internal_api_subnet: ip_subnet: 172.25.201.192/26 allocation_pools: - start: 172.25.201.198 end: 172.25.201.212 vlan: 1104 - name: Tenant vip: false # Tenant network does not use VIPs mtu: 1500 name_lower: tenant subnets: tenant_subnet: ip_subnet: 172.25.202.128/26 allocation_pools: - start: 172.25.202.135 end: 172.25.202.150 vlan: 1108 - name: External name_lower: external vip: true mtu: 1500 subnets: external_subnet: ip_subnet: 172.25.201.128/26 allocation_pools: - start: 172.25.201.135 end: 172.25.201.150 gateway_ip: 172.25.201.129 vlan: 1103
(undercloud) [stack@hkg2director workplace]$ cat custom_vip_data.yaml - network: ctlplane #dns_name: overcloud ip_address: 172.25.201.91 subnet: ctlplane-subnet - network: external #dns_name: overcloud ip_address: 172.25.201.150 subnet: external_subnet - network: internal_api #dns_name: overcloud ip_address: 172.25.201.250 subnet: internal_api_subnet - network: storage #dns_name: overcloud ip_address: 172.25.202.50 subnet: storage_subnet - network: storage_mgmt #dns_name: overcloud ip_address: 172.25.202.90 subnet: storage_mgmt_subnet
(undercloud) [stack@hkg2director workplace]$ cat overcloud-baremetal-deploy.yaml - name: Controller count: 4 defaults: networks: - network: ctlplane vif: true - network: external subnet: external_subnet - network: internal_api subnet: internal_api_subnet - network: storage subnet: storage_subnet - network: storage_mgmt subnet: storage_mgmt_subnet - network: tenant subnet: tenant_subnet network_config: template: /home/stack/templates/controller.j2 default_route_network: - external instances: - hostname: overcloud-controller-0 name: dc1-controller2 #provisioned: false - hostname: overcloud-controller-1 name: dc2-controller2 #provisioned: false - hostname: overcloud-controller-2 name: dc1-controller1 #provisioned: false - hostname: overcloud-controller-no-ceph-3 name: dc2-ceph2 #provisioned: false #- hostname: overcloud-controller-3 #name: dc2-compute3 #provisioned: false
- name: Compute count: 5 defaults: networks: - network: ctlplane vif: true - network: internal_api subnet: internal_api_subnet - network: tenant subnet: tenant_subnet - network: storage subnet: storage_subnet network_config: template: /home/stack/templates/compute.j2 instances: - hostname: overcloud-novacompute-0 name: dc2-compute1 #provisioned: false - hostname: overcloud-novacompute-1 name: dc2-ceph1 #provisioned: false - hostname: overcloud-novacompute-2 name: dc1-compute1 #provisioned: false - hostname: overcloud-novacompute-3 name: dc1-compute2 #provisioned: false - hostname: overcloud-novacompute-4 name: dc2-compute3 #provisioned: false
- name: CephStorage count: 4 defaults: networks: - network: ctlplane vif: true - network: internal_api subnet: internal_api_subnet - network: storage subnet: storage_subnet - network: storage_mgmt subnet: storage_mgmt_subnet network_config: template: /home/stack/templates/ceph-storage.j2 instances: - hostname: overcloud-cephstorage-0 name: dc2-controller1 #provisioned: false # - hostname: overcloud-cephstorage-1 # name: dc2-ceph2 - hostname: overcloud-cephstorage-1 name: dc1-ceph1 # provisioned: false - hostname: overcloud-cephstorage-2 name: dc1-ceph2 #provisioned: false - hostname: overcloud-cephstorage-3 name: dc2-compute2 #provisioned: false
You must use these templates to provision network, vip and nodes. You must use the output files generated during the provisioning step in openstack overcloud deploy command using -e parameter.
With regards, Swogat Pradhan
On Mon, May 23, 2022 at 8:33 PM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Hi Swogat, I tried checking your solution and my templates but could not relate much. But issue seems the same
http://lists.openstack.org/pipermail/openstack-discuss/2022-May/028401.html
I tried somemore ways but looks like some issue with templates. Can you please share the templates used to deploy the overcloud.
Mysetup have 3 controller and 1 compute.
Thanks once again for reading my mail.
Waiting for your reply.
-Lokendra
On Fri, 20 May 2022, 08:25 Swogat Pradhan, <swogatpradhan22@gmail.com> wrote:
Hi, Yes I was able to find the issue and fix it. The issue was with the overcloud-baremetal-deployed.yaml file i was trying to provision controller-0, controller-1 and controller-3 and kept controller-2 aside for later, but the tripleo scripts are built in such a way that they were taking controller- 0, 1 and 2 inplace of controller-3, so the network ports and vip were created for controller 0,1 and 2 but not for 3 , so this error was popping off. Also i would request you to check the jinja nic templates and once the node provisioning is done check the /etc/os-net-config/config.json/yaml file for syntax if using bonded nic template. If you need any more infor please let me know.
With regards, Swogat Pradhan
On Fri, May 20, 2022 at 8:01 AM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
> Hi Swogat, > Thanks for raising this issue. > Did you find any solution? to this problem ? > > Please let me know it might be helpful > > > On Tue, Apr 19, 2022 at 12:43 PM Swogat Pradhan < > swogatpradhan22@gmail.com> wrote: > >> Hi, >> I am currently trying to deploy openstack wallaby using tripleo >> arch. >> I created the network jinja templates, ran the following commands >> also: >> >> #openstack overcloud network provision --stack overcloud --output >> networks-deployed-environment.yaml custom_network_data.yaml >> # openstack overcloud network vip provision --stack overcloud >> --output vip-deployed-environment.yaml custom_vip_data.yaml >> # openstack overcloud node provision --stack overcloud >> --overcloud-ssh-key /home/stack/sshkey/id_rsa >> overcloud-baremetal-deploy.yaml >> >> and used the environment files in the openstack overcloud deploy >> command: >> >> (undercloud) [stack@hkg2director ~]$ cat deploy.sh >> #!/bin/bash >> THT=/usr/share/openstack-tripleo-heat-templates/ >> CNF=/home/stack/ >> openstack overcloud deploy --templates $THT \ >> -r $CNF/templates/roles_data.yaml \ >> -n $CNF/workplace/custom_network_data.yaml \ >> -e ~/containers-prepare-parameter.yaml \ >> -e $CNF/templates/node-info.yaml \ >> -e $CNF/templates/scheduler-hints.yaml \ >> -e $CNF/workplace/networks-deployed-environment.yaml \ >> -e $CNF/workplace/vip-deployed-environment.yaml \ >> -e $CNF/workplace/overcloud-baremetal-deployed.yaml \ >> -e $CNF/workplace/custom-net-bond-with-vlans.yaml >> >> Now when i run the ./deploy.sh script i encounter an error stating: >> >> ERROR openstack [-] Resource >> OS::TripleO::Network::Ports::ControlPlaneVipPort maps to type >> OS::Neutron::Port and the Neutron service is not available when using >> ephemeral Heat. The generated environments from 'openstack overcloud >> baremetal provision' and 'openstack overcloud network provision' must be >> included with the deployment command.: >> tripleoclient.exceptions.InvalidConfiguration: Resource >> OS::TripleO::Network::Ports::ControlPlaneVipPort maps to type >> OS::Neutron::Port and the Neutron service is not available when using >> ephemeral Heat. The generated environments from 'openstack overcloud >> baremetal provision' and 'openstack overcloud network provision' must be >> included with the deployment command. >> 2022-04-19 13:47:16.582 735924 INFO osc_lib.shell [-] END return >> value: 1 >> >> Can someone tell me where the mistake is? >> >> With regards, >> Swogat Pradhan >> > > >
Hi Swogat, Thanks once again for your input it really helped much. instead of running mentioned those three provisioning steps i used alternate method and passed directly in deploy command. now my current deploy command is: openstack overcloud deploy --templates \ --networks-file /home/stack/templates/custom_network_data.yaml \ --vip-file /home/stack/templates/custom_vip_data.yaml \ --baremetal-deployment /home/stack/templates/overcloud-baremetal-deploy.yaml \ --network-config \ -e /home/stack/templates/environment.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-conductor.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-inspector.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-overcloud.yaml \ -e /home/stack/templates/ironic-config.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/docker-ha.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/podman.yaml \ -e /home/stack/containers-prepare-parameter.yaml The files as suggested by you are well created. But once we run the deployment I get this error for all nodes: 0:00:16.064781 | 1.16s 2022-05-31 19:13:00.276954 | 525400ef-b928-9ded-fecc-000000000094 | TASK | Run tripleo_os_net_config_module with network_config 2022-05-31 19:40:30.061582 | 525400ef-b928-9ded-fecc-000000000094 | FATAL | Run tripleo_os_net_config_module with network_config | overcloud-controller-1 | error={"msg": "Data could not be sent to remote host \"30.30.30.117\". Make sure this host can be reached over ssh: ssh: connect to host 30.30.30.117 port 22: No route to host\r\n"} 2022- Baremetal node list are showing in as active. (undercloud) [stack@undercloud ~]$ openstack baremetal node list /usr/lib64/python3.6/site-packages/_yaml/__init__.py:23: DeprecationWarning: The _yaml extension module is now located at yaml._yaml and its location is subject to change. To use the LibYAML-based parser and emitter, import from `yaml`: `from yaml import CLoader as Loader, CDumper as Dumper`. DeprecationWarning +--------------------------------------+--------+--------------------------------------+-------------+--------------------+-------------+ | UUID | Name | Instance UUID | Power State | Provisioning State | Maintenance | +--------------------------------------+--------+--------------------------------------+-------------+--------------------+-------------+ | 1a4d873c-f9f7-4504-a3af-92c11f954171 | node-a | 901453a1-183f-4de8-aaab-0f38be2be455 | power on | active | False | | d18610fc-9532-410c-918e-8efc326c89f8 | node-b | d059b94a-8357-4f8e-a0d8-15a24b0c1afe | power on | active | False | | b69f2d5a-5b18-4453-8843-15c6af79aca0 | node-c | f196ef3a-7950-47b9-a5ae-751f06b18f75 | power on | active | False | | 8a38c584-f812-4ebc-a0b1-4299f0917637 | node-d | 1636517c-2ab2-43d7-8205-9f02c5290207 | power on | active | False | +--------------------------------------+--------+--------------------------------------+-------------+--------------------+-------------+ Some config is missing it seems, please check once and advise. On Tue, May 31, 2022 at 11:40 AM Swogat Pradhan <swogatpradhan22@gmail.com> wrote:
Hi Lokendra, You need to generate another file also in the following step: openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa overcloud-baremetal-deploy.yaml also you need to pass another parameter --network-config. example: openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa *--network-config* *--output overcloud-baremetal-deployed.yaml* overcloud-baremetal-deploy.yaml
And then all these output files will be passed on to the openstack overcloud deploy command. NOTE: when passing --network-config parameter in node provision step, it creates a directory in /etc/os-net-config and in it creates a file config.yaml, do check the indentation of that file. (in my case the indentation was wrong when i was using bondind everytime, so i had to manually change the script and run a while loop and then my node provision step was successful)
On Tue, May 31, 2022 at 8:59 AM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Hi Swogat, I tried generating the scripts as used by you in your deployments using the
#openstack overcloud network provision --stack overcloud --output networks-deployed-environment.yaml custom_network_data.yaml # openstack overcloud network vip provision --stack overcloud --output vip-deployed-environment.yaml custom_vip_data.yaml # openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa overcloud-baremetal-deploy.yaml
and used the first two in the final deployment script, but it gives the error:
heatclient.exc.HTTPInternalServerError: ERROR: Internal Error 2022-05-30 14:14:39.772 479668 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud Traceback (most recent call last):\n', ' File "/usr/lib/python3.6/ted_stack\n nested_stack.validate()\n', ' File "/usr/lib/python3.6/site-packages/osprofiler/profiler.py", line 160, in wrapper\n result = f(*args, ine 969, in validate\n result = res.validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/openstack/neutron/port.py", line 454site-packages/heat/engine/resources/openstack/neutron/neutron.py", line 43, in validate\n res = super(NeutronResource, self).validate()\n', ' File "/un return self.validate_template()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resource.py", line 1882, in validate_template\n self.t.rpy", line 200, in _validate_service_availability\n raise ex\n', 'heat.common.exception.ResourceTypeUnavailable: HEAT-E99001 Service neutron is not avaieutron network endpoint is not in service catalog.\n', '\nDuring handling of the above exception, another exception occurred:\n\n', 'Traceback (most recens/stack_resource.py", line 75, in validate_nested_stack\n nested_stack.validate()\n', ' File "/usr/lib/python3.6/site-packages/osprofiler/profiler.py"thon3.6/site-packages/heat/engine/stack.py", line 969, in validate\n result = res.validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/ateResource, self).validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/stack_resource.py", line 65, in validate\n self.validources/stack_resource.py", line 81, in validate_nested_stack\n ex, path=[self.stack.t.RESOURCES, path])\n', 'heat.common.exception.StackValidationFaileeploy/overcloud/tripleo-heat-templates/deployed-server/deployed-server.yaml>: HEAT-E99001 Service neutron is not available for resource type OS::TripleO::vice catalog.\n', '\nDuring handling of the above exception, another exception occurred:\n\n', 'Traceback (most recent call last):\n', ' File "/usr/lib/pline 320, in validate_nested_stack\n nested_stack.validate()\n', ' File "/usr/lib/python3.6/site-packages/osprofiler/profiler.py", line 160, in wrappe/heat/engine/stack.py", line 969, in validate\n result = res.validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/template_relidate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/stack_resource.py", line 65, in validate\n self.validate_nested_stack()\n'.py", line 81, in validate_nested_stack\n ex, path=[self.stack.t.RESOURCES, path])\n', 'heat.common.exception.StackValidationFailed: ResourceTypeUnavaimplates/puppet/compute-role.yaml>.resources.NovaCompute<file:///home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/deployed-server/deployed-servpleO::DeployedServer::ControlPlanePort, reason: neutron network endpoint is not in service catalog.\n', '\nDuring handling of the above exception, another/lib/python3.6/site-packages/heat/common/context.py", line 416, in wrapped\n return func(self, ctx, *args, **kwargs)\n', ' File "/usr/lib/python3.6/sirce_name, template_id)\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/service.py", line 756, in _parse_template_and_validate_stack\n stack.v line 160, in wrapper\n result = f(*args, **kwargs)\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/stack.py", line 969, in validate\n resesources/stack_resource.py", line 65, in validate\n self.validate_nested_stack()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/oph=[self.stack.t.RESOURCES, path])\n', 'heat.common.exception.StackValidationFailed: ResourceTypeUnavailable: resources.Compute<nested_stack>.resources.0<fte-role.yaml>.resources.NovaCompute<file:///home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/deployed-server/deployed-server.yaml>: HEAT-E9900::ControlPlanePort, reason: neutron network endpoint is not in service catalog.\n'].
Request you to check once, please.
On Mon, May 30, 2022 at 11:06 AM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Hi Swogat, Thanks once again.
with the files as shown below I am running the overcloud deploy for wallaby using this command:
(undercloud) [stack@undercloud ~]$ cat deploy_overcloud_working_1.sh openstack overcloud deploy --templates \ -n /home/stack/templates/network_data.yaml \ -r /home/stack/templates/roles_data.yaml \ -e /home/stack/templates/environment.yaml \ -e /home/stack/templates/environments/network-isolation.yaml \ -e /home/stack/templates/environments/network-environment.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-conductor.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-inspector.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-overcloud.yaml \ -e /home/stack/templates/ironic-config.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/docker-ha.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/podman.yaml \ -e /home/stack/containers-prepare-parameter.yaml (undercloud) [stack@undercloud ~]$
This deployment is on ipv6 using triple0 wallaby, templates, as mentioned below, are generated using rendering steps and the network_data.yaml the roles_data.yaml Steps used to render the templates: cd /usr/share/openstack-tripleo-heat-templates/ ./tools/process-templates.py -o ~/openstack-tripleo-heat-templates-rendered_at_wallaby -n /home/stack/templates/network_data.yaml -r /home/stack/templates/roles_data.yaml
*Now if i try adding the related to VIP port I do get the error as:*
2022-05-30 10:37:12.792 979387 WARNING tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] rendering j2 template to file: /home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/puppet/controller-role.yaml 2022-05-30 10:37:12.792 979387 WARNING tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] rendering j2 template to file: /home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/puppet/compute-role.yaml 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] Exception occured while running the command: ValueError: The environment is not a valid YAML mapping data type. 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud Traceback (most recent call last): 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/command.py", line 34, in run 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud super(Command, self).run(parsed_args) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/osc_lib/command/command.py", line 39, in run 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud return super(Command, self).run(parsed_args) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/cliff/command.py", line 185, in run 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud return_code = self.take_action(parsed_args) or 0 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", line 1189, in take_action 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud stack, parsed_args, new_tht_root, user_tht_root) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", line 227, in create_env_files 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud created_env_files, parsed_args, new_tht_root, user_tht_root) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", line 204, in build_image_params 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud cleanup=(not parsed_args.no_cleanup)) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/utils.py", line 1929, in process_multiple_environments 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud env_path=env_path, include_env_in_files=include_env_in_files) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/heatclient/common/template_utils.py", line 326, in process_environment_and_files 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud env = environment_format.parse(raw_env) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/heatclient/common/environment_format.py", line 50, in parse 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud raise ValueError(_('The environment is not a valid ' 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud ValueError: The environment is not a valid YAML mapping data type. 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud 2022-05-30 10:37:14.457 979387 ERROR openstack [-] The environment is not a valid YAML mapping data type. 2022-05-30 10:37:14.457 979387 INFO osc_lib.shell [-] END return value: 1 (undercloud) [stack@undercloud ~]$
This is more of a syntax error where it is not able to understand the passed VIP data file:
undercloud) [stack@undercloud ~]$ cat /home/stack/templates/vip-data-default-network-isolation.yaml - dns_name: overcloud network: internal_api - dns_name: overcloud network: external - dns_name: overcloud network: ctlplane - dns_name: overcloud network: oc_provisioning - dns_name: overcloud network: j3mgmt
Please advise, also please note that similar templates generated in prior releases such as train/ussuri works perfectly.
Please check the list of *templates *files:
drwxr-xr-x. 2 stack stack 68 May 30 09:22 environments -rw-r--r--. 1 stack stack 265 May 27 13:47 environment.yaml -rw-rw-r--. 1 stack stack 297 May 27 13:47 init-repo.yaml -rw-r--r--. 1 stack stack 570 May 27 13:47 ironic-config.yaml drwxrwxr-x. 4 stack stack 4096 May 27 13:53 network -rw-r--r--. 1 stack stack 6370 May 27 14:26 network_data.yaml -rw-r--r--. 1 stack stack 11137 May 27 13:53 roles_data.yaml -rw-r--r--. 1 stack stack 234 May 30 09:23 vip-data-default-network-isolation.yaml
(undercloud) [stack@undercloud templates]$ cat environment.yaml
parameter_defaults: OvercloudControllerFlavor: control OvercloudComputeFlavor: compute ControllerCount: 3 ComputeCount: 1 TimeZone: 'Asia/Kolkata' NtpServer: ['30.30.30.3'] NeutronBridgeMappings: datacentre:br-tenant NeutronFlatNetworks: datacentre (undercloud) [stack@undercloud templates]$
(undercloud) [stack@undercloud templates]$ cat ironic-config.yaml
parameter_defaults: NovaSchedulerDefaultFilters: - AggregateInstanceExtraSpecsFilter - AvailabilityZoneFilter - ComputeFilter - ComputeCapabilitiesFilter - ImagePropertiesFilter IronicEnabledHardwareTypes: - ipmi - redfish IronicEnabledPowerInterfaces: - ipmitool - redfish IronicEnabledManagementInterfaces: - ipmitool - redfish IronicCleaningDiskErase: metadata IronicIPXEEnabled: true IronicInspectorSubnets: - ip_range: 172.23.3.100,172.23.3.150
(undercloud) [stack@undercloud templates]$ cat network_data.yaml
- name: J3Mgmt name_lower: j3mgmt vip: true vlan: 400 ipv6: true ipv6_subnet: 'fd80:fd00:fd00:4000::/64' ipv6_allocation_pools: [{'start': 'fd80:fd00:fd00:4000::10', 'end': 'fd80:fd00:fd00:4000:ffff:ffff:ffff:fffe'}] mtu: 9000
- name: InternalApi name_lower: internal_api vip: true vlan: 418 ipv6: true ipv6_subnet: 'fd00:fd00:fd00:2000::/64' ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:2000::10', 'end': 'fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe'}] mtu: 9000
- name: External vip: true name_lower: external vlan: 408 ipv6: true gateway_ipv6: 'fd00:fd00:fd00:9900::1' ipv6_subnet: 'fd00:fd00:fd00:9900::/64' ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:9900::10', 'end': 'fd00:fd00:fd00:9900:ffff:ffff:ffff:fffe'}] mtu: 9000
- name: OCProvisioning vip: true name_lower: oc_provisioning vlan: 412 ip_subnet: '172.23.3.0/24' allocation_pools: [{'start': '172.23.3.10', 'end': '172.23.3.50'}] mtu: 9000
(undercloud) [stack@undercloud templates]$ cat roles_data.yaml
############################################################################### # File generated by TripleO
###############################################################################
############################################################################### # Role: Controller #
############################################################################### - name: Controller description: | Controller role that has all the controller services loaded and handles Database, Messaging, and Network functions. CountDefault: 1 tags: - primary - controller # Create external Neutron bridge for SNAT (and floating IPs when using # ML2/OVS without DVR) - external_bridge networks: External: subnet: external_subnet InternalApi: subnet: internal_api_subnet OCProvisioning: subnet: oc_provisioning_subnet J3Mgmt: subnet: j3mgmt_subnet
# For systems with both IPv4 and IPv6, you may specify a gateway network for # each, such as ['ControlPlane', 'External'] default_route_networks: ['External'] HostnameFormatDefault: '%stackname%-controller-%index%' RoleParametersDefault: OVNCMSOptions: "enable-chassis-as-gw" # Deprecated & backward-compatible values (FIXME: Make parameters consistent) # Set uses_deprecated_params to True if any deprecated params are used. uses_deprecated_params: True deprecated_param_extraconfig: 'controllerExtraConfig' deprecated_param_flavor: 'OvercloudControlFlavor' deprecated_param_image: 'controllerImage' deprecated_nic_config_name: 'controller.yaml' update_serial: 1 ServicesDefault: - OS::TripleO::Services::Aide - OS::TripleO::Services::AodhApi - OS::TripleO::Services::AodhEvaluator
.. .
..############################################################################### # Role: Compute #
############################################################################### - name: Compute description: | Basic Compute Node role CountDefault: 1 # Create external Neutron bridge (unset if using ML2/OVS without DVR) tags: - compute - external_bridge networks: InternalApi: subnet: internal_api_subnet J3Mgmt: subnet: j3mgmt_subnet HostnameFormatDefault: '%stackname%-novacompute-%index%' RoleParametersDefault: FsAioMaxNumber: 1048576 TunedProfileName: "virtual-host" # Deprecated & backward-compatible values (FIXME: Make parameters consistent) # Set uses_deprecated_params to True if any deprecated params are used. # These deprecated_params only need to be used for existing roles and not for # composable roles. uses_deprecated_params: True deprecated_param_image: 'NovaImage' deprecated_param_extraconfig: 'NovaComputeExtraConfig' deprecated_param_metadata: 'NovaComputeServerMetadata' deprecated_param_scheduler_hints: 'NovaComputeSchedulerHints' deprecated_param_ips: 'NovaComputeIPs' deprecated_server_resource_name: 'NovaCompute'
deprecated_nic_config_name: 'compute.yaml' update_serial: 25 ServicesDefault: - OS::TripleO::Services::Aide - OS::TripleO::Services::AuditD - OS::TripleO::Services::BootParams
(undercloud) [stack@undercloud templates]$ cat environments/network-environment.yaml
#This file is an example of an environment file for defining the isolated #networks and related parameters. resource_registry: # Network Interface templates to use (these files must exist). You can # override these by including one of the net-*.yaml environment files, # such as net-bond-with-vlans.yaml, or modifying the list here. # Port assignments for the Controller OS::TripleO::Controller::Net::SoftwareConfig: OS::Heat::None # Port assignments for the Compute OS::TripleO::Compute::Net::SoftwareConfig: OS::Heat::None
parameter_defaults: # This section is where deployment-specific configuration is done # ServiceNetMap: IronicApiNetwork: oc_provisioning IronicNetwork: oc_provisioning
# This section is where deployment-specific configuration is done ControllerNetworkConfigTemplate: 'templates/bonds_vlans/bonds_vlans.j2' ComputeNetworkConfigTemplate: 'templates/bonds_vlans/bonds_vlans.j2'
# Customize the IP subnet to match the local environment J3MgmtNetCidr: 'fd80:fd00:fd00:4000::/64' # Customize the IP range to use for static IPs and VIPs J3MgmtAllocationPools: [{'start': 'fd80:fd00:fd00:4000::10', 'end': 'fd80:fd00:fd00:4000:ffff:ffff:ffff:fffe'}] # Customize the VLAN ID to match the local environment J3MgmtNetworkVlanID: 400
# Customize the IP subnet to match the local environment InternalApiNetCidr: 'fd00:fd00:fd00:2000::/64' # Customize the IP range to use for static IPs and VIPs InternalApiAllocationPools: [{'start': 'fd00:fd00:fd00:2000::10', 'end': 'fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe'}] # Customize the VLAN ID to match the local environment InternalApiNetworkVlanID: 418
# Customize the IP subnet to match the local environment ExternalNetCidr: 'fd00:fd00:fd00:9900::/64' # Customize the IP range to use for static IPs and VIPs # Leave room if the external network is also used for floating IPs ExternalAllocationPools: [{'start': 'fd00:fd00:fd00:9900::10', 'end': 'fd00:fd00:fd00:9900:ffff:ffff:ffff:fffe'}] # Gateway router for routable networks ExternalInterfaceDefaultRoute: 'fd00:fd00:fd00:9900::1' # Customize the VLAN ID to match the local environment ExternalNetworkVlanID: 408
# Customize the IP subnet to match the local environment OCProvisioningNetCidr: '172.23.3.0/24' # Customize the IP range to use for static IPs and VIPs OCProvisioningAllocationPools: [{'start': '172.23.3.10', 'end': '172.23.3.50'}] # Customize the VLAN ID to match the local environment OCProvisioningNetworkVlanID: 412
# List of Neutron network types for tenant networks (will be used in order) NeutronNetworkType: 'geneve,vlan' # Neutron VLAN ranges per network, for example 'datacentre:1:499,tenant:500:1000': NeutronNetworkVLANRanges: 'datacentre:1:1000' # Customize bonding options, e.g. "mode=4 lacp_rate=1 updelay=1000 miimon=100" # for Linux bonds w/LACP, or "bond_mode=active-backup" for OVS active/backup. BondInterfaceOvsOptions: "bond_mode=active-backup"
(undercloud) [stack@undercloud templates]$
(undercloud) [stack@undercloud templates]$ cat environments/network-isolation.yaml
# NOTE: This template is now deprecated, and is only included for compatibility # when upgrading a deployment where this template was originally used. For new # deployments, set "ipv6: true" on desired networks in network_data.yaml, and # include network-isolation.yaml. # # Enable the creation of Neutron networks for isolated Overcloud # traffic and configure each role to assign ports (related # to that role) on these networks. resource_registry: # networks as defined in network_data.yaml OS::TripleO::Network::J3Mgmt: ../network/j3mgmt_v6.yaml OS::TripleO::Network::InternalApi: ../network/internal_api_v6.yaml OS::TripleO::Network::External: ../network/external_v6.yaml OS::TripleO::Network::OCProvisioning: ../network/oc_provisioning.yaml
# Port assignments for the VIPs OS::TripleO::Network::Ports::J3MgmtVipPort: ../network/ports/j3mgmt_v6.yaml OS::TripleO::Network::Ports::InternalApiVipPort: ../network/ports/internal_api_v6.yaml OS::TripleO::Network::Ports::ExternalVipPort: ../network/ports/external_v6.yaml OS::TripleO::Network::Ports::OCProvisioningVipPort: ../network/ports/oc_provisioning.yaml
# Port assignments by role, edit role definition to assign networks to roles. # Port assignments for the Controller OS::TripleO::Controller::Ports::J3MgmtPort: ../network/ports/j3mgmt_v6.yaml OS::TripleO::Controller::Ports::InternalApiPort: ../network/ports/internal_api_v6.yaml OS::TripleO::Controller::Ports::ExternalPort: ../network/ports/external_v6.yaml OS::TripleO::Controller::Ports::OCProvisioningPort: ../network/ports/oc_provisioning.yaml # Port assignments for the Compute OS::TripleO::Compute::Ports::J3MgmtPort: ../network/ports/j3mgmt_v6.yaml OS::TripleO::Compute::Ports::InternalApiPort: ../network/ports/internal_api_v6.yaml
parameter_defaults: # Enable IPv6 environment for Manila ManilaIPv6: True
(undercloud) [stack@undercloud templates]$
On Tue, May 24, 2022 at 5:04 PM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Thanks, I'll check them out. will let you know in case it works out.
On Tue, May 24, 2022 at 2:37 PM Swogat Pradhan < swogatpradhan22@gmail.com> wrote:
Hi, Please find the below templates: These are for openstack wallaby release:
(undercloud) [stack@hkg2director workplace]$ cat custom_network_data.yaml - name: Storage name_lower: storage vip: true mtu: 1500 subnets: storage_subnet: ip_subnet: 172.25.202.0/26 allocation_pools: - start: 172.25.202.6 end: 172.25.202.20 vlan: 1105 - name: StorageMgmt name_lower: storage_mgmt vip: true mtu: 1500 subnets: storage_mgmt_subnet: ip_subnet: 172.25.202.64/26 allocation_pools: - start: 172.25.202.72 end: 172.25.202.87 vlan: 1106 - name: InternalApi name_lower: internal_api vip: true mtu: 1500 subnets: internal_api_subnet: ip_subnet: 172.25.201.192/26 allocation_pools: - start: 172.25.201.198 end: 172.25.201.212 vlan: 1104 - name: Tenant vip: false # Tenant network does not use VIPs mtu: 1500 name_lower: tenant subnets: tenant_subnet: ip_subnet: 172.25.202.128/26 allocation_pools: - start: 172.25.202.135 end: 172.25.202.150 vlan: 1108 - name: External name_lower: external vip: true mtu: 1500 subnets: external_subnet: ip_subnet: 172.25.201.128/26 allocation_pools: - start: 172.25.201.135 end: 172.25.201.150 gateway_ip: 172.25.201.129 vlan: 1103
(undercloud) [stack@hkg2director workplace]$ cat custom_vip_data.yaml - network: ctlplane #dns_name: overcloud ip_address: 172.25.201.91 subnet: ctlplane-subnet - network: external #dns_name: overcloud ip_address: 172.25.201.150 subnet: external_subnet - network: internal_api #dns_name: overcloud ip_address: 172.25.201.250 subnet: internal_api_subnet - network: storage #dns_name: overcloud ip_address: 172.25.202.50 subnet: storage_subnet - network: storage_mgmt #dns_name: overcloud ip_address: 172.25.202.90 subnet: storage_mgmt_subnet
(undercloud) [stack@hkg2director workplace]$ cat overcloud-baremetal-deploy.yaml - name: Controller count: 4 defaults: networks: - network: ctlplane vif: true - network: external subnet: external_subnet - network: internal_api subnet: internal_api_subnet - network: storage subnet: storage_subnet - network: storage_mgmt subnet: storage_mgmt_subnet - network: tenant subnet: tenant_subnet network_config: template: /home/stack/templates/controller.j2 default_route_network: - external instances: - hostname: overcloud-controller-0 name: dc1-controller2 #provisioned: false - hostname: overcloud-controller-1 name: dc2-controller2 #provisioned: false - hostname: overcloud-controller-2 name: dc1-controller1 #provisioned: false - hostname: overcloud-controller-no-ceph-3 name: dc2-ceph2 #provisioned: false #- hostname: overcloud-controller-3 #name: dc2-compute3 #provisioned: false
- name: Compute count: 5 defaults: networks: - network: ctlplane vif: true - network: internal_api subnet: internal_api_subnet - network: tenant subnet: tenant_subnet - network: storage subnet: storage_subnet network_config: template: /home/stack/templates/compute.j2 instances: - hostname: overcloud-novacompute-0 name: dc2-compute1 #provisioned: false - hostname: overcloud-novacompute-1 name: dc2-ceph1 #provisioned: false - hostname: overcloud-novacompute-2 name: dc1-compute1 #provisioned: false - hostname: overcloud-novacompute-3 name: dc1-compute2 #provisioned: false - hostname: overcloud-novacompute-4 name: dc2-compute3 #provisioned: false
- name: CephStorage count: 4 defaults: networks: - network: ctlplane vif: true - network: internal_api subnet: internal_api_subnet - network: storage subnet: storage_subnet - network: storage_mgmt subnet: storage_mgmt_subnet network_config: template: /home/stack/templates/ceph-storage.j2 instances: - hostname: overcloud-cephstorage-0 name: dc2-controller1 #provisioned: false # - hostname: overcloud-cephstorage-1 # name: dc2-ceph2 - hostname: overcloud-cephstorage-1 name: dc1-ceph1 # provisioned: false - hostname: overcloud-cephstorage-2 name: dc1-ceph2 #provisioned: false - hostname: overcloud-cephstorage-3 name: dc2-compute2 #provisioned: false
You must use these templates to provision network, vip and nodes. You must use the output files generated during the provisioning step in openstack overcloud deploy command using -e parameter.
With regards, Swogat Pradhan
On Mon, May 23, 2022 at 8:33 PM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Hi Swogat, I tried checking your solution and my templates but could not relate much. But issue seems the same
http://lists.openstack.org/pipermail/openstack-discuss/2022-May/028401.html
I tried somemore ways but looks like some issue with templates. Can you please share the templates used to deploy the overcloud.
Mysetup have 3 controller and 1 compute.
Thanks once again for reading my mail.
Waiting for your reply.
-Lokendra
On Fri, 20 May 2022, 08:25 Swogat Pradhan, <swogatpradhan22@gmail.com> wrote:
> Hi, > Yes I was able to find the issue and fix it. > The issue was with the overcloud-baremetal-deployed.yaml file i was > trying to provision controller-0, controller-1 and controller-3 and kept > controller-2 aside for later, but the tripleo scripts are built in such a > way that they were taking controller- 0, 1 and 2 inplace of controller-3, > so the network ports and vip were created for controller 0,1 and 2 but not > for 3 , so this error was popping off. Also i would request you to check > the jinja nic templates and once the node provisioning is done check the > /etc/os-net-config/config.json/yaml file for syntax if using bonded nic > template. > If you need any more infor please let me know. > > With regards, > Swogat Pradhan > > > > On Fri, May 20, 2022 at 8:01 AM Lokendra Rathour < > lokendrarathour@gmail.com> wrote: > >> Hi Swogat, >> Thanks for raising this issue. >> Did you find any solution? to this problem ? >> >> Please let me know it might be helpful >> >> >> On Tue, Apr 19, 2022 at 12:43 PM Swogat Pradhan < >> swogatpradhan22@gmail.com> wrote: >> >>> Hi, >>> I am currently trying to deploy openstack wallaby using tripleo >>> arch. >>> I created the network jinja templates, ran the following commands >>> also: >>> >>> #openstack overcloud network provision --stack overcloud --output >>> networks-deployed-environment.yaml custom_network_data.yaml >>> # openstack overcloud network vip provision --stack overcloud >>> --output vip-deployed-environment.yaml custom_vip_data.yaml >>> # openstack overcloud node provision --stack overcloud >>> --overcloud-ssh-key /home/stack/sshkey/id_rsa >>> overcloud-baremetal-deploy.yaml >>> >>> and used the environment files in the openstack overcloud deploy >>> command: >>> >>> (undercloud) [stack@hkg2director ~]$ cat deploy.sh >>> #!/bin/bash >>> THT=/usr/share/openstack-tripleo-heat-templates/ >>> CNF=/home/stack/ >>> openstack overcloud deploy --templates $THT \ >>> -r $CNF/templates/roles_data.yaml \ >>> -n $CNF/workplace/custom_network_data.yaml \ >>> -e ~/containers-prepare-parameter.yaml \ >>> -e $CNF/templates/node-info.yaml \ >>> -e $CNF/templates/scheduler-hints.yaml \ >>> -e $CNF/workplace/networks-deployed-environment.yaml \ >>> -e $CNF/workplace/vip-deployed-environment.yaml \ >>> -e $CNF/workplace/overcloud-baremetal-deployed.yaml \ >>> -e $CNF/workplace/custom-net-bond-with-vlans.yaml >>> >>> Now when i run the ./deploy.sh script i encounter an error stating: >>> >>> ERROR openstack [-] Resource >>> OS::TripleO::Network::Ports::ControlPlaneVipPort maps to type >>> OS::Neutron::Port and the Neutron service is not available when using >>> ephemeral Heat. The generated environments from 'openstack overcloud >>> baremetal provision' and 'openstack overcloud network provision' must be >>> included with the deployment command.: >>> tripleoclient.exceptions.InvalidConfiguration: Resource >>> OS::TripleO::Network::Ports::ControlPlaneVipPort maps to type >>> OS::Neutron::Port and the Neutron service is not available when using >>> ephemeral Heat. The generated environments from 'openstack overcloud >>> baremetal provision' and 'openstack overcloud network provision' must be >>> included with the deployment command. >>> 2022-04-19 13:47:16.582 735924 INFO osc_lib.shell [-] END return >>> value: 1 >>> >>> Can someone tell me where the mistake is? >>> >>> With regards, >>> Swogat Pradhan >>> >> >> >>
-- ~ Lokendra www.inertiaspeaks.com www.inertiagroups.com skype: lokendrarathour
NOTE: when passing --network-config parameter in node provision step, it creates a directory in /etc/os-net-config and in it creates a file config.yaml, do check the indentation of that file. (in my case the indentation was wrong when i was using bonding everytime, so i had to manually change the script and run a while loop and then my node
Hi Lokendra, Like i said, provision step was successful) this parameter --network-config creates a config.yaml(network config) file in /etc/os-net-config directory in the overcloud nodes and then ansible tries to apply the network config from the generated config file. And in wallaby version if you are using bonding then the syntax in the generated conf is wrong (atleast was in my case) and then the ansible tries to apply the network config (with wrong syntax) so your overcloud nodes become unavailable. Please run node provision separately, and keep on monitoring "metalsmith list" command. Once IP is assigned to the overcloud nodes, ssh to the nodes and assign a password to heat-admin user so that even if the network becomes unavailable you still will be able to access the nodes via console access, then you can visit /etc/os-net-config directory and verify the config.yaml file. With regards, Swogat pradhan. On Tue, May 31, 2022 at 11:56 PM Lokendra Rathour <lokendrarathour@gmail.com> wrote:
Hi Swogat, Thanks once again for your input it really helped much.
instead of running mentioned those three provisioning steps i used alternate method and passed directly in deploy command. now my current deploy command is:
openstack overcloud deploy --templates \ --networks-file /home/stack/templates/custom_network_data.yaml \ --vip-file /home/stack/templates/custom_vip_data.yaml \ --baremetal-deployment /home/stack/templates/overcloud-baremetal-deploy.yaml \ --network-config \ -e /home/stack/templates/environment.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-conductor.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-inspector.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-overcloud.yaml \ -e /home/stack/templates/ironic-config.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/docker-ha.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/podman.yaml \ -e /home/stack/containers-prepare-parameter.yaml
The files as suggested by you are well created.
But once we run the deployment I get this error for all nodes:
0:00:16.064781 | 1.16s 2022-05-31 19:13:00.276954 | 525400ef-b928-9ded-fecc-000000000094 | TASK | Run tripleo_os_net_config_module with network_config 2022-05-31 19:40:30.061582 | 525400ef-b928-9ded-fecc-000000000094 | FATAL | Run tripleo_os_net_config_module with network_config | overcloud-controller-1 | error={"msg": "Data could not be sent to remote host \"30.30.30.117\". Make sure this host can be reached over ssh: ssh: connect to host 30.30.30.117 port 22: No route to host\r\n"} 2022-
Baremetal node list are showing in as active.
(undercloud) [stack@undercloud ~]$ openstack baremetal node list /usr/lib64/python3.6/site-packages/_yaml/__init__.py:23: DeprecationWarning: The _yaml extension module is now located at yaml._yaml and its location is subject to change. To use the LibYAML-based parser and emitter, import from `yaml`: `from yaml import CLoader as Loader, CDumper as Dumper`. DeprecationWarning
+--------------------------------------+--------+--------------------------------------+-------------+--------------------+-------------+ | UUID | Name | Instance UUID | Power State | Provisioning State | Maintenance |
+--------------------------------------+--------+--------------------------------------+-------------+--------------------+-------------+ | 1a4d873c-f9f7-4504-a3af-92c11f954171 | node-a | 901453a1-183f-4de8-aaab-0f38be2be455 | power on | active | False | | d18610fc-9532-410c-918e-8efc326c89f8 | node-b | d059b94a-8357-4f8e-a0d8-15a24b0c1afe | power on | active | False | | b69f2d5a-5b18-4453-8843-15c6af79aca0 | node-c | f196ef3a-7950-47b9-a5ae-751f06b18f75 | power on | active | False | | 8a38c584-f812-4ebc-a0b1-4299f0917637 | node-d | 1636517c-2ab2-43d7-8205-9f02c5290207 | power on | active | False |
+--------------------------------------+--------+--------------------------------------+-------------+--------------------+-------------+
Some config is missing it seems, please check once and advise.
On Tue, May 31, 2022 at 11:40 AM Swogat Pradhan <swogatpradhan22@gmail.com> wrote:
Hi Lokendra, You need to generate another file also in the following step: openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa overcloud-baremetal-deploy.yaml also you need to pass another parameter --network-config. example: openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa *--network-config* *--output overcloud-baremetal-deployed.yaml* overcloud-baremetal-deploy.yaml
And then all these output files will be passed on to the openstack overcloud deploy command. NOTE: when passing --network-config parameter in node provision step, it creates a directory in /etc/os-net-config and in it creates a file config.yaml, do check the indentation of that file. (in my case the indentation was wrong when i was using bondind everytime, so i had to manually change the script and run a while loop and then my node provision step was successful)
On Tue, May 31, 2022 at 8:59 AM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Hi Swogat, I tried generating the scripts as used by you in your deployments using the
#openstack overcloud network provision --stack overcloud --output networks-deployed-environment.yaml custom_network_data.yaml # openstack overcloud network vip provision --stack overcloud --output vip-deployed-environment.yaml custom_vip_data.yaml # openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa overcloud-baremetal-deploy.yaml
and used the first two in the final deployment script, but it gives the error:
heatclient.exc.HTTPInternalServerError: ERROR: Internal Error 2022-05-30 14:14:39.772 479668 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud Traceback (most recent call last):\n', ' File "/usr/lib/python3.6/ted_stack\n nested_stack.validate()\n', ' File "/usr/lib/python3.6/site-packages/osprofiler/profiler.py", line 160, in wrapper\n result = f(*args, ine 969, in validate\n result = res.validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/openstack/neutron/port.py", line 454site-packages/heat/engine/resources/openstack/neutron/neutron.py", line 43, in validate\n res = super(NeutronResource, self).validate()\n', ' File "/un return self.validate_template()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resource.py", line 1882, in validate_template\n self.t.rpy", line 200, in _validate_service_availability\n raise ex\n', 'heat.common.exception.ResourceTypeUnavailable: HEAT-E99001 Service neutron is not avaieutron network endpoint is not in service catalog.\n', '\nDuring handling of the above exception, another exception occurred:\n\n', 'Traceback (most recens/stack_resource.py", line 75, in validate_nested_stack\n nested_stack.validate()\n', ' File "/usr/lib/python3.6/site-packages/osprofiler/profiler.py"thon3.6/site-packages/heat/engine/stack.py", line 969, in validate\n result = res.validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/ateResource, self).validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/stack_resource.py", line 65, in validate\n self.validources/stack_resource.py", line 81, in validate_nested_stack\n ex, path=[self.stack.t.RESOURCES, path])\n', 'heat.common.exception.StackValidationFaileeploy/overcloud/tripleo-heat-templates/deployed-server/deployed-server.yaml>: HEAT-E99001 Service neutron is not available for resource type OS::TripleO::vice catalog.\n', '\nDuring handling of the above exception, another exception occurred:\n\n', 'Traceback (most recent call last):\n', ' File "/usr/lib/pline 320, in validate_nested_stack\n nested_stack.validate()\n', ' File "/usr/lib/python3.6/site-packages/osprofiler/profiler.py", line 160, in wrappe/heat/engine/stack.py", line 969, in validate\n result = res.validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/template_relidate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/stack_resource.py", line 65, in validate\n self.validate_nested_stack()\n'.py", line 81, in validate_nested_stack\n ex, path=[self.stack.t.RESOURCES, path])\n', 'heat.common.exception.StackValidationFailed: ResourceTypeUnavaimplates/puppet/compute-role.yaml>.resources.NovaCompute<file:///home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/deployed-server/deployed-servpleO::DeployedServer::ControlPlanePort, reason: neutron network endpoint is not in service catalog.\n', '\nDuring handling of the above exception, another/lib/python3.6/site-packages/heat/common/context.py", line 416, in wrapped\n return func(self, ctx, *args, **kwargs)\n', ' File "/usr/lib/python3.6/sirce_name, template_id)\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/service.py", line 756, in _parse_template_and_validate_stack\n stack.v line 160, in wrapper\n result = f(*args, **kwargs)\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/stack.py", line 969, in validate\n resesources/stack_resource.py", line 65, in validate\n self.validate_nested_stack()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/oph=[self.stack.t.RESOURCES, path])\n', 'heat.common.exception.StackValidationFailed: ResourceTypeUnavailable: resources.Compute<nested_stack>.resources.0<fte-role.yaml>.resources.NovaCompute<file:///home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/deployed-server/deployed-server.yaml>: HEAT-E9900::ControlPlanePort, reason: neutron network endpoint is not in service catalog.\n'].
Request you to check once, please.
On Mon, May 30, 2022 at 11:06 AM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Hi Swogat, Thanks once again.
with the files as shown below I am running the overcloud deploy for wallaby using this command:
(undercloud) [stack@undercloud ~]$ cat deploy_overcloud_working_1.sh openstack overcloud deploy --templates \ -n /home/stack/templates/network_data.yaml \ -r /home/stack/templates/roles_data.yaml \ -e /home/stack/templates/environment.yaml \ -e /home/stack/templates/environments/network-isolation.yaml \ -e /home/stack/templates/environments/network-environment.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-conductor.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-inspector.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-overcloud.yaml \ -e /home/stack/templates/ironic-config.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/docker-ha.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/podman.yaml \ -e /home/stack/containers-prepare-parameter.yaml (undercloud) [stack@undercloud ~]$
This deployment is on ipv6 using triple0 wallaby, templates, as mentioned below, are generated using rendering steps and the network_data.yaml the roles_data.yaml Steps used to render the templates: cd /usr/share/openstack-tripleo-heat-templates/ ./tools/process-templates.py -o ~/openstack-tripleo-heat-templates-rendered_at_wallaby -n /home/stack/templates/network_data.yaml -r /home/stack/templates/roles_data.yaml
*Now if i try adding the related to VIP port I do get the error as:*
2022-05-30 10:37:12.792 979387 WARNING tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] rendering j2 template to file: /home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/puppet/controller-role.yaml 2022-05-30 10:37:12.792 979387 WARNING tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] rendering j2 template to file: /home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/puppet/compute-role.yaml 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] Exception occured while running the command: ValueError: The environment is not a valid YAML mapping data type. 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud Traceback (most recent call last): 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/command.py", line 34, in run 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud super(Command, self).run(parsed_args) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/osc_lib/command/command.py", line 39, in run 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud return super(Command, self).run(parsed_args) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/cliff/command.py", line 185, in run 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud return_code = self.take_action(parsed_args) or 0 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", line 1189, in take_action 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud stack, parsed_args, new_tht_root, user_tht_root) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", line 227, in create_env_files 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud created_env_files, parsed_args, new_tht_root, user_tht_root) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", line 204, in build_image_params 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud cleanup=(not parsed_args.no_cleanup)) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/utils.py", line 1929, in process_multiple_environments 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud env_path=env_path, include_env_in_files=include_env_in_files) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/heatclient/common/template_utils.py", line 326, in process_environment_and_files 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud env = environment_format.parse(raw_env) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/heatclient/common/environment_format.py", line 50, in parse 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud raise ValueError(_('The environment is not a valid ' 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud ValueError: The environment is not a valid YAML mapping data type. 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud 2022-05-30 10:37:14.457 979387 ERROR openstack [-] The environment is not a valid YAML mapping data type. 2022-05-30 10:37:14.457 979387 INFO osc_lib.shell [-] END return value: 1 (undercloud) [stack@undercloud ~]$
This is more of a syntax error where it is not able to understand the passed VIP data file:
undercloud) [stack@undercloud ~]$ cat /home/stack/templates/vip-data-default-network-isolation.yaml - dns_name: overcloud network: internal_api - dns_name: overcloud network: external - dns_name: overcloud network: ctlplane - dns_name: overcloud network: oc_provisioning - dns_name: overcloud network: j3mgmt
Please advise, also please note that similar templates generated in prior releases such as train/ussuri works perfectly.
Please check the list of *templates *files:
drwxr-xr-x. 2 stack stack 68 May 30 09:22 environments -rw-r--r--. 1 stack stack 265 May 27 13:47 environment.yaml -rw-rw-r--. 1 stack stack 297 May 27 13:47 init-repo.yaml -rw-r--r--. 1 stack stack 570 May 27 13:47 ironic-config.yaml drwxrwxr-x. 4 stack stack 4096 May 27 13:53 network -rw-r--r--. 1 stack stack 6370 May 27 14:26 network_data.yaml -rw-r--r--. 1 stack stack 11137 May 27 13:53 roles_data.yaml -rw-r--r--. 1 stack stack 234 May 30 09:23 vip-data-default-network-isolation.yaml
(undercloud) [stack@undercloud templates]$ cat environment.yaml
parameter_defaults: OvercloudControllerFlavor: control OvercloudComputeFlavor: compute ControllerCount: 3 ComputeCount: 1 TimeZone: 'Asia/Kolkata' NtpServer: ['30.30.30.3'] NeutronBridgeMappings: datacentre:br-tenant NeutronFlatNetworks: datacentre (undercloud) [stack@undercloud templates]$
(undercloud) [stack@undercloud templates]$ cat ironic-config.yaml
parameter_defaults: NovaSchedulerDefaultFilters: - AggregateInstanceExtraSpecsFilter - AvailabilityZoneFilter - ComputeFilter - ComputeCapabilitiesFilter - ImagePropertiesFilter IronicEnabledHardwareTypes: - ipmi - redfish IronicEnabledPowerInterfaces: - ipmitool - redfish IronicEnabledManagementInterfaces: - ipmitool - redfish IronicCleaningDiskErase: metadata IronicIPXEEnabled: true IronicInspectorSubnets: - ip_range: 172.23.3.100,172.23.3.150
(undercloud) [stack@undercloud templates]$ cat network_data.yaml
- name: J3Mgmt name_lower: j3mgmt vip: true vlan: 400 ipv6: true ipv6_subnet: 'fd80:fd00:fd00:4000::/64' ipv6_allocation_pools: [{'start': 'fd80:fd00:fd00:4000::10', 'end': 'fd80:fd00:fd00:4000:ffff:ffff:ffff:fffe'}] mtu: 9000
- name: InternalApi name_lower: internal_api vip: true vlan: 418 ipv6: true ipv6_subnet: 'fd00:fd00:fd00:2000::/64' ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:2000::10', 'end': 'fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe'}] mtu: 9000
- name: External vip: true name_lower: external vlan: 408 ipv6: true gateway_ipv6: 'fd00:fd00:fd00:9900::1' ipv6_subnet: 'fd00:fd00:fd00:9900::/64' ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:9900::10', 'end': 'fd00:fd00:fd00:9900:ffff:ffff:ffff:fffe'}] mtu: 9000
- name: OCProvisioning vip: true name_lower: oc_provisioning vlan: 412 ip_subnet: '172.23.3.0/24' allocation_pools: [{'start': '172.23.3.10', 'end': '172.23.3.50'}] mtu: 9000
(undercloud) [stack@undercloud templates]$ cat roles_data.yaml
############################################################################### # File generated by TripleO
###############################################################################
############################################################################### # Role: Controller #
############################################################################### - name: Controller description: | Controller role that has all the controller services loaded and handles Database, Messaging, and Network functions. CountDefault: 1 tags: - primary - controller # Create external Neutron bridge for SNAT (and floating IPs when using # ML2/OVS without DVR) - external_bridge networks: External: subnet: external_subnet InternalApi: subnet: internal_api_subnet OCProvisioning: subnet: oc_provisioning_subnet J3Mgmt: subnet: j3mgmt_subnet
# For systems with both IPv4 and IPv6, you may specify a gateway network for # each, such as ['ControlPlane', 'External'] default_route_networks: ['External'] HostnameFormatDefault: '%stackname%-controller-%index%' RoleParametersDefault: OVNCMSOptions: "enable-chassis-as-gw" # Deprecated & backward-compatible values (FIXME: Make parameters consistent) # Set uses_deprecated_params to True if any deprecated params are used. uses_deprecated_params: True deprecated_param_extraconfig: 'controllerExtraConfig' deprecated_param_flavor: 'OvercloudControlFlavor' deprecated_param_image: 'controllerImage' deprecated_nic_config_name: 'controller.yaml' update_serial: 1 ServicesDefault: - OS::TripleO::Services::Aide - OS::TripleO::Services::AodhApi - OS::TripleO::Services::AodhEvaluator
.. .
..############################################################################### # Role: Compute #
############################################################################### - name: Compute description: | Basic Compute Node role CountDefault: 1 # Create external Neutron bridge (unset if using ML2/OVS without DVR) tags: - compute - external_bridge networks: InternalApi: subnet: internal_api_subnet J3Mgmt: subnet: j3mgmt_subnet HostnameFormatDefault: '%stackname%-novacompute-%index%' RoleParametersDefault: FsAioMaxNumber: 1048576 TunedProfileName: "virtual-host" # Deprecated & backward-compatible values (FIXME: Make parameters consistent) # Set uses_deprecated_params to True if any deprecated params are used. # These deprecated_params only need to be used for existing roles and not for # composable roles. uses_deprecated_params: True deprecated_param_image: 'NovaImage' deprecated_param_extraconfig: 'NovaComputeExtraConfig' deprecated_param_metadata: 'NovaComputeServerMetadata' deprecated_param_scheduler_hints: 'NovaComputeSchedulerHints' deprecated_param_ips: 'NovaComputeIPs' deprecated_server_resource_name: 'NovaCompute'
deprecated_nic_config_name: 'compute.yaml' update_serial: 25 ServicesDefault: - OS::TripleO::Services::Aide - OS::TripleO::Services::AuditD - OS::TripleO::Services::BootParams
(undercloud) [stack@undercloud templates]$ cat environments/network-environment.yaml
#This file is an example of an environment file for defining the isolated #networks and related parameters. resource_registry: # Network Interface templates to use (these files must exist). You can # override these by including one of the net-*.yaml environment files, # such as net-bond-with-vlans.yaml, or modifying the list here. # Port assignments for the Controller OS::TripleO::Controller::Net::SoftwareConfig: OS::Heat::None # Port assignments for the Compute OS::TripleO::Compute::Net::SoftwareConfig: OS::Heat::None
parameter_defaults: # This section is where deployment-specific configuration is done # ServiceNetMap: IronicApiNetwork: oc_provisioning IronicNetwork: oc_provisioning
# This section is where deployment-specific configuration is done ControllerNetworkConfigTemplate: 'templates/bonds_vlans/bonds_vlans.j2' ComputeNetworkConfigTemplate: 'templates/bonds_vlans/bonds_vlans.j2'
# Customize the IP subnet to match the local environment J3MgmtNetCidr: 'fd80:fd00:fd00:4000::/64' # Customize the IP range to use for static IPs and VIPs J3MgmtAllocationPools: [{'start': 'fd80:fd00:fd00:4000::10', 'end': 'fd80:fd00:fd00:4000:ffff:ffff:ffff:fffe'}] # Customize the VLAN ID to match the local environment J3MgmtNetworkVlanID: 400
# Customize the IP subnet to match the local environment InternalApiNetCidr: 'fd00:fd00:fd00:2000::/64' # Customize the IP range to use for static IPs and VIPs InternalApiAllocationPools: [{'start': 'fd00:fd00:fd00:2000::10', 'end': 'fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe'}] # Customize the VLAN ID to match the local environment InternalApiNetworkVlanID: 418
# Customize the IP subnet to match the local environment ExternalNetCidr: 'fd00:fd00:fd00:9900::/64' # Customize the IP range to use for static IPs and VIPs # Leave room if the external network is also used for floating IPs ExternalAllocationPools: [{'start': 'fd00:fd00:fd00:9900::10', 'end': 'fd00:fd00:fd00:9900:ffff:ffff:ffff:fffe'}] # Gateway router for routable networks ExternalInterfaceDefaultRoute: 'fd00:fd00:fd00:9900::1' # Customize the VLAN ID to match the local environment ExternalNetworkVlanID: 408
# Customize the IP subnet to match the local environment OCProvisioningNetCidr: '172.23.3.0/24' # Customize the IP range to use for static IPs and VIPs OCProvisioningAllocationPools: [{'start': '172.23.3.10', 'end': '172.23.3.50'}] # Customize the VLAN ID to match the local environment OCProvisioningNetworkVlanID: 412
# List of Neutron network types for tenant networks (will be used in order) NeutronNetworkType: 'geneve,vlan' # Neutron VLAN ranges per network, for example 'datacentre:1:499,tenant:500:1000': NeutronNetworkVLANRanges: 'datacentre:1:1000' # Customize bonding options, e.g. "mode=4 lacp_rate=1 updelay=1000 miimon=100" # for Linux bonds w/LACP, or "bond_mode=active-backup" for OVS active/backup. BondInterfaceOvsOptions: "bond_mode=active-backup"
(undercloud) [stack@undercloud templates]$
(undercloud) [stack@undercloud templates]$ cat environments/network-isolation.yaml
# NOTE: This template is now deprecated, and is only included for compatibility # when upgrading a deployment where this template was originally used. For new # deployments, set "ipv6: true" on desired networks in network_data.yaml, and # include network-isolation.yaml. # # Enable the creation of Neutron networks for isolated Overcloud # traffic and configure each role to assign ports (related # to that role) on these networks. resource_registry: # networks as defined in network_data.yaml OS::TripleO::Network::J3Mgmt: ../network/j3mgmt_v6.yaml OS::TripleO::Network::InternalApi: ../network/internal_api_v6.yaml OS::TripleO::Network::External: ../network/external_v6.yaml OS::TripleO::Network::OCProvisioning: ../network/oc_provisioning.yaml
# Port assignments for the VIPs OS::TripleO::Network::Ports::J3MgmtVipPort: ../network/ports/j3mgmt_v6.yaml OS::TripleO::Network::Ports::InternalApiVipPort: ../network/ports/internal_api_v6.yaml OS::TripleO::Network::Ports::ExternalVipPort: ../network/ports/external_v6.yaml OS::TripleO::Network::Ports::OCProvisioningVipPort: ../network/ports/oc_provisioning.yaml
# Port assignments by role, edit role definition to assign networks to roles. # Port assignments for the Controller OS::TripleO::Controller::Ports::J3MgmtPort: ../network/ports/j3mgmt_v6.yaml OS::TripleO::Controller::Ports::InternalApiPort: ../network/ports/internal_api_v6.yaml OS::TripleO::Controller::Ports::ExternalPort: ../network/ports/external_v6.yaml OS::TripleO::Controller::Ports::OCProvisioningPort: ../network/ports/oc_provisioning.yaml # Port assignments for the Compute OS::TripleO::Compute::Ports::J3MgmtPort: ../network/ports/j3mgmt_v6.yaml OS::TripleO::Compute::Ports::InternalApiPort: ../network/ports/internal_api_v6.yaml
parameter_defaults: # Enable IPv6 environment for Manila ManilaIPv6: True
(undercloud) [stack@undercloud templates]$
On Tue, May 24, 2022 at 5:04 PM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Thanks, I'll check them out. will let you know in case it works out.
On Tue, May 24, 2022 at 2:37 PM Swogat Pradhan < swogatpradhan22@gmail.com> wrote:
Hi, Please find the below templates: These are for openstack wallaby release:
(undercloud) [stack@hkg2director workplace]$ cat custom_network_data.yaml - name: Storage name_lower: storage vip: true mtu: 1500 subnets: storage_subnet: ip_subnet: 172.25.202.0/26 allocation_pools: - start: 172.25.202.6 end: 172.25.202.20 vlan: 1105 - name: StorageMgmt name_lower: storage_mgmt vip: true mtu: 1500 subnets: storage_mgmt_subnet: ip_subnet: 172.25.202.64/26 allocation_pools: - start: 172.25.202.72 end: 172.25.202.87 vlan: 1106 - name: InternalApi name_lower: internal_api vip: true mtu: 1500 subnets: internal_api_subnet: ip_subnet: 172.25.201.192/26 allocation_pools: - start: 172.25.201.198 end: 172.25.201.212 vlan: 1104 - name: Tenant vip: false # Tenant network does not use VIPs mtu: 1500 name_lower: tenant subnets: tenant_subnet: ip_subnet: 172.25.202.128/26 allocation_pools: - start: 172.25.202.135 end: 172.25.202.150 vlan: 1108 - name: External name_lower: external vip: true mtu: 1500 subnets: external_subnet: ip_subnet: 172.25.201.128/26 allocation_pools: - start: 172.25.201.135 end: 172.25.201.150 gateway_ip: 172.25.201.129 vlan: 1103
(undercloud) [stack@hkg2director workplace]$ cat custom_vip_data.yaml - network: ctlplane #dns_name: overcloud ip_address: 172.25.201.91 subnet: ctlplane-subnet - network: external #dns_name: overcloud ip_address: 172.25.201.150 subnet: external_subnet - network: internal_api #dns_name: overcloud ip_address: 172.25.201.250 subnet: internal_api_subnet - network: storage #dns_name: overcloud ip_address: 172.25.202.50 subnet: storage_subnet - network: storage_mgmt #dns_name: overcloud ip_address: 172.25.202.90 subnet: storage_mgmt_subnet
(undercloud) [stack@hkg2director workplace]$ cat overcloud-baremetal-deploy.yaml - name: Controller count: 4 defaults: networks: - network: ctlplane vif: true - network: external subnet: external_subnet - network: internal_api subnet: internal_api_subnet - network: storage subnet: storage_subnet - network: storage_mgmt subnet: storage_mgmt_subnet - network: tenant subnet: tenant_subnet network_config: template: /home/stack/templates/controller.j2 default_route_network: - external instances: - hostname: overcloud-controller-0 name: dc1-controller2 #provisioned: false - hostname: overcloud-controller-1 name: dc2-controller2 #provisioned: false - hostname: overcloud-controller-2 name: dc1-controller1 #provisioned: false - hostname: overcloud-controller-no-ceph-3 name: dc2-ceph2 #provisioned: false #- hostname: overcloud-controller-3 #name: dc2-compute3 #provisioned: false
- name: Compute count: 5 defaults: networks: - network: ctlplane vif: true - network: internal_api subnet: internal_api_subnet - network: tenant subnet: tenant_subnet - network: storage subnet: storage_subnet network_config: template: /home/stack/templates/compute.j2 instances: - hostname: overcloud-novacompute-0 name: dc2-compute1 #provisioned: false - hostname: overcloud-novacompute-1 name: dc2-ceph1 #provisioned: false - hostname: overcloud-novacompute-2 name: dc1-compute1 #provisioned: false - hostname: overcloud-novacompute-3 name: dc1-compute2 #provisioned: false - hostname: overcloud-novacompute-4 name: dc2-compute3 #provisioned: false
- name: CephStorage count: 4 defaults: networks: - network: ctlplane vif: true - network: internal_api subnet: internal_api_subnet - network: storage subnet: storage_subnet - network: storage_mgmt subnet: storage_mgmt_subnet network_config: template: /home/stack/templates/ceph-storage.j2 instances: - hostname: overcloud-cephstorage-0 name: dc2-controller1 #provisioned: false # - hostname: overcloud-cephstorage-1 # name: dc2-ceph2 - hostname: overcloud-cephstorage-1 name: dc1-ceph1 # provisioned: false - hostname: overcloud-cephstorage-2 name: dc1-ceph2 #provisioned: false - hostname: overcloud-cephstorage-3 name: dc2-compute2 #provisioned: false
You must use these templates to provision network, vip and nodes. You must use the output files generated during the provisioning step in openstack overcloud deploy command using -e parameter.
With regards, Swogat Pradhan
On Mon, May 23, 2022 at 8:33 PM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
> Hi Swogat, > I tried checking your solution and my templates but could not relate > much. > But issue seems the same > > http://lists.openstack.org/pipermail/openstack-discuss/2022-May/028401.html > > I tried somemore ways but looks like some issue with templates. > Can you please share the templates used to deploy the overcloud. > > Mysetup have 3 controller and 1 compute. > > Thanks once again for reading my mail. > > Waiting for your reply. > > -Lokendra > > On Fri, 20 May 2022, 08:25 Swogat Pradhan, < > swogatpradhan22@gmail.com> wrote: > >> Hi, >> Yes I was able to find the issue and fix it. >> The issue was with the overcloud-baremetal-deployed.yaml file i was >> trying to provision controller-0, controller-1 and controller-3 and kept >> controller-2 aside for later, but the tripleo scripts are built in such a >> way that they were taking controller- 0, 1 and 2 inplace of controller-3, >> so the network ports and vip were created for controller 0,1 and 2 but not >> for 3 , so this error was popping off. Also i would request you to check >> the jinja nic templates and once the node provisioning is done check the >> /etc/os-net-config/config.json/yaml file for syntax if using bonded nic >> template. >> If you need any more infor please let me know. >> >> With regards, >> Swogat Pradhan >> >> >> >> On Fri, May 20, 2022 at 8:01 AM Lokendra Rathour < >> lokendrarathour@gmail.com> wrote: >> >>> Hi Swogat, >>> Thanks for raising this issue. >>> Did you find any solution? to this problem ? >>> >>> Please let me know it might be helpful >>> >>> >>> On Tue, Apr 19, 2022 at 12:43 PM Swogat Pradhan < >>> swogatpradhan22@gmail.com> wrote: >>> >>>> Hi, >>>> I am currently trying to deploy openstack wallaby using tripleo >>>> arch. >>>> I created the network jinja templates, ran the following commands >>>> also: >>>> >>>> #openstack overcloud network provision --stack overcloud --output >>>> networks-deployed-environment.yaml custom_network_data.yaml >>>> # openstack overcloud network vip provision --stack overcloud >>>> --output vip-deployed-environment.yaml custom_vip_data.yaml >>>> # openstack overcloud node provision --stack overcloud >>>> --overcloud-ssh-key /home/stack/sshkey/id_rsa >>>> overcloud-baremetal-deploy.yaml >>>> >>>> and used the environment files in the openstack overcloud deploy >>>> command: >>>> >>>> (undercloud) [stack@hkg2director ~]$ cat deploy.sh >>>> #!/bin/bash >>>> THT=/usr/share/openstack-tripleo-heat-templates/ >>>> CNF=/home/stack/ >>>> openstack overcloud deploy --templates $THT \ >>>> -r $CNF/templates/roles_data.yaml \ >>>> -n $CNF/workplace/custom_network_data.yaml \ >>>> -e ~/containers-prepare-parameter.yaml \ >>>> -e $CNF/templates/node-info.yaml \ >>>> -e $CNF/templates/scheduler-hints.yaml \ >>>> -e $CNF/workplace/networks-deployed-environment.yaml \ >>>> -e $CNF/workplace/vip-deployed-environment.yaml \ >>>> -e $CNF/workplace/overcloud-baremetal-deployed.yaml \ >>>> -e $CNF/workplace/custom-net-bond-with-vlans.yaml >>>> >>>> Now when i run the ./deploy.sh script i encounter an error >>>> stating: >>>> >>>> ERROR openstack [-] Resource >>>> OS::TripleO::Network::Ports::ControlPlaneVipPort maps to type >>>> OS::Neutron::Port and the Neutron service is not available when using >>>> ephemeral Heat. The generated environments from 'openstack overcloud >>>> baremetal provision' and 'openstack overcloud network provision' must be >>>> included with the deployment command.: >>>> tripleoclient.exceptions.InvalidConfiguration: Resource >>>> OS::TripleO::Network::Ports::ControlPlaneVipPort maps to type >>>> OS::Neutron::Port and the Neutron service is not available when using >>>> ephemeral Heat. The generated environments from 'openstack overcloud >>>> baremetal provision' and 'openstack overcloud network provision' must be >>>> included with the deployment command. >>>> 2022-04-19 13:47:16.582 735924 INFO osc_lib.shell [-] END return >>>> value: 1 >>>> >>>> Can someone tell me where the mistake is? >>>> >>>> With regards, >>>> Swogat Pradhan >>>> >>> >>> >>>
-- ~ Lokendra www.inertiaspeaks.com www.inertiagroups.com skype: lokendrarathour
Ok Swogat, Thanks once again. i will try this approach once and will let you know. On Wed, 1 Jun 2022, 00:04 Swogat Pradhan, <swogatpradhan22@gmail.com> wrote:
NOTE: when passing --network-config parameter in node provision step, it creates a directory in /etc/os-net-config and in it creates a file config.yaml, do check the indentation of that file. (in my case the indentation was wrong when i was using bonding everytime, so i had to manually change the script and run a while loop and then my node
Hi Lokendra, Like i said, provision step was successful) this parameter --network-config creates a config.yaml(network config) file in /etc/os-net-config directory in the overcloud nodes and then ansible tries to apply the network config from the generated config file. And in wallaby version if you are using bonding then the syntax in the generated conf is wrong (atleast was in my case) and then the ansible tries to apply the network config (with wrong syntax) so your overcloud nodes become unavailable.
Please run node provision separately, and keep on monitoring "metalsmith list" command. Once IP is assigned to the overcloud nodes, ssh to the nodes and assign a password to heat-admin user so that even if the network becomes unavailable you still will be able to access the nodes via console access, then you can visit /etc/os-net-config directory and verify the config.yaml file.
With regards, Swogat pradhan.
On Tue, May 31, 2022 at 11:56 PM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Hi Swogat, Thanks once again for your input it really helped much.
instead of running mentioned those three provisioning steps i used alternate method and passed directly in deploy command. now my current deploy command is:
openstack overcloud deploy --templates \ --networks-file /home/stack/templates/custom_network_data.yaml \ --vip-file /home/stack/templates/custom_vip_data.yaml \ --baremetal-deployment /home/stack/templates/overcloud-baremetal-deploy.yaml \ --network-config \ -e /home/stack/templates/environment.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-conductor.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-inspector.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-overcloud.yaml \ -e /home/stack/templates/ironic-config.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/docker-ha.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/podman.yaml \ -e /home/stack/containers-prepare-parameter.yaml
The files as suggested by you are well created.
But once we run the deployment I get this error for all nodes:
0:00:16.064781 | 1.16s 2022-05-31 19:13:00.276954 | 525400ef-b928-9ded-fecc-000000000094 | TASK | Run tripleo_os_net_config_module with network_config 2022-05-31 19:40:30.061582 | 525400ef-b928-9ded-fecc-000000000094 | FATAL | Run tripleo_os_net_config_module with network_config | overcloud-controller-1 | error={"msg": "Data could not be sent to remote host \"30.30.30.117\". Make sure this host can be reached over ssh: ssh: connect to host 30.30.30.117 port 22: No route to host\r\n"} 2022-
Baremetal node list are showing in as active.
(undercloud) [stack@undercloud ~]$ openstack baremetal node list /usr/lib64/python3.6/site-packages/_yaml/__init__.py:23: DeprecationWarning: The _yaml extension module is now located at yaml._yaml and its location is subject to change. To use the LibYAML-based parser and emitter, import from `yaml`: `from yaml import CLoader as Loader, CDumper as Dumper`. DeprecationWarning
+--------------------------------------+--------+--------------------------------------+-------------+--------------------+-------------+ | UUID | Name | Instance UUID | Power State | Provisioning State | Maintenance |
+--------------------------------------+--------+--------------------------------------+-------------+--------------------+-------------+ | 1a4d873c-f9f7-4504-a3af-92c11f954171 | node-a | 901453a1-183f-4de8-aaab-0f38be2be455 | power on | active | False | | d18610fc-9532-410c-918e-8efc326c89f8 | node-b | d059b94a-8357-4f8e-a0d8-15a24b0c1afe | power on | active | False | | b69f2d5a-5b18-4453-8843-15c6af79aca0 | node-c | f196ef3a-7950-47b9-a5ae-751f06b18f75 | power on | active | False | | 8a38c584-f812-4ebc-a0b1-4299f0917637 | node-d | 1636517c-2ab2-43d7-8205-9f02c5290207 | power on | active | False |
+--------------------------------------+--------+--------------------------------------+-------------+--------------------+-------------+
Some config is missing it seems, please check once and advise.
On Tue, May 31, 2022 at 11:40 AM Swogat Pradhan < swogatpradhan22@gmail.com> wrote:
Hi Lokendra, You need to generate another file also in the following step: openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa overcloud-baremetal-deploy.yaml also you need to pass another parameter --network-config. example: openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa *--network-config* *--output overcloud-baremetal-deployed.yaml* overcloud-baremetal-deploy.yaml
And then all these output files will be passed on to the openstack overcloud deploy command. NOTE: when passing --network-config parameter in node provision step, it creates a directory in /etc/os-net-config and in it creates a file config.yaml, do check the indentation of that file. (in my case the indentation was wrong when i was using bondind everytime, so i had to manually change the script and run a while loop and then my node provision step was successful)
On Tue, May 31, 2022 at 8:59 AM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Hi Swogat, I tried generating the scripts as used by you in your deployments using the
#openstack overcloud network provision --stack overcloud --output networks-deployed-environment.yaml custom_network_data.yaml # openstack overcloud network vip provision --stack overcloud --output vip-deployed-environment.yaml custom_vip_data.yaml # openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa overcloud-baremetal-deploy.yaml
and used the first two in the final deployment script, but it gives the error:
heatclient.exc.HTTPInternalServerError: ERROR: Internal Error 2022-05-30 14:14:39.772 479668 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud Traceback (most recent call last):\n', ' File "/usr/lib/python3.6/ted_stack\n nested_stack.validate()\n', ' File "/usr/lib/python3.6/site-packages/osprofiler/profiler.py", line 160, in wrapper\n result = f(*args, ine 969, in validate\n result = res.validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/openstack/neutron/port.py", line 454site-packages/heat/engine/resources/openstack/neutron/neutron.py", line 43, in validate\n res = super(NeutronResource, self).validate()\n', ' File "/un return self.validate_template()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resource.py", line 1882, in validate_template\n self.t.rpy", line 200, in _validate_service_availability\n raise ex\n', 'heat.common.exception.ResourceTypeUnavailable: HEAT-E99001 Service neutron is not avaieutron network endpoint is not in service catalog.\n', '\nDuring handling of the above exception, another exception occurred:\n\n', 'Traceback (most recens/stack_resource.py", line 75, in validate_nested_stack\n nested_stack.validate()\n', ' File "/usr/lib/python3.6/site-packages/osprofiler/profiler.py"thon3.6/site-packages/heat/engine/stack.py", line 969, in validate\n result = res.validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/ateResource, self).validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/stack_resource.py", line 65, in validate\n self.validources/stack_resource.py", line 81, in validate_nested_stack\n ex, path=[self.stack.t.RESOURCES, path])\n', 'heat.common.exception.StackValidationFaileeploy/overcloud/tripleo-heat-templates/deployed-server/deployed-server.yaml>: HEAT-E99001 Service neutron is not available for resource type OS::TripleO::vice catalog.\n', '\nDuring handling of the above exception, another exception occurred:\n\n', 'Traceback (most recent call last):\n', ' File "/usr/lib/pline 320, in validate_nested_stack\n nested_stack.validate()\n', ' File "/usr/lib/python3.6/site-packages/osprofiler/profiler.py", line 160, in wrappe/heat/engine/stack.py", line 969, in validate\n result = res.validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/template_relidate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/stack_resource.py", line 65, in validate\n self.validate_nested_stack()\n'.py", line 81, in validate_nested_stack\n ex, path=[self.stack.t.RESOURCES, path])\n', 'heat.common.exception.StackValidationFailed: ResourceTypeUnavaimplates/puppet/compute-role.yaml>.resources.NovaCompute<file:///home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/deployed-server/deployed-servpleO::DeployedServer::ControlPlanePort, reason: neutron network endpoint is not in service catalog.\n', '\nDuring handling of the above exception, another/lib/python3.6/site-packages/heat/common/context.py", line 416, in wrapped\n return func(self, ctx, *args, **kwargs)\n', ' File "/usr/lib/python3.6/sirce_name, template_id)\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/service.py", line 756, in _parse_template_and_validate_stack\n stack.v line 160, in wrapper\n result = f(*args, **kwargs)\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/stack.py", line 969, in validate\n resesources/stack_resource.py", line 65, in validate\n self.validate_nested_stack()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/oph=[self.stack.t.RESOURCES, path])\n', 'heat.common.exception.StackValidationFailed: ResourceTypeUnavailable: resources.Compute<nested_stack>.resources.0<fte-role.yaml>.resources.NovaCompute<file:///home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/deployed-server/deployed-server.yaml>: HEAT-E9900::ControlPlanePort, reason: neutron network endpoint is not in service catalog.\n'].
Request you to check once, please.
On Mon, May 30, 2022 at 11:06 AM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Hi Swogat, Thanks once again.
with the files as shown below I am running the overcloud deploy for wallaby using this command:
(undercloud) [stack@undercloud ~]$ cat deploy_overcloud_working_1.sh openstack overcloud deploy --templates \ -n /home/stack/templates/network_data.yaml \ -r /home/stack/templates/roles_data.yaml \ -e /home/stack/templates/environment.yaml \ -e /home/stack/templates/environments/network-isolation.yaml \ -e /home/stack/templates/environments/network-environment.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-conductor.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-inspector.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-overcloud.yaml \ -e /home/stack/templates/ironic-config.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/docker-ha.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/podman.yaml \ -e /home/stack/containers-prepare-parameter.yaml (undercloud) [stack@undercloud ~]$
This deployment is on ipv6 using triple0 wallaby, templates, as mentioned below, are generated using rendering steps and the network_data.yaml the roles_data.yaml Steps used to render the templates: cd /usr/share/openstack-tripleo-heat-templates/ ./tools/process-templates.py -o ~/openstack-tripleo-heat-templates-rendered_at_wallaby -n /home/stack/templates/network_data.yaml -r /home/stack/templates/roles_data.yaml
*Now if i try adding the related to VIP port I do get the error as:*
2022-05-30 10:37:12.792 979387 WARNING tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] rendering j2 template to file: /home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/puppet/controller-role.yaml 2022-05-30 10:37:12.792 979387 WARNING tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] rendering j2 template to file: /home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/puppet/compute-role.yaml 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] Exception occured while running the command: ValueError: The environment is not a valid YAML mapping data type. 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud Traceback (most recent call last): 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/command.py", line 34, in run 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud super(Command, self).run(parsed_args) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/osc_lib/command/command.py", line 39, in run 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud return super(Command, self).run(parsed_args) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/cliff/command.py", line 185, in run 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud return_code = self.take_action(parsed_args) or 0 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", line 1189, in take_action 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud stack, parsed_args, new_tht_root, user_tht_root) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", line 227, in create_env_files 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud created_env_files, parsed_args, new_tht_root, user_tht_root) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", line 204, in build_image_params 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud cleanup=(not parsed_args.no_cleanup)) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/utils.py", line 1929, in process_multiple_environments 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud env_path=env_path, include_env_in_files=include_env_in_files) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/heatclient/common/template_utils.py", line 326, in process_environment_and_files 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud env = environment_format.parse(raw_env) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/heatclient/common/environment_format.py", line 50, in parse 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud raise ValueError(_('The environment is not a valid ' 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud ValueError: The environment is not a valid YAML mapping data type. 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud 2022-05-30 10:37:14.457 979387 ERROR openstack [-] The environment is not a valid YAML mapping data type. 2022-05-30 10:37:14.457 979387 INFO osc_lib.shell [-] END return value: 1 (undercloud) [stack@undercloud ~]$
This is more of a syntax error where it is not able to understand the passed VIP data file:
undercloud) [stack@undercloud ~]$ cat /home/stack/templates/vip-data-default-network-isolation.yaml - dns_name: overcloud network: internal_api - dns_name: overcloud network: external - dns_name: overcloud network: ctlplane - dns_name: overcloud network: oc_provisioning - dns_name: overcloud network: j3mgmt
Please advise, also please note that similar templates generated in prior releases such as train/ussuri works perfectly.
Please check the list of *templates *files:
drwxr-xr-x. 2 stack stack 68 May 30 09:22 environments -rw-r--r--. 1 stack stack 265 May 27 13:47 environment.yaml -rw-rw-r--. 1 stack stack 297 May 27 13:47 init-repo.yaml -rw-r--r--. 1 stack stack 570 May 27 13:47 ironic-config.yaml drwxrwxr-x. 4 stack stack 4096 May 27 13:53 network -rw-r--r--. 1 stack stack 6370 May 27 14:26 network_data.yaml -rw-r--r--. 1 stack stack 11137 May 27 13:53 roles_data.yaml -rw-r--r--. 1 stack stack 234 May 30 09:23 vip-data-default-network-isolation.yaml
(undercloud) [stack@undercloud templates]$ cat environment.yaml
parameter_defaults: OvercloudControllerFlavor: control OvercloudComputeFlavor: compute ControllerCount: 3 ComputeCount: 1 TimeZone: 'Asia/Kolkata' NtpServer: ['30.30.30.3'] NeutronBridgeMappings: datacentre:br-tenant NeutronFlatNetworks: datacentre (undercloud) [stack@undercloud templates]$
(undercloud) [stack@undercloud templates]$ cat ironic-config.yaml
parameter_defaults: NovaSchedulerDefaultFilters: - AggregateInstanceExtraSpecsFilter - AvailabilityZoneFilter - ComputeFilter - ComputeCapabilitiesFilter - ImagePropertiesFilter IronicEnabledHardwareTypes: - ipmi - redfish IronicEnabledPowerInterfaces: - ipmitool - redfish IronicEnabledManagementInterfaces: - ipmitool - redfish IronicCleaningDiskErase: metadata IronicIPXEEnabled: true IronicInspectorSubnets: - ip_range: 172.23.3.100,172.23.3.150
(undercloud) [stack@undercloud templates]$ cat network_data.yaml
- name: J3Mgmt name_lower: j3mgmt vip: true vlan: 400 ipv6: true ipv6_subnet: 'fd80:fd00:fd00:4000::/64' ipv6_allocation_pools: [{'start': 'fd80:fd00:fd00:4000::10', 'end': 'fd80:fd00:fd00:4000:ffff:ffff:ffff:fffe'}] mtu: 9000
- name: InternalApi name_lower: internal_api vip: true vlan: 418 ipv6: true ipv6_subnet: 'fd00:fd00:fd00:2000::/64' ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:2000::10', 'end': 'fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe'}] mtu: 9000
- name: External vip: true name_lower: external vlan: 408 ipv6: true gateway_ipv6: 'fd00:fd00:fd00:9900::1' ipv6_subnet: 'fd00:fd00:fd00:9900::/64' ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:9900::10', 'end': 'fd00:fd00:fd00:9900:ffff:ffff:ffff:fffe'}] mtu: 9000
- name: OCProvisioning vip: true name_lower: oc_provisioning vlan: 412 ip_subnet: '172.23.3.0/24' allocation_pools: [{'start': '172.23.3.10', 'end': '172.23.3.50'}] mtu: 9000
(undercloud) [stack@undercloud templates]$ cat roles_data.yaml
############################################################################### # File generated by TripleO
###############################################################################
############################################################################### # Role: Controller #
############################################################################### - name: Controller description: | Controller role that has all the controller services loaded and handles Database, Messaging, and Network functions. CountDefault: 1 tags: - primary - controller # Create external Neutron bridge for SNAT (and floating IPs when using # ML2/OVS without DVR) - external_bridge networks: External: subnet: external_subnet InternalApi: subnet: internal_api_subnet OCProvisioning: subnet: oc_provisioning_subnet J3Mgmt: subnet: j3mgmt_subnet
# For systems with both IPv4 and IPv6, you may specify a gateway network for # each, such as ['ControlPlane', 'External'] default_route_networks: ['External'] HostnameFormatDefault: '%stackname%-controller-%index%' RoleParametersDefault: OVNCMSOptions: "enable-chassis-as-gw" # Deprecated & backward-compatible values (FIXME: Make parameters consistent) # Set uses_deprecated_params to True if any deprecated params are used. uses_deprecated_params: True deprecated_param_extraconfig: 'controllerExtraConfig' deprecated_param_flavor: 'OvercloudControlFlavor' deprecated_param_image: 'controllerImage' deprecated_nic_config_name: 'controller.yaml' update_serial: 1 ServicesDefault: - OS::TripleO::Services::Aide - OS::TripleO::Services::AodhApi - OS::TripleO::Services::AodhEvaluator
.. .
..############################################################################### # Role: Compute #
############################################################################### - name: Compute description: | Basic Compute Node role CountDefault: 1 # Create external Neutron bridge (unset if using ML2/OVS without DVR) tags: - compute - external_bridge networks: InternalApi: subnet: internal_api_subnet J3Mgmt: subnet: j3mgmt_subnet HostnameFormatDefault: '%stackname%-novacompute-%index%' RoleParametersDefault: FsAioMaxNumber: 1048576 TunedProfileName: "virtual-host" # Deprecated & backward-compatible values (FIXME: Make parameters consistent) # Set uses_deprecated_params to True if any deprecated params are used. # These deprecated_params only need to be used for existing roles and not for # composable roles. uses_deprecated_params: True deprecated_param_image: 'NovaImage' deprecated_param_extraconfig: 'NovaComputeExtraConfig' deprecated_param_metadata: 'NovaComputeServerMetadata' deprecated_param_scheduler_hints: 'NovaComputeSchedulerHints' deprecated_param_ips: 'NovaComputeIPs' deprecated_server_resource_name: 'NovaCompute'
deprecated_nic_config_name: 'compute.yaml' update_serial: 25 ServicesDefault: - OS::TripleO::Services::Aide - OS::TripleO::Services::AuditD - OS::TripleO::Services::BootParams
(undercloud) [stack@undercloud templates]$ cat environments/network-environment.yaml
#This file is an example of an environment file for defining the isolated #networks and related parameters. resource_registry: # Network Interface templates to use (these files must exist). You can # override these by including one of the net-*.yaml environment files, # such as net-bond-with-vlans.yaml, or modifying the list here. # Port assignments for the Controller OS::TripleO::Controller::Net::SoftwareConfig: OS::Heat::None # Port assignments for the Compute OS::TripleO::Compute::Net::SoftwareConfig: OS::Heat::None
parameter_defaults: # This section is where deployment-specific configuration is done # ServiceNetMap: IronicApiNetwork: oc_provisioning IronicNetwork: oc_provisioning
# This section is where deployment-specific configuration is done ControllerNetworkConfigTemplate: 'templates/bonds_vlans/bonds_vlans.j2' ComputeNetworkConfigTemplate: 'templates/bonds_vlans/bonds_vlans.j2'
# Customize the IP subnet to match the local environment J3MgmtNetCidr: 'fd80:fd00:fd00:4000::/64' # Customize the IP range to use for static IPs and VIPs J3MgmtAllocationPools: [{'start': 'fd80:fd00:fd00:4000::10', 'end': 'fd80:fd00:fd00:4000:ffff:ffff:ffff:fffe'}] # Customize the VLAN ID to match the local environment J3MgmtNetworkVlanID: 400
# Customize the IP subnet to match the local environment InternalApiNetCidr: 'fd00:fd00:fd00:2000::/64' # Customize the IP range to use for static IPs and VIPs InternalApiAllocationPools: [{'start': 'fd00:fd00:fd00:2000::10', 'end': 'fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe'}] # Customize the VLAN ID to match the local environment InternalApiNetworkVlanID: 418
# Customize the IP subnet to match the local environment ExternalNetCidr: 'fd00:fd00:fd00:9900::/64' # Customize the IP range to use for static IPs and VIPs # Leave room if the external network is also used for floating IPs ExternalAllocationPools: [{'start': 'fd00:fd00:fd00:9900::10', 'end': 'fd00:fd00:fd00:9900:ffff:ffff:ffff:fffe'}] # Gateway router for routable networks ExternalInterfaceDefaultRoute: 'fd00:fd00:fd00:9900::1' # Customize the VLAN ID to match the local environment ExternalNetworkVlanID: 408
# Customize the IP subnet to match the local environment OCProvisioningNetCidr: '172.23.3.0/24' # Customize the IP range to use for static IPs and VIPs OCProvisioningAllocationPools: [{'start': '172.23.3.10', 'end': '172.23.3.50'}] # Customize the VLAN ID to match the local environment OCProvisioningNetworkVlanID: 412
# List of Neutron network types for tenant networks (will be used in order) NeutronNetworkType: 'geneve,vlan' # Neutron VLAN ranges per network, for example 'datacentre:1:499,tenant:500:1000': NeutronNetworkVLANRanges: 'datacentre:1:1000' # Customize bonding options, e.g. "mode=4 lacp_rate=1 updelay=1000 miimon=100" # for Linux bonds w/LACP, or "bond_mode=active-backup" for OVS active/backup. BondInterfaceOvsOptions: "bond_mode=active-backup"
(undercloud) [stack@undercloud templates]$
(undercloud) [stack@undercloud templates]$ cat environments/network-isolation.yaml
# NOTE: This template is now deprecated, and is only included for compatibility # when upgrading a deployment where this template was originally used. For new # deployments, set "ipv6: true" on desired networks in network_data.yaml, and # include network-isolation.yaml. # # Enable the creation of Neutron networks for isolated Overcloud # traffic and configure each role to assign ports (related # to that role) on these networks. resource_registry: # networks as defined in network_data.yaml OS::TripleO::Network::J3Mgmt: ../network/j3mgmt_v6.yaml OS::TripleO::Network::InternalApi: ../network/internal_api_v6.yaml OS::TripleO::Network::External: ../network/external_v6.yaml OS::TripleO::Network::OCProvisioning: ../network/oc_provisioning.yaml
# Port assignments for the VIPs OS::TripleO::Network::Ports::J3MgmtVipPort: ../network/ports/j3mgmt_v6.yaml OS::TripleO::Network::Ports::InternalApiVipPort: ../network/ports/internal_api_v6.yaml OS::TripleO::Network::Ports::ExternalVipPort: ../network/ports/external_v6.yaml OS::TripleO::Network::Ports::OCProvisioningVipPort: ../network/ports/oc_provisioning.yaml
# Port assignments by role, edit role definition to assign networks to roles. # Port assignments for the Controller OS::TripleO::Controller::Ports::J3MgmtPort: ../network/ports/j3mgmt_v6.yaml OS::TripleO::Controller::Ports::InternalApiPort: ../network/ports/internal_api_v6.yaml OS::TripleO::Controller::Ports::ExternalPort: ../network/ports/external_v6.yaml OS::TripleO::Controller::Ports::OCProvisioningPort: ../network/ports/oc_provisioning.yaml # Port assignments for the Compute OS::TripleO::Compute::Ports::J3MgmtPort: ../network/ports/j3mgmt_v6.yaml OS::TripleO::Compute::Ports::InternalApiPort: ../network/ports/internal_api_v6.yaml
parameter_defaults: # Enable IPv6 environment for Manila ManilaIPv6: True
(undercloud) [stack@undercloud templates]$
On Tue, May 24, 2022 at 5:04 PM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Thanks, I'll check them out. will let you know in case it works out.
On Tue, May 24, 2022 at 2:37 PM Swogat Pradhan < swogatpradhan22@gmail.com> wrote:
> Hi, > Please find the below templates: > These are for openstack wallaby release: > > (undercloud) [stack@hkg2director workplace]$ cat > custom_network_data.yaml > - name: Storage > name_lower: storage > vip: true > mtu: 1500 > subnets: > storage_subnet: > ip_subnet: 172.25.202.0/26 > allocation_pools: > - start: 172.25.202.6 > end: 172.25.202.20 > vlan: 1105 > - name: StorageMgmt > name_lower: storage_mgmt > vip: true > mtu: 1500 > subnets: > storage_mgmt_subnet: > ip_subnet: 172.25.202.64/26 > allocation_pools: > - start: 172.25.202.72 > end: 172.25.202.87 > vlan: 1106 > - name: InternalApi > name_lower: internal_api > vip: true > mtu: 1500 > subnets: > internal_api_subnet: > ip_subnet: 172.25.201.192/26 > allocation_pools: > - start: 172.25.201.198 > end: 172.25.201.212 > vlan: 1104 > - name: Tenant > vip: false # Tenant network does not use VIPs > mtu: 1500 > name_lower: tenant > subnets: > tenant_subnet: > ip_subnet: 172.25.202.128/26 > allocation_pools: > - start: 172.25.202.135 > end: 172.25.202.150 > vlan: 1108 > - name: External > name_lower: external > vip: true > mtu: 1500 > subnets: > external_subnet: > ip_subnet: 172.25.201.128/26 > allocation_pools: > - start: 172.25.201.135 > end: 172.25.201.150 > gateway_ip: 172.25.201.129 > vlan: 1103 > > (undercloud) [stack@hkg2director workplace]$ cat > custom_vip_data.yaml > - network: ctlplane > #dns_name: overcloud > ip_address: 172.25.201.91 > subnet: ctlplane-subnet > - network: external > #dns_name: overcloud > ip_address: 172.25.201.150 > subnet: external_subnet > - network: internal_api > #dns_name: overcloud > ip_address: 172.25.201.250 > subnet: internal_api_subnet > - network: storage > #dns_name: overcloud > ip_address: 172.25.202.50 > subnet: storage_subnet > - network: storage_mgmt > #dns_name: overcloud > ip_address: 172.25.202.90 > subnet: storage_mgmt_subnet > > (undercloud) [stack@hkg2director workplace]$ cat > overcloud-baremetal-deploy.yaml > - name: Controller > count: 4 > defaults: > networks: > - network: ctlplane > vif: true > - network: external > subnet: external_subnet > - network: internal_api > subnet: internal_api_subnet > - network: storage > subnet: storage_subnet > - network: storage_mgmt > subnet: storage_mgmt_subnet > - network: tenant > subnet: tenant_subnet > network_config: > template: /home/stack/templates/controller.j2 > default_route_network: > - external > instances: > - hostname: overcloud-controller-0 > name: dc1-controller2 > #provisioned: false > - hostname: overcloud-controller-1 > name: dc2-controller2 > #provisioned: false > - hostname: overcloud-controller-2 > name: dc1-controller1 > #provisioned: false > - hostname: overcloud-controller-no-ceph-3 > name: dc2-ceph2 > #provisioned: false > #- hostname: overcloud-controller-3 > #name: dc2-compute3 > #provisioned: false > > - name: Compute > count: 5 > defaults: > networks: > - network: ctlplane > vif: true > - network: internal_api > subnet: internal_api_subnet > - network: tenant > subnet: tenant_subnet > - network: storage > subnet: storage_subnet > network_config: > template: /home/stack/templates/compute.j2 > instances: > - hostname: overcloud-novacompute-0 > name: dc2-compute1 > #provisioned: false > - hostname: overcloud-novacompute-1 > name: dc2-ceph1 > #provisioned: false > - hostname: overcloud-novacompute-2 > name: dc1-compute1 > #provisioned: false > - hostname: overcloud-novacompute-3 > name: dc1-compute2 > #provisioned: false > - hostname: overcloud-novacompute-4 > name: dc2-compute3 > #provisioned: false > > - name: CephStorage > count: 4 > defaults: > networks: > - network: ctlplane > vif: true > - network: internal_api > subnet: internal_api_subnet > - network: storage > subnet: storage_subnet > - network: storage_mgmt > subnet: storage_mgmt_subnet > network_config: > template: /home/stack/templates/ceph-storage.j2 > instances: > - hostname: overcloud-cephstorage-0 > name: dc2-controller1 > #provisioned: false > # - hostname: overcloud-cephstorage-1 > # name: dc2-ceph2 > - hostname: overcloud-cephstorage-1 > name: dc1-ceph1 > # provisioned: false > - hostname: overcloud-cephstorage-2 > name: dc1-ceph2 > #provisioned: false > - hostname: overcloud-cephstorage-3 > name: dc2-compute2 > #provisioned: false > > > You must use these templates to provision network, vip and nodes. > You must use the output files generated during the provisioning step > in openstack overcloud deploy command using -e parameter. > > With regards, > Swogat Pradhan > > > On Mon, May 23, 2022 at 8:33 PM Lokendra Rathour < > lokendrarathour@gmail.com> wrote: > >> Hi Swogat, >> I tried checking your solution and my templates but could not >> relate much. >> But issue seems the same >> >> http://lists.openstack.org/pipermail/openstack-discuss/2022-May/028401.html >> >> I tried somemore ways but looks like some issue with templates. >> Can you please share the templates used to deploy the overcloud. >> >> Mysetup have 3 controller and 1 compute. >> >> Thanks once again for reading my mail. >> >> Waiting for your reply. >> >> -Lokendra >> >> On Fri, 20 May 2022, 08:25 Swogat Pradhan, < >> swogatpradhan22@gmail.com> wrote: >> >>> Hi, >>> Yes I was able to find the issue and fix it. >>> The issue was with the overcloud-baremetal-deployed.yaml file i >>> was trying to provision controller-0, controller-1 and controller-3 and >>> kept controller-2 aside for later, but the tripleo scripts are built in >>> such a way that they were taking controller- 0, 1 and 2 inplace of >>> controller-3, so the network ports and vip were created for controller 0,1 >>> and 2 but not for 3 , so this error was popping off. Also i would request >>> you to check the jinja nic templates and once the node provisioning is done >>> check the /etc/os-net-config/config.json/yaml file for syntax if using >>> bonded nic template. >>> If you need any more infor please let me know. >>> >>> With regards, >>> Swogat Pradhan >>> >>> >>> >>> On Fri, May 20, 2022 at 8:01 AM Lokendra Rathour < >>> lokendrarathour@gmail.com> wrote: >>> >>>> Hi Swogat, >>>> Thanks for raising this issue. >>>> Did you find any solution? to this problem ? >>>> >>>> Please let me know it might be helpful >>>> >>>> >>>> On Tue, Apr 19, 2022 at 12:43 PM Swogat Pradhan < >>>> swogatpradhan22@gmail.com> wrote: >>>> >>>>> Hi, >>>>> I am currently trying to deploy openstack wallaby using tripleo >>>>> arch. >>>>> I created the network jinja templates, ran the following >>>>> commands also: >>>>> >>>>> #openstack overcloud network provision --stack overcloud >>>>> --output networks-deployed-environment.yaml custom_network_data.yaml >>>>> # openstack overcloud network vip provision --stack overcloud >>>>> --output vip-deployed-environment.yaml custom_vip_data.yaml >>>>> # openstack overcloud node provision --stack overcloud >>>>> --overcloud-ssh-key /home/stack/sshkey/id_rsa >>>>> overcloud-baremetal-deploy.yaml >>>>> >>>>> and used the environment files in the openstack overcloud deploy >>>>> command: >>>>> >>>>> (undercloud) [stack@hkg2director ~]$ cat deploy.sh >>>>> #!/bin/bash >>>>> THT=/usr/share/openstack-tripleo-heat-templates/ >>>>> CNF=/home/stack/ >>>>> openstack overcloud deploy --templates $THT \ >>>>> -r $CNF/templates/roles_data.yaml \ >>>>> -n $CNF/workplace/custom_network_data.yaml \ >>>>> -e ~/containers-prepare-parameter.yaml \ >>>>> -e $CNF/templates/node-info.yaml \ >>>>> -e $CNF/templates/scheduler-hints.yaml \ >>>>> -e $CNF/workplace/networks-deployed-environment.yaml \ >>>>> -e $CNF/workplace/vip-deployed-environment.yaml \ >>>>> -e $CNF/workplace/overcloud-baremetal-deployed.yaml \ >>>>> -e $CNF/workplace/custom-net-bond-with-vlans.yaml >>>>> >>>>> Now when i run the ./deploy.sh script i encounter an error >>>>> stating: >>>>> >>>>> ERROR openstack [-] Resource >>>>> OS::TripleO::Network::Ports::ControlPlaneVipPort maps to type >>>>> OS::Neutron::Port and the Neutron service is not available when using >>>>> ephemeral Heat. The generated environments from 'openstack overcloud >>>>> baremetal provision' and 'openstack overcloud network provision' must be >>>>> included with the deployment command.: >>>>> tripleoclient.exceptions.InvalidConfiguration: Resource >>>>> OS::TripleO::Network::Ports::ControlPlaneVipPort maps to type >>>>> OS::Neutron::Port and the Neutron service is not available when using >>>>> ephemeral Heat. The generated environments from 'openstack overcloud >>>>> baremetal provision' and 'openstack overcloud network provision' must be >>>>> included with the deployment command. >>>>> 2022-04-19 13:47:16.582 735924 INFO osc_lib.shell [-] END return >>>>> value: 1 >>>>> >>>>> Can someone tell me where the mistake is? >>>>> >>>>> With regards, >>>>> Swogat Pradhan >>>>> >>>> >>>> >>>>
-- ~ Lokendra www.inertiaspeaks.com www.inertiagroups.com skype: lokendrarathour
Hi Swogat, Yes after correcting the j2 template, as suggested by you, it started working. Thanks a lot once again. Now the Overcloud is deployed. Further, as a next requirement, we were also trying to add an *additional Node as a bare-metal Instance* on the overcloud. As it is the composable network approach, we add an entry in parameters default for ServiceNetMap, as like below in environments/network-environments.yaml parameter_defaults: # This section is where deployment-specific configuration is done ServiceNetMap: IronicApiNetwork: oc_provisioning IronicNetwork: oc_provisioning this is now passed as in the environment.yaml as parameter_defaults, but somehow we are not able to deploy the setup. it gives the error for containers. *2022-06-06 19:08:37.560800 | 525400fd-f24d-9703-b0e7-0000000084b2 | FATAL | Manage container systemd services and cleanup old systemd healthchecks for /var/lib/tripleo-config/container-startup-config/step_4 | overcloud-controller-0 | error={"changed": false, "msg": "Service ironic_pxe_tftp has not started yet"}* and if we remove this setting as stated above, the deployment is successful, but at the time of node provisioning it is not able to reach the TFTP server to pull files, mainly because of the composable network (oc_provisioning), we faced this issue in Train, so we did the above config changes and it working. But as it looks something more is needed in Wallaby for Baremetal provisioning as an instance. Please share your learnings with the reference to it. Thanks once again for your all-time support. reference link: Bare Metal Instances in Overcloud — TripleO 3.0.0 documentation (openstack.org) <https://docs.openstack.org/project-deploy-guide/tripleo-docs/wallaby/features/baremetal_overcloud.html> -Lokendra On Wed, Jun 1, 2022 at 12:19 AM Lokendra Rathour <lokendrarathour@gmail.com> wrote:
Ok Swogat, Thanks once again. i will try this approach once and will let you know.
On Wed, 1 Jun 2022, 00:04 Swogat Pradhan, <swogatpradhan22@gmail.com> wrote:
NOTE: when passing --network-config parameter in node provision step, it creates a directory in /etc/os-net-config and in it creates a file config.yaml, do check the indentation of that file. (in my case the indentation was wrong when i was using bonding everytime, so i had to manually change the script and run a while loop and then my node
Hi Lokendra, Like i said, provision step was successful) this parameter --network-config creates a config.yaml(network config) file in /etc/os-net-config directory in the overcloud nodes and then ansible tries to apply the network config from the generated config file. And in wallaby version if you are using bonding then the syntax in the generated conf is wrong (atleast was in my case) and then the ansible tries to apply the network config (with wrong syntax) so your overcloud nodes become unavailable.
Please run node provision separately, and keep on monitoring "metalsmith list" command. Once IP is assigned to the overcloud nodes, ssh to the nodes and assign a password to heat-admin user so that even if the network becomes unavailable you still will be able to access the nodes via console access, then you can visit /etc/os-net-config directory and verify the config.yaml file.
With regards, Swogat pradhan.
On Tue, May 31, 2022 at 11:56 PM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Hi Swogat, Thanks once again for your input it really helped much.
instead of running mentioned those three provisioning steps i used alternate method and passed directly in deploy command. now my current deploy command is:
openstack overcloud deploy --templates \ --networks-file /home/stack/templates/custom_network_data.yaml \ --vip-file /home/stack/templates/custom_vip_data.yaml \ --baremetal-deployment /home/stack/templates/overcloud-baremetal-deploy.yaml \ --network-config \ -e /home/stack/templates/environment.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-conductor.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-inspector.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-overcloud.yaml \ -e /home/stack/templates/ironic-config.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/docker-ha.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/podman.yaml \ -e /home/stack/containers-prepare-parameter.yaml
The files as suggested by you are well created.
But once we run the deployment I get this error for all nodes:
0:00:16.064781 | 1.16s 2022-05-31 19:13:00.276954 | 525400ef-b928-9ded-fecc-000000000094 | TASK | Run tripleo_os_net_config_module with network_config 2022-05-31 19:40:30.061582 | 525400ef-b928-9ded-fecc-000000000094 | FATAL | Run tripleo_os_net_config_module with network_config | overcloud-controller-1 | error={"msg": "Data could not be sent to remote host \"30.30.30.117\". Make sure this host can be reached over ssh: ssh: connect to host 30.30.30.117 port 22: No route to host\r\n"} 2022-
Baremetal node list are showing in as active.
(undercloud) [stack@undercloud ~]$ openstack baremetal node list /usr/lib64/python3.6/site-packages/_yaml/__init__.py:23: DeprecationWarning: The _yaml extension module is now located at yaml._yaml and its location is subject to change. To use the LibYAML-based parser and emitter, import from `yaml`: `from yaml import CLoader as Loader, CDumper as Dumper`. DeprecationWarning
+--------------------------------------+--------+--------------------------------------+-------------+--------------------+-------------+ | UUID | Name | Instance UUID | Power State | Provisioning State | Maintenance |
+--------------------------------------+--------+--------------------------------------+-------------+--------------------+-------------+ | 1a4d873c-f9f7-4504-a3af-92c11f954171 | node-a | 901453a1-183f-4de8-aaab-0f38be2be455 | power on | active | False | | d18610fc-9532-410c-918e-8efc326c89f8 | node-b | d059b94a-8357-4f8e-a0d8-15a24b0c1afe | power on | active | False | | b69f2d5a-5b18-4453-8843-15c6af79aca0 | node-c | f196ef3a-7950-47b9-a5ae-751f06b18f75 | power on | active | False | | 8a38c584-f812-4ebc-a0b1-4299f0917637 | node-d | 1636517c-2ab2-43d7-8205-9f02c5290207 | power on | active | False |
+--------------------------------------+--------+--------------------------------------+-------------+--------------------+-------------+
Some config is missing it seems, please check once and advise.
On Tue, May 31, 2022 at 11:40 AM Swogat Pradhan < swogatpradhan22@gmail.com> wrote:
Hi Lokendra, You need to generate another file also in the following step: openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa overcloud-baremetal-deploy.yaml also you need to pass another parameter --network-config. example: openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa *--network-config* *--output overcloud-baremetal-deployed.yaml* overcloud-baremetal-deploy.yaml
And then all these output files will be passed on to the openstack overcloud deploy command. NOTE: when passing --network-config parameter in node provision step, it creates a directory in /etc/os-net-config and in it creates a file config.yaml, do check the indentation of that file. (in my case the indentation was wrong when i was using bondind everytime, so i had to manually change the script and run a while loop and then my node provision step was successful)
On Tue, May 31, 2022 at 8:59 AM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Hi Swogat, I tried generating the scripts as used by you in your deployments using the
#openstack overcloud network provision --stack overcloud --output networks-deployed-environment.yaml custom_network_data.yaml # openstack overcloud network vip provision --stack overcloud --output vip-deployed-environment.yaml custom_vip_data.yaml # openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa overcloud-baremetal-deploy.yaml
and used the first two in the final deployment script, but it gives the error:
heatclient.exc.HTTPInternalServerError: ERROR: Internal Error 2022-05-30 14:14:39.772 479668 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud Traceback (most recent call last):\n', ' File "/usr/lib/python3.6/ted_stack\n nested_stack.validate()\n', ' File "/usr/lib/python3.6/site-packages/osprofiler/profiler.py", line 160, in wrapper\n result = f(*args, ine 969, in validate\n result = res.validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/openstack/neutron/port.py", line 454site-packages/heat/engine/resources/openstack/neutron/neutron.py", line 43, in validate\n res = super(NeutronResource, self).validate()\n', ' File "/un return self.validate_template()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resource.py", line 1882, in validate_template\n self.t.rpy", line 200, in _validate_service_availability\n raise ex\n', 'heat.common.exception.ResourceTypeUnavailable: HEAT-E99001 Service neutron is not avaieutron network endpoint is not in service catalog.\n', '\nDuring handling of the above exception, another exception occurred:\n\n', 'Traceback (most recens/stack_resource.py", line 75, in validate_nested_stack\n nested_stack.validate()\n', ' File "/usr/lib/python3.6/site-packages/osprofiler/profiler.py"thon3.6/site-packages/heat/engine/stack.py", line 969, in validate\n result = res.validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/ateResource, self).validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/stack_resource.py", line 65, in validate\n self.validources/stack_resource.py", line 81, in validate_nested_stack\n ex, path=[self.stack.t.RESOURCES, path])\n', 'heat.common.exception.StackValidationFaileeploy/overcloud/tripleo-heat-templates/deployed-server/deployed-server.yaml>: HEAT-E99001 Service neutron is not available for resource type OS::TripleO::vice catalog.\n', '\nDuring handling of the above exception, another exception occurred:\n\n', 'Traceback (most recent call last):\n', ' File "/usr/lib/pline 320, in validate_nested_stack\n nested_stack.validate()\n', ' File "/usr/lib/python3.6/site-packages/osprofiler/profiler.py", line 160, in wrappe/heat/engine/stack.py", line 969, in validate\n result = res.validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/template_relidate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/stack_resource.py", line 65, in validate\n self.validate_nested_stack()\n'.py", line 81, in validate_nested_stack\n ex, path=[self.stack.t.RESOURCES, path])\n', 'heat.common.exception.StackValidationFailed: ResourceTypeUnavaimplates/puppet/compute-role.yaml>.resources.NovaCompute<file:///home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/deployed-server/deployed-servpleO::DeployedServer::ControlPlanePort, reason: neutron network endpoint is not in service catalog.\n', '\nDuring handling of the above exception, another/lib/python3.6/site-packages/heat/common/context.py", line 416, in wrapped\n return func(self, ctx, *args, **kwargs)\n', ' File "/usr/lib/python3.6/sirce_name, template_id)\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/service.py", line 756, in _parse_template_and_validate_stack\n stack.v line 160, in wrapper\n result = f(*args, **kwargs)\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/stack.py", line 969, in validate\n resesources/stack_resource.py", line 65, in validate\n self.validate_nested_stack()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/oph=[self.stack.t.RESOURCES, path])\n', 'heat.common.exception.StackValidationFailed: ResourceTypeUnavailable: resources.Compute<nested_stack>.resources.0<fte-role.yaml>.resources.NovaCompute<file:///home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/deployed-server/deployed-server.yaml>: HEAT-E9900::ControlPlanePort, reason: neutron network endpoint is not in service catalog.\n'].
Request you to check once, please.
On Mon, May 30, 2022 at 11:06 AM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Hi Swogat, Thanks once again.
with the files as shown below I am running the overcloud deploy for wallaby using this command:
(undercloud) [stack@undercloud ~]$ cat deploy_overcloud_working_1.sh openstack overcloud deploy --templates \ -n /home/stack/templates/network_data.yaml \ -r /home/stack/templates/roles_data.yaml \ -e /home/stack/templates/environment.yaml \ -e /home/stack/templates/environments/network-isolation.yaml \ -e /home/stack/templates/environments/network-environment.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-conductor.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-inspector.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-overcloud.yaml \ -e /home/stack/templates/ironic-config.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/docker-ha.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/podman.yaml \ -e /home/stack/containers-prepare-parameter.yaml (undercloud) [stack@undercloud ~]$
This deployment is on ipv6 using triple0 wallaby, templates, as mentioned below, are generated using rendering steps and the network_data.yaml the roles_data.yaml Steps used to render the templates: cd /usr/share/openstack-tripleo-heat-templates/ ./tools/process-templates.py -o ~/openstack-tripleo-heat-templates-rendered_at_wallaby -n /home/stack/templates/network_data.yaml -r /home/stack/templates/roles_data.yaml
*Now if i try adding the related to VIP port I do get the error as:*
2022-05-30 10:37:12.792 979387 WARNING tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] rendering j2 template to file: /home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/puppet/controller-role.yaml 2022-05-30 10:37:12.792 979387 WARNING tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] rendering j2 template to file: /home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/puppet/compute-role.yaml 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] Exception occured while running the command: ValueError: The environment is not a valid YAML mapping data type. 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud Traceback (most recent call last): 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/command.py", line 34, in run 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud super(Command, self).run(parsed_args) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/osc_lib/command/command.py", line 39, in run 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud return super(Command, self).run(parsed_args) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/cliff/command.py", line 185, in run 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud return_code = self.take_action(parsed_args) or 0 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", line 1189, in take_action 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud stack, parsed_args, new_tht_root, user_tht_root) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", line 227, in create_env_files 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud created_env_files, parsed_args, new_tht_root, user_tht_root) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", line 204, in build_image_params 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud cleanup=(not parsed_args.no_cleanup)) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/tripleoclient/utils.py", line 1929, in process_multiple_environments 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud env_path=env_path, include_env_in_files=include_env_in_files) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/heatclient/common/template_utils.py", line 326, in process_environment_and_files 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud env = environment_format.parse(raw_env) 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud File "/usr/lib/python3.6/site-packages/heatclient/common/environment_format.py", line 50, in parse 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud raise ValueError(_('The environment is not a valid ' 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud ValueError: The environment is not a valid YAML mapping data type. 2022-05-30 10:37:14.455 979387 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud 2022-05-30 10:37:14.457 979387 ERROR openstack [-] The environment is not a valid YAML mapping data type. 2022-05-30 10:37:14.457 979387 INFO osc_lib.shell [-] END return value: 1 (undercloud) [stack@undercloud ~]$
This is more of a syntax error where it is not able to understand the passed VIP data file:
undercloud) [stack@undercloud ~]$ cat /home/stack/templates/vip-data-default-network-isolation.yaml - dns_name: overcloud network: internal_api - dns_name: overcloud network: external - dns_name: overcloud network: ctlplane - dns_name: overcloud network: oc_provisioning - dns_name: overcloud network: j3mgmt
Please advise, also please note that similar templates generated in prior releases such as train/ussuri works perfectly.
Please check the list of *templates *files:
drwxr-xr-x. 2 stack stack 68 May 30 09:22 environments -rw-r--r--. 1 stack stack 265 May 27 13:47 environment.yaml -rw-rw-r--. 1 stack stack 297 May 27 13:47 init-repo.yaml -rw-r--r--. 1 stack stack 570 May 27 13:47 ironic-config.yaml drwxrwxr-x. 4 stack stack 4096 May 27 13:53 network -rw-r--r--. 1 stack stack 6370 May 27 14:26 network_data.yaml -rw-r--r--. 1 stack stack 11137 May 27 13:53 roles_data.yaml -rw-r--r--. 1 stack stack 234 May 30 09:23 vip-data-default-network-isolation.yaml
(undercloud) [stack@undercloud templates]$ cat environment.yaml
parameter_defaults: OvercloudControllerFlavor: control OvercloudComputeFlavor: compute ControllerCount: 3 ComputeCount: 1 TimeZone: 'Asia/Kolkata' NtpServer: ['30.30.30.3'] NeutronBridgeMappings: datacentre:br-tenant NeutronFlatNetworks: datacentre (undercloud) [stack@undercloud templates]$
(undercloud) [stack@undercloud templates]$ cat ironic-config.yaml
parameter_defaults: NovaSchedulerDefaultFilters: - AggregateInstanceExtraSpecsFilter - AvailabilityZoneFilter - ComputeFilter - ComputeCapabilitiesFilter - ImagePropertiesFilter IronicEnabledHardwareTypes: - ipmi - redfish IronicEnabledPowerInterfaces: - ipmitool - redfish IronicEnabledManagementInterfaces: - ipmitool - redfish IronicCleaningDiskErase: metadata IronicIPXEEnabled: true IronicInspectorSubnets: - ip_range: 172.23.3.100,172.23.3.150
(undercloud) [stack@undercloud templates]$ cat network_data.yaml
- name: J3Mgmt name_lower: j3mgmt vip: true vlan: 400 ipv6: true ipv6_subnet: 'fd80:fd00:fd00:4000::/64' ipv6_allocation_pools: [{'start': 'fd80:fd00:fd00:4000::10', 'end': 'fd80:fd00:fd00:4000:ffff:ffff:ffff:fffe'}] mtu: 9000
- name: InternalApi name_lower: internal_api vip: true vlan: 418 ipv6: true ipv6_subnet: 'fd00:fd00:fd00:2000::/64' ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:2000::10', 'end': 'fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe'}] mtu: 9000
- name: External vip: true name_lower: external vlan: 408 ipv6: true gateway_ipv6: 'fd00:fd00:fd00:9900::1' ipv6_subnet: 'fd00:fd00:fd00:9900::/64' ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:9900::10', 'end': 'fd00:fd00:fd00:9900:ffff:ffff:ffff:fffe'}] mtu: 9000
- name: OCProvisioning vip: true name_lower: oc_provisioning vlan: 412 ip_subnet: '172.23.3.0/24' allocation_pools: [{'start': '172.23.3.10', 'end': '172.23.3.50'}] mtu: 9000
(undercloud) [stack@undercloud templates]$ cat roles_data.yaml
############################################################################### # File generated by TripleO
###############################################################################
############################################################################### # Role: Controller #
############################################################################### - name: Controller description: | Controller role that has all the controller services loaded and handles Database, Messaging, and Network functions. CountDefault: 1 tags: - primary - controller # Create external Neutron bridge for SNAT (and floating IPs when using # ML2/OVS without DVR) - external_bridge networks: External: subnet: external_subnet InternalApi: subnet: internal_api_subnet OCProvisioning: subnet: oc_provisioning_subnet J3Mgmt: subnet: j3mgmt_subnet
# For systems with both IPv4 and IPv6, you may specify a gateway network for # each, such as ['ControlPlane', 'External'] default_route_networks: ['External'] HostnameFormatDefault: '%stackname%-controller-%index%' RoleParametersDefault: OVNCMSOptions: "enable-chassis-as-gw" # Deprecated & backward-compatible values (FIXME: Make parameters consistent) # Set uses_deprecated_params to True if any deprecated params are used. uses_deprecated_params: True deprecated_param_extraconfig: 'controllerExtraConfig' deprecated_param_flavor: 'OvercloudControlFlavor' deprecated_param_image: 'controllerImage' deprecated_nic_config_name: 'controller.yaml' update_serial: 1 ServicesDefault: - OS::TripleO::Services::Aide - OS::TripleO::Services::AodhApi - OS::TripleO::Services::AodhEvaluator
.. .
..############################################################################### # Role: Compute #
############################################################################### - name: Compute description: | Basic Compute Node role CountDefault: 1 # Create external Neutron bridge (unset if using ML2/OVS without DVR) tags: - compute - external_bridge networks: InternalApi: subnet: internal_api_subnet J3Mgmt: subnet: j3mgmt_subnet HostnameFormatDefault: '%stackname%-novacompute-%index%' RoleParametersDefault: FsAioMaxNumber: 1048576 TunedProfileName: "virtual-host" # Deprecated & backward-compatible values (FIXME: Make parameters consistent) # Set uses_deprecated_params to True if any deprecated params are used. # These deprecated_params only need to be used for existing roles and not for # composable roles. uses_deprecated_params: True deprecated_param_image: 'NovaImage' deprecated_param_extraconfig: 'NovaComputeExtraConfig' deprecated_param_metadata: 'NovaComputeServerMetadata' deprecated_param_scheduler_hints: 'NovaComputeSchedulerHints' deprecated_param_ips: 'NovaComputeIPs' deprecated_server_resource_name: 'NovaCompute'
deprecated_nic_config_name: 'compute.yaml' update_serial: 25 ServicesDefault: - OS::TripleO::Services::Aide - OS::TripleO::Services::AuditD - OS::TripleO::Services::BootParams
(undercloud) [stack@undercloud templates]$ cat environments/network-environment.yaml
#This file is an example of an environment file for defining the isolated #networks and related parameters. resource_registry: # Network Interface templates to use (these files must exist). You can # override these by including one of the net-*.yaml environment files, # such as net-bond-with-vlans.yaml, or modifying the list here. # Port assignments for the Controller OS::TripleO::Controller::Net::SoftwareConfig: OS::Heat::None # Port assignments for the Compute OS::TripleO::Compute::Net::SoftwareConfig: OS::Heat::None
parameter_defaults: # This section is where deployment-specific configuration is done # ServiceNetMap: IronicApiNetwork: oc_provisioning IronicNetwork: oc_provisioning
# This section is where deployment-specific configuration is done ControllerNetworkConfigTemplate: 'templates/bonds_vlans/bonds_vlans.j2' ComputeNetworkConfigTemplate: 'templates/bonds_vlans/bonds_vlans.j2'
# Customize the IP subnet to match the local environment J3MgmtNetCidr: 'fd80:fd00:fd00:4000::/64' # Customize the IP range to use for static IPs and VIPs J3MgmtAllocationPools: [{'start': 'fd80:fd00:fd00:4000::10', 'end': 'fd80:fd00:fd00:4000:ffff:ffff:ffff:fffe'}] # Customize the VLAN ID to match the local environment J3MgmtNetworkVlanID: 400
# Customize the IP subnet to match the local environment InternalApiNetCidr: 'fd00:fd00:fd00:2000::/64' # Customize the IP range to use for static IPs and VIPs InternalApiAllocationPools: [{'start': 'fd00:fd00:fd00:2000::10', 'end': 'fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe'}] # Customize the VLAN ID to match the local environment InternalApiNetworkVlanID: 418
# Customize the IP subnet to match the local environment ExternalNetCidr: 'fd00:fd00:fd00:9900::/64' # Customize the IP range to use for static IPs and VIPs # Leave room if the external network is also used for floating IPs ExternalAllocationPools: [{'start': 'fd00:fd00:fd00:9900::10', 'end': 'fd00:fd00:fd00:9900:ffff:ffff:ffff:fffe'}] # Gateway router for routable networks ExternalInterfaceDefaultRoute: 'fd00:fd00:fd00:9900::1' # Customize the VLAN ID to match the local environment ExternalNetworkVlanID: 408
# Customize the IP subnet to match the local environment OCProvisioningNetCidr: '172.23.3.0/24' # Customize the IP range to use for static IPs and VIPs OCProvisioningAllocationPools: [{'start': '172.23.3.10', 'end': '172.23.3.50'}] # Customize the VLAN ID to match the local environment OCProvisioningNetworkVlanID: 412
# List of Neutron network types for tenant networks (will be used in order) NeutronNetworkType: 'geneve,vlan' # Neutron VLAN ranges per network, for example 'datacentre:1:499,tenant:500:1000': NeutronNetworkVLANRanges: 'datacentre:1:1000' # Customize bonding options, e.g. "mode=4 lacp_rate=1 updelay=1000 miimon=100" # for Linux bonds w/LACP, or "bond_mode=active-backup" for OVS active/backup. BondInterfaceOvsOptions: "bond_mode=active-backup"
(undercloud) [stack@undercloud templates]$
(undercloud) [stack@undercloud templates]$ cat environments/network-isolation.yaml
# NOTE: This template is now deprecated, and is only included for compatibility # when upgrading a deployment where this template was originally used. For new # deployments, set "ipv6: true" on desired networks in network_data.yaml, and # include network-isolation.yaml. # # Enable the creation of Neutron networks for isolated Overcloud # traffic and configure each role to assign ports (related # to that role) on these networks. resource_registry: # networks as defined in network_data.yaml OS::TripleO::Network::J3Mgmt: ../network/j3mgmt_v6.yaml OS::TripleO::Network::InternalApi: ../network/internal_api_v6.yaml OS::TripleO::Network::External: ../network/external_v6.yaml OS::TripleO::Network::OCProvisioning: ../network/oc_provisioning.yaml
# Port assignments for the VIPs OS::TripleO::Network::Ports::J3MgmtVipPort: ../network/ports/j3mgmt_v6.yaml OS::TripleO::Network::Ports::InternalApiVipPort: ../network/ports/internal_api_v6.yaml OS::TripleO::Network::Ports::ExternalVipPort: ../network/ports/external_v6.yaml OS::TripleO::Network::Ports::OCProvisioningVipPort: ../network/ports/oc_provisioning.yaml
# Port assignments by role, edit role definition to assign networks to roles. # Port assignments for the Controller OS::TripleO::Controller::Ports::J3MgmtPort: ../network/ports/j3mgmt_v6.yaml OS::TripleO::Controller::Ports::InternalApiPort: ../network/ports/internal_api_v6.yaml OS::TripleO::Controller::Ports::ExternalPort: ../network/ports/external_v6.yaml OS::TripleO::Controller::Ports::OCProvisioningPort: ../network/ports/oc_provisioning.yaml # Port assignments for the Compute OS::TripleO::Compute::Ports::J3MgmtPort: ../network/ports/j3mgmt_v6.yaml OS::TripleO::Compute::Ports::InternalApiPort: ../network/ports/internal_api_v6.yaml
parameter_defaults: # Enable IPv6 environment for Manila ManilaIPv6: True
(undercloud) [stack@undercloud templates]$
On Tue, May 24, 2022 at 5:04 PM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
> Thanks, I'll check them out. > will let you know in case it works out. > > On Tue, May 24, 2022 at 2:37 PM Swogat Pradhan < > swogatpradhan22@gmail.com> wrote: > >> Hi, >> Please find the below templates: >> These are for openstack wallaby release: >> >> (undercloud) [stack@hkg2director workplace]$ cat >> custom_network_data.yaml >> - name: Storage >> name_lower: storage >> vip: true >> mtu: 1500 >> subnets: >> storage_subnet: >> ip_subnet: 172.25.202.0/26 >> allocation_pools: >> - start: 172.25.202.6 >> end: 172.25.202.20 >> vlan: 1105 >> - name: StorageMgmt >> name_lower: storage_mgmt >> vip: true >> mtu: 1500 >> subnets: >> storage_mgmt_subnet: >> ip_subnet: 172.25.202.64/26 >> allocation_pools: >> - start: 172.25.202.72 >> end: 172.25.202.87 >> vlan: 1106 >> - name: InternalApi >> name_lower: internal_api >> vip: true >> mtu: 1500 >> subnets: >> internal_api_subnet: >> ip_subnet: 172.25.201.192/26 >> allocation_pools: >> - start: 172.25.201.198 >> end: 172.25.201.212 >> vlan: 1104 >> - name: Tenant >> vip: false # Tenant network does not use VIPs >> mtu: 1500 >> name_lower: tenant >> subnets: >> tenant_subnet: >> ip_subnet: 172.25.202.128/26 >> allocation_pools: >> - start: 172.25.202.135 >> end: 172.25.202.150 >> vlan: 1108 >> - name: External >> name_lower: external >> vip: true >> mtu: 1500 >> subnets: >> external_subnet: >> ip_subnet: 172.25.201.128/26 >> allocation_pools: >> - start: 172.25.201.135 >> end: 172.25.201.150 >> gateway_ip: 172.25.201.129 >> vlan: 1103 >> >> (undercloud) [stack@hkg2director workplace]$ cat >> custom_vip_data.yaml >> - network: ctlplane >> #dns_name: overcloud >> ip_address: 172.25.201.91 >> subnet: ctlplane-subnet >> - network: external >> #dns_name: overcloud >> ip_address: 172.25.201.150 >> subnet: external_subnet >> - network: internal_api >> #dns_name: overcloud >> ip_address: 172.25.201.250 >> subnet: internal_api_subnet >> - network: storage >> #dns_name: overcloud >> ip_address: 172.25.202.50 >> subnet: storage_subnet >> - network: storage_mgmt >> #dns_name: overcloud >> ip_address: 172.25.202.90 >> subnet: storage_mgmt_subnet >> >> (undercloud) [stack@hkg2director workplace]$ cat >> overcloud-baremetal-deploy.yaml >> - name: Controller >> count: 4 >> defaults: >> networks: >> - network: ctlplane >> vif: true >> - network: external >> subnet: external_subnet >> - network: internal_api >> subnet: internal_api_subnet >> - network: storage >> subnet: storage_subnet >> - network: storage_mgmt >> subnet: storage_mgmt_subnet >> - network: tenant >> subnet: tenant_subnet >> network_config: >> template: /home/stack/templates/controller.j2 >> default_route_network: >> - external >> instances: >> - hostname: overcloud-controller-0 >> name: dc1-controller2 >> #provisioned: false >> - hostname: overcloud-controller-1 >> name: dc2-controller2 >> #provisioned: false >> - hostname: overcloud-controller-2 >> name: dc1-controller1 >> #provisioned: false >> - hostname: overcloud-controller-no-ceph-3 >> name: dc2-ceph2 >> #provisioned: false >> #- hostname: overcloud-controller-3 >> #name: dc2-compute3 >> #provisioned: false >> >> - name: Compute >> count: 5 >> defaults: >> networks: >> - network: ctlplane >> vif: true >> - network: internal_api >> subnet: internal_api_subnet >> - network: tenant >> subnet: tenant_subnet >> - network: storage >> subnet: storage_subnet >> network_config: >> template: /home/stack/templates/compute.j2 >> instances: >> - hostname: overcloud-novacompute-0 >> name: dc2-compute1 >> #provisioned: false >> - hostname: overcloud-novacompute-1 >> name: dc2-ceph1 >> #provisioned: false >> - hostname: overcloud-novacompute-2 >> name: dc1-compute1 >> #provisioned: false >> - hostname: overcloud-novacompute-3 >> name: dc1-compute2 >> #provisioned: false >> - hostname: overcloud-novacompute-4 >> name: dc2-compute3 >> #provisioned: false >> >> - name: CephStorage >> count: 4 >> defaults: >> networks: >> - network: ctlplane >> vif: true >> - network: internal_api >> subnet: internal_api_subnet >> - network: storage >> subnet: storage_subnet >> - network: storage_mgmt >> subnet: storage_mgmt_subnet >> network_config: >> template: /home/stack/templates/ceph-storage.j2 >> instances: >> - hostname: overcloud-cephstorage-0 >> name: dc2-controller1 >> #provisioned: false >> # - hostname: overcloud-cephstorage-1 >> # name: dc2-ceph2 >> - hostname: overcloud-cephstorage-1 >> name: dc1-ceph1 >> # provisioned: false >> - hostname: overcloud-cephstorage-2 >> name: dc1-ceph2 >> #provisioned: false >> - hostname: overcloud-cephstorage-3 >> name: dc2-compute2 >> #provisioned: false >> >> >> You must use these templates to provision network, vip and nodes. >> You must use the output files generated during the provisioning >> step in openstack overcloud deploy command using -e parameter. >> >> With regards, >> Swogat Pradhan >> >> >> On Mon, May 23, 2022 at 8:33 PM Lokendra Rathour < >> lokendrarathour@gmail.com> wrote: >> >>> Hi Swogat, >>> I tried checking your solution and my templates but could not >>> relate much. >>> But issue seems the same >>> >>> http://lists.openstack.org/pipermail/openstack-discuss/2022-May/028401.html >>> >>> I tried somemore ways but looks like some issue with templates. >>> Can you please share the templates used to deploy the overcloud. >>> >>> Mysetup have 3 controller and 1 compute. >>> >>> Thanks once again for reading my mail. >>> >>> Waiting for your reply. >>> >>> -Lokendra >>> >>> On Fri, 20 May 2022, 08:25 Swogat Pradhan, < >>> swogatpradhan22@gmail.com> wrote: >>> >>>> Hi, >>>> Yes I was able to find the issue and fix it. >>>> The issue was with the overcloud-baremetal-deployed.yaml file i >>>> was trying to provision controller-0, controller-1 and controller-3 and >>>> kept controller-2 aside for later, but the tripleo scripts are built in >>>> such a way that they were taking controller- 0, 1 and 2 inplace of >>>> controller-3, so the network ports and vip were created for controller 0,1 >>>> and 2 but not for 3 , so this error was popping off. Also i would request >>>> you to check the jinja nic templates and once the node provisioning is done >>>> check the /etc/os-net-config/config.json/yaml file for syntax if using >>>> bonded nic template. >>>> If you need any more infor please let me know. >>>> >>>> With regards, >>>> Swogat Pradhan >>>> >>>> >>>> >>>> On Fri, May 20, 2022 at 8:01 AM Lokendra Rathour < >>>> lokendrarathour@gmail.com> wrote: >>>> >>>>> Hi Swogat, >>>>> Thanks for raising this issue. >>>>> Did you find any solution? to this problem ? >>>>> >>>>> Please let me know it might be helpful >>>>> >>>>> >>>>> On Tue, Apr 19, 2022 at 12:43 PM Swogat Pradhan < >>>>> swogatpradhan22@gmail.com> wrote: >>>>> >>>>>> Hi, >>>>>> I am currently trying to deploy openstack wallaby using tripleo >>>>>> arch. >>>>>> I created the network jinja templates, ran the following >>>>>> commands also: >>>>>> >>>>>> #openstack overcloud network provision --stack overcloud >>>>>> --output networks-deployed-environment.yaml custom_network_data.yaml >>>>>> # openstack overcloud network vip provision --stack overcloud >>>>>> --output vip-deployed-environment.yaml custom_vip_data.yaml >>>>>> # openstack overcloud node provision --stack overcloud >>>>>> --overcloud-ssh-key /home/stack/sshkey/id_rsa >>>>>> overcloud-baremetal-deploy.yaml >>>>>> >>>>>> and used the environment files in the openstack overcloud >>>>>> deploy command: >>>>>> >>>>>> (undercloud) [stack@hkg2director ~]$ cat deploy.sh >>>>>> #!/bin/bash >>>>>> THT=/usr/share/openstack-tripleo-heat-templates/ >>>>>> CNF=/home/stack/ >>>>>> openstack overcloud deploy --templates $THT \ >>>>>> -r $CNF/templates/roles_data.yaml \ >>>>>> -n $CNF/workplace/custom_network_data.yaml \ >>>>>> -e ~/containers-prepare-parameter.yaml \ >>>>>> -e $CNF/templates/node-info.yaml \ >>>>>> -e $CNF/templates/scheduler-hints.yaml \ >>>>>> -e $CNF/workplace/networks-deployed-environment.yaml \ >>>>>> -e $CNF/workplace/vip-deployed-environment.yaml \ >>>>>> -e $CNF/workplace/overcloud-baremetal-deployed.yaml \ >>>>>> -e $CNF/workplace/custom-net-bond-with-vlans.yaml >>>>>> >>>>>> Now when i run the ./deploy.sh script i encounter an error >>>>>> stating: >>>>>> >>>>>> ERROR openstack [-] Resource >>>>>> OS::TripleO::Network::Ports::ControlPlaneVipPort maps to type >>>>>> OS::Neutron::Port and the Neutron service is not available when using >>>>>> ephemeral Heat. The generated environments from 'openstack overcloud >>>>>> baremetal provision' and 'openstack overcloud network provision' must be >>>>>> included with the deployment command.: >>>>>> tripleoclient.exceptions.InvalidConfiguration: Resource >>>>>> OS::TripleO::Network::Ports::ControlPlaneVipPort maps to type >>>>>> OS::Neutron::Port and the Neutron service is not available when using >>>>>> ephemeral Heat. The generated environments from 'openstack overcloud >>>>>> baremetal provision' and 'openstack overcloud network provision' must be >>>>>> included with the deployment command. >>>>>> 2022-04-19 13:47:16.582 735924 INFO osc_lib.shell [-] END >>>>>> return value: 1 >>>>>> >>>>>> Can someone tell me where the mistake is? >>>>>> >>>>>> With regards, >>>>>> Swogat Pradhan >>>>>> >>>>> >>>>> >>>>>
Hi Lokendra, I am not sure why this issue is caused, can you please check the tripleo_dnsmasq service and the tripleo_ironic_pxe service in your director node? IF the services are running fine then please report this here for fast resolvement https://bugzilla.redhat.com/ With regards, Swogat Pradhan On Tue, Jun 7, 2022 at 12:54 PM Lokendra Rathour <lokendrarathour@gmail.com> wrote:
Hi Swogat, Yes after correcting the j2 template, as suggested by you, it started working. Thanks a lot once again. Now the Overcloud is deployed.
Further, as a next requirement, we were also trying to add an *additional Node as a bare-metal Instance* on the overcloud. As it is the composable network approach, we add an entry in parameters default for ServiceNetMap, as like below in environments/network-environments.yaml
parameter_defaults: # This section is where deployment-specific configuration is done ServiceNetMap: IronicApiNetwork: oc_provisioning IronicNetwork: oc_provisioning
this is now passed as in the environment.yaml as parameter_defaults, but somehow we are not able to deploy the setup. it gives the error for containers.
*2022-06-06 19:08:37.560800 | 525400fd-f24d-9703-b0e7-0000000084b2 | FATAL | Manage container systemd services and cleanup old systemd healthchecks for /var/lib/tripleo-config/container-startup-config/step_4 | overcloud-controller-0 | error={"changed": false, "msg": "Service ironic_pxe_tftp has not started yet"}*
and if we remove this setting as stated above, the deployment is successful, but at the time of node provisioning it is not able to reach the TFTP server to pull files, mainly because of the composable network (oc_provisioning), we faced this issue in Train, so we did the above config changes and it working. But as it looks something more is needed in Wallaby for Baremetal provisioning as an instance.
Please share your learnings with the reference to it. Thanks once again for your all-time support. reference link: Bare Metal Instances in Overcloud — TripleO 3.0.0 documentation (openstack.org) <https://docs.openstack.org/project-deploy-guide/tripleo-docs/wallaby/features/baremetal_overcloud.html>
-Lokendra
On Wed, Jun 1, 2022 at 12:19 AM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Ok Swogat, Thanks once again. i will try this approach once and will let you know.
On Wed, 1 Jun 2022, 00:04 Swogat Pradhan, <swogatpradhan22@gmail.com> wrote:
NOTE: when passing --network-config parameter in node provision step, it creates a directory in /etc/os-net-config and in it creates a file config.yaml, do check the indentation of that file. (in my case the indentation was wrong when i was using bonding everytime, so i had to manually change the script and run a while loop and then my node
Hi Lokendra, Like i said, provision step was successful) this parameter --network-config creates a config.yaml(network config) file in /etc/os-net-config directory in the overcloud nodes and then ansible tries to apply the network config from the generated config file. And in wallaby version if you are using bonding then the syntax in the generated conf is wrong (atleast was in my case) and then the ansible tries to apply the network config (with wrong syntax) so your overcloud nodes become unavailable.
Please run node provision separately, and keep on monitoring "metalsmith list" command. Once IP is assigned to the overcloud nodes, ssh to the nodes and assign a password to heat-admin user so that even if the network becomes unavailable you still will be able to access the nodes via console access, then you can visit /etc/os-net-config directory and verify the config.yaml file.
With regards, Swogat pradhan.
On Tue, May 31, 2022 at 11:56 PM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Hi Swogat, Thanks once again for your input it really helped much.
instead of running mentioned those three provisioning steps i used alternate method and passed directly in deploy command. now my current deploy command is:
openstack overcloud deploy --templates \ --networks-file /home/stack/templates/custom_network_data.yaml \ --vip-file /home/stack/templates/custom_vip_data.yaml \ --baremetal-deployment /home/stack/templates/overcloud-baremetal-deploy.yaml \ --network-config \ -e /home/stack/templates/environment.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-conductor.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-inspector.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-overcloud.yaml \ -e /home/stack/templates/ironic-config.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/docker-ha.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/podman.yaml \ -e /home/stack/containers-prepare-parameter.yaml
The files as suggested by you are well created.
But once we run the deployment I get this error for all nodes:
0:00:16.064781 | 1.16s 2022-05-31 19:13:00.276954 | 525400ef-b928-9ded-fecc-000000000094 | TASK | Run tripleo_os_net_config_module with network_config 2022-05-31 19:40:30.061582 | 525400ef-b928-9ded-fecc-000000000094 | FATAL | Run tripleo_os_net_config_module with network_config | overcloud-controller-1 | error={"msg": "Data could not be sent to remote host \"30.30.30.117\". Make sure this host can be reached over ssh: ssh: connect to host 30.30.30.117 port 22: No route to host\r\n"} 2022-
Baremetal node list are showing in as active.
(undercloud) [stack@undercloud ~]$ openstack baremetal node list /usr/lib64/python3.6/site-packages/_yaml/__init__.py:23: DeprecationWarning: The _yaml extension module is now located at yaml._yaml and its location is subject to change. To use the LibYAML-based parser and emitter, import from `yaml`: `from yaml import CLoader as Loader, CDumper as Dumper`. DeprecationWarning
+--------------------------------------+--------+--------------------------------------+-------------+--------------------+-------------+ | UUID | Name | Instance UUID | Power State | Provisioning State | Maintenance |
+--------------------------------------+--------+--------------------------------------+-------------+--------------------+-------------+ | 1a4d873c-f9f7-4504-a3af-92c11f954171 | node-a | 901453a1-183f-4de8-aaab-0f38be2be455 | power on | active | False | | d18610fc-9532-410c-918e-8efc326c89f8 | node-b | d059b94a-8357-4f8e-a0d8-15a24b0c1afe | power on | active | False | | b69f2d5a-5b18-4453-8843-15c6af79aca0 | node-c | f196ef3a-7950-47b9-a5ae-751f06b18f75 | power on | active | False | | 8a38c584-f812-4ebc-a0b1-4299f0917637 | node-d | 1636517c-2ab2-43d7-8205-9f02c5290207 | power on | active | False |
+--------------------------------------+--------+--------------------------------------+-------------+--------------------+-------------+
Some config is missing it seems, please check once and advise.
On Tue, May 31, 2022 at 11:40 AM Swogat Pradhan < swogatpradhan22@gmail.com> wrote:
Hi Lokendra, You need to generate another file also in the following step: openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa overcloud-baremetal-deploy.yaml also you need to pass another parameter --network-config. example: openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa *--network-config* *--output overcloud-baremetal-deployed.yaml* overcloud-baremetal-deploy.yaml
And then all these output files will be passed on to the openstack overcloud deploy command. NOTE: when passing --network-config parameter in node provision step, it creates a directory in /etc/os-net-config and in it creates a file config.yaml, do check the indentation of that file. (in my case the indentation was wrong when i was using bondind everytime, so i had to manually change the script and run a while loop and then my node provision step was successful)
On Tue, May 31, 2022 at 8:59 AM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Hi Swogat, I tried generating the scripts as used by you in your deployments using the
#openstack overcloud network provision --stack overcloud --output networks-deployed-environment.yaml custom_network_data.yaml # openstack overcloud network vip provision --stack overcloud --output vip-deployed-environment.yaml custom_vip_data.yaml # openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa overcloud-baremetal-deploy.yaml
and used the first two in the final deployment script, but it gives the error:
heatclient.exc.HTTPInternalServerError: ERROR: Internal Error 2022-05-30 14:14:39.772 479668 ERROR tripleoclient.v1.overcloud_deploy.DeployOvercloud Traceback (most recent call last):\n', ' File "/usr/lib/python3.6/ted_stack\n nested_stack.validate()\n', ' File "/usr/lib/python3.6/site-packages/osprofiler/profiler.py", line 160, in wrapper\n result = f(*args, ine 969, in validate\n result = res.validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/openstack/neutron/port.py", line 454site-packages/heat/engine/resources/openstack/neutron/neutron.py", line 43, in validate\n res = super(NeutronResource, self).validate()\n', ' File "/un return self.validate_template()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resource.py", line 1882, in validate_template\n self.t.rpy", line 200, in _validate_service_availability\n raise ex\n', 'heat.common.exception.ResourceTypeUnavailable: HEAT-E99001 Service neutron is not avaieutron network endpoint is not in service catalog.\n', '\nDuring handling of the above exception, another exception occurred:\n\n', 'Traceback (most recens/stack_resource.py", line 75, in validate_nested_stack\n nested_stack.validate()\n', ' File "/usr/lib/python3.6/site-packages/osprofiler/profiler.py"thon3.6/site-packages/heat/engine/stack.py", line 969, in validate\n result = res.validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/ateResource, self).validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/stack_resource.py", line 65, in validate\n self.validources/stack_resource.py", line 81, in validate_nested_stack\n ex, path=[self.stack.t.RESOURCES, path])\n', 'heat.common.exception.StackValidationFaileeploy/overcloud/tripleo-heat-templates/deployed-server/deployed-server.yaml>: HEAT-E99001 Service neutron is not available for resource type OS::TripleO::vice catalog.\n', '\nDuring handling of the above exception, another exception occurred:\n\n', 'Traceback (most recent call last):\n', ' File "/usr/lib/pline 320, in validate_nested_stack\n nested_stack.validate()\n', ' File "/usr/lib/python3.6/site-packages/osprofiler/profiler.py", line 160, in wrappe/heat/engine/stack.py", line 969, in validate\n result = res.validate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/template_relidate()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/stack_resource.py", line 65, in validate\n self.validate_nested_stack()\n'.py", line 81, in validate_nested_stack\n ex, path=[self.stack.t.RESOURCES, path])\n', 'heat.common.exception.StackValidationFailed: ResourceTypeUnavaimplates/puppet/compute-role.yaml>.resources.NovaCompute<file:///home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/deployed-server/deployed-servpleO::DeployedServer::ControlPlanePort, reason: neutron network endpoint is not in service catalog.\n', '\nDuring handling of the above exception, another/lib/python3.6/site-packages/heat/common/context.py", line 416, in wrapped\n return func(self, ctx, *args, **kwargs)\n', ' File "/usr/lib/python3.6/sirce_name, template_id)\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/service.py", line 756, in _parse_template_and_validate_stack\n stack.v line 160, in wrapper\n result = f(*args, **kwargs)\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/stack.py", line 969, in validate\n resesources/stack_resource.py", line 65, in validate\n self.validate_nested_stack()\n', ' File "/usr/lib/python3.6/site-packages/heat/engine/resources/oph=[self.stack.t.RESOURCES, path])\n', 'heat.common.exception.StackValidationFailed: ResourceTypeUnavailable: resources.Compute<nested_stack>.resources.0<fte-role.yaml>.resources.NovaCompute<file:///home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/deployed-server/deployed-server.yaml>: HEAT-E9900::ControlPlanePort, reason: neutron network endpoint is not in service catalog.\n'].
Request you to check once, please.
On Mon, May 30, 2022 at 11:06 AM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
> Hi Swogat, > Thanks once again. > > with the files as shown below I am running the overcloud deploy for > wallaby using this command: > > (undercloud) [stack@undercloud ~]$ cat deploy_overcloud_working_1.sh > openstack overcloud deploy --templates \ > -n /home/stack/templates/network_data.yaml \ > -r /home/stack/templates/roles_data.yaml \ > -e /home/stack/templates/environment.yaml \ > -e /home/stack/templates/environments/network-isolation.yaml \ > -e /home/stack/templates/environments/network-environment.yaml \ > -e > /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-conductor.yaml > \ > -e > /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-inspector.yaml > \ > -e > /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-overcloud.yaml > \ > -e /home/stack/templates/ironic-config.yaml \ > -e > /usr/share/openstack-tripleo-heat-templates/environments/docker-ha.yaml \ > -e > /usr/share/openstack-tripleo-heat-templates/environments/podman.yaml \ > -e /home/stack/containers-prepare-parameter.yaml > (undercloud) [stack@undercloud ~]$ > > > This deployment is on ipv6 using triple0 wallaby, templates, as > mentioned below, are generated using rendering steps and the > network_data.yaml the roles_data.yaml > Steps used to render the templates: > cd /usr/share/openstack-tripleo-heat-templates/ > ./tools/process-templates.py -o > ~/openstack-tripleo-heat-templates-rendered_at_wallaby -n > /home/stack/templates/network_data.yaml -r > /home/stack/templates/roles_data.yaml > > *Now if i try adding the related to VIP port I do get the error as:* > > 2022-05-30 10:37:12.792 979387 WARNING > tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] rendering j2 template > to file: > /home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/puppet/controller-role.yaml > 2022-05-30 10:37:12.792 979387 WARNING > tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] rendering j2 template > to file: > /home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/puppet/compute-role.yaml > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] Exception occured > while running the command: ValueError: The environment is not a valid YAML > mapping data type. > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud Traceback (most recent > call last): > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud File > "/usr/lib/python3.6/site-packages/tripleoclient/command.py", line 34, in run > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud super(Command, > self).run(parsed_args) > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud File > "/usr/lib/python3.6/site-packages/osc_lib/command/command.py", line 39, in > run > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud return super(Command, > self).run(parsed_args) > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud File > "/usr/lib/python3.6/site-packages/cliff/command.py", line 185, in run > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud return_code = > self.take_action(parsed_args) or 0 > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud File > "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", > line 1189, in take_action > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud stack, parsed_args, > new_tht_root, user_tht_root) > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud File > "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", > line 227, in create_env_files > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud created_env_files, > parsed_args, new_tht_root, user_tht_root) > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud File > "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", > line 204, in build_image_params > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud cleanup=(not > parsed_args.no_cleanup)) > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud File > "/usr/lib/python3.6/site-packages/tripleoclient/utils.py", line 1929, in > process_multiple_environments > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud env_path=env_path, > include_env_in_files=include_env_in_files) > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud File > "/usr/lib/python3.6/site-packages/heatclient/common/template_utils.py", > line 326, in process_environment_and_files > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud env = > environment_format.parse(raw_env) > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud File > "/usr/lib/python3.6/site-packages/heatclient/common/environment_format.py", > line 50, in parse > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud raise > ValueError(_('The environment is not a valid ' > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud ValueError: The > environment is not a valid YAML mapping data type. > 2022-05-30 10:37:14.455 979387 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud > 2022-05-30 10:37:14.457 979387 ERROR openstack [-] The environment > is not a valid YAML mapping data type. > 2022-05-30 10:37:14.457 979387 INFO osc_lib.shell [-] END return > value: 1 > (undercloud) [stack@undercloud ~]$ > > This is more of a syntax error where it is not able to understand > the passed VIP data file: > > undercloud) [stack@undercloud ~]$ cat > /home/stack/templates/vip-data-default-network-isolation.yaml > - > dns_name: overcloud > network: internal_api > - > dns_name: overcloud > network: external > - > dns_name: overcloud > network: ctlplane > - > dns_name: overcloud > network: oc_provisioning > - > dns_name: overcloud > network: j3mgmt > > > Please advise, also please note that similar templates generated in > prior releases such as train/ussuri works perfectly. > > > > Please check the list of *templates *files: > > drwxr-xr-x. 2 stack stack 68 May 30 09:22 environments > -rw-r--r--. 1 stack stack 265 May 27 13:47 environment.yaml > -rw-rw-r--. 1 stack stack 297 May 27 13:47 init-repo.yaml > -rw-r--r--. 1 stack stack 570 May 27 13:47 ironic-config.yaml > drwxrwxr-x. 4 stack stack 4096 May 27 13:53 network > -rw-r--r--. 1 stack stack 6370 May 27 14:26 network_data.yaml > -rw-r--r--. 1 stack stack 11137 May 27 13:53 roles_data.yaml > -rw-r--r--. 1 stack stack 234 May 30 09:23 > vip-data-default-network-isolation.yaml > > > > (undercloud) [stack@undercloud templates]$ cat environment.yaml > > parameter_defaults: > OvercloudControllerFlavor: control > OvercloudComputeFlavor: compute > ControllerCount: 3 > ComputeCount: 1 > TimeZone: 'Asia/Kolkata' > NtpServer: ['30.30.30.3'] > NeutronBridgeMappings: datacentre:br-tenant > NeutronFlatNetworks: datacentre > (undercloud) [stack@undercloud templates]$ > > > > (undercloud) [stack@undercloud templates]$ cat ironic-config.yaml > > parameter_defaults: > NovaSchedulerDefaultFilters: > - AggregateInstanceExtraSpecsFilter > - AvailabilityZoneFilter > - ComputeFilter > - ComputeCapabilitiesFilter > - ImagePropertiesFilter > IronicEnabledHardwareTypes: > - ipmi > - redfish > IronicEnabledPowerInterfaces: > - ipmitool > - redfish > IronicEnabledManagementInterfaces: > - ipmitool > - redfish > IronicCleaningDiskErase: metadata > IronicIPXEEnabled: true > IronicInspectorSubnets: > - ip_range: 172.23.3.100,172.23.3.150 > > (undercloud) [stack@undercloud templates]$ cat network_data.yaml > > - name: J3Mgmt > name_lower: j3mgmt > vip: true > vlan: 400 > ipv6: true > ipv6_subnet: 'fd80:fd00:fd00:4000::/64' > ipv6_allocation_pools: [{'start': 'fd80:fd00:fd00:4000::10', > 'end': 'fd80:fd00:fd00:4000:ffff:ffff:ffff:fffe'}] > mtu: 9000 > > > > - name: InternalApi > name_lower: internal_api > vip: true > vlan: 418 > ipv6: true > ipv6_subnet: 'fd00:fd00:fd00:2000::/64' > ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:2000::10', > 'end': 'fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe'}] > mtu: 9000 > > > - name: External > vip: true > name_lower: external > vlan: 408 > ipv6: true > gateway_ipv6: 'fd00:fd00:fd00:9900::1' > ipv6_subnet: 'fd00:fd00:fd00:9900::/64' > ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:9900::10', > 'end': 'fd00:fd00:fd00:9900:ffff:ffff:ffff:fffe'}] > mtu: 9000 > > > - name: OCProvisioning > vip: true > name_lower: oc_provisioning > vlan: 412 > ip_subnet: '172.23.3.0/24' > allocation_pools: [{'start': '172.23.3.10', 'end': '172.23.3.50'}] > mtu: 9000 > > > > > (undercloud) [stack@undercloud templates]$ cat roles_data.yaml > > > ############################################################################### > # File generated by TripleO > > ############################################################################### > > ############################################################################### > # Role: Controller > # > > ############################################################################### > - name: Controller > description: | > Controller role that has all the controller services loaded and > handles > Database, Messaging, and Network functions. > CountDefault: 1 > tags: > - primary > - controller > # Create external Neutron bridge for SNAT (and floating IPs when > using > # ML2/OVS without DVR) > - external_bridge > networks: > External: > subnet: external_subnet > InternalApi: > subnet: internal_api_subnet > OCProvisioning: > subnet: oc_provisioning_subnet > J3Mgmt: > subnet: j3mgmt_subnet > > > # For systems with both IPv4 and IPv6, you may specify a gateway > network for > # each, such as ['ControlPlane', 'External'] > default_route_networks: ['External'] > HostnameFormatDefault: '%stackname%-controller-%index%' > RoleParametersDefault: > OVNCMSOptions: "enable-chassis-as-gw" > # Deprecated & backward-compatible values (FIXME: Make parameters > consistent) > # Set uses_deprecated_params to True if any deprecated params are > used. > uses_deprecated_params: True > deprecated_param_extraconfig: 'controllerExtraConfig' > deprecated_param_flavor: 'OvercloudControlFlavor' > deprecated_param_image: 'controllerImage' > deprecated_nic_config_name: 'controller.yaml' > update_serial: 1 > ServicesDefault: > - OS::TripleO::Services::Aide > - OS::TripleO::Services::AodhApi > - OS::TripleO::Services::AodhEvaluator > > .. > . > > > ..############################################################################### > # Role: Compute > # > > ############################################################################### > - name: Compute > description: | > Basic Compute Node role > CountDefault: 1 > # Create external Neutron bridge (unset if using ML2/OVS without > DVR) > tags: > - compute > - external_bridge > networks: > InternalApi: > subnet: internal_api_subnet > J3Mgmt: > subnet: j3mgmt_subnet > HostnameFormatDefault: '%stackname%-novacompute-%index%' > RoleParametersDefault: > FsAioMaxNumber: 1048576 > TunedProfileName: "virtual-host" > # Deprecated & backward-compatible values (FIXME: Make parameters > consistent) > # Set uses_deprecated_params to True if any deprecated params are > used. > # These deprecated_params only need to be used for existing roles > and not for > # composable roles. > uses_deprecated_params: True > deprecated_param_image: 'NovaImage' > deprecated_param_extraconfig: 'NovaComputeExtraConfig' > deprecated_param_metadata: 'NovaComputeServerMetadata' > deprecated_param_scheduler_hints: 'NovaComputeSchedulerHints' > deprecated_param_ips: 'NovaComputeIPs' > deprecated_server_resource_name: 'NovaCompute' > > deprecated_nic_config_name: 'compute.yaml' > update_serial: 25 > ServicesDefault: > - OS::TripleO::Services::Aide > - OS::TripleO::Services::AuditD > - OS::TripleO::Services::BootParams > > > (undercloud) [stack@undercloud templates]$ cat > environments/network-environment.yaml > > #This file is an example of an environment file for defining the > isolated > #networks and related parameters. > resource_registry: > # Network Interface templates to use (these files must exist). You > can > # override these by including one of the net-*.yaml environment > files, > # such as net-bond-with-vlans.yaml, or modifying the list here. > # Port assignments for the Controller > OS::TripleO::Controller::Net::SoftwareConfig: OS::Heat::None > # Port assignments for the Compute > OS::TripleO::Compute::Net::SoftwareConfig: OS::Heat::None > > > parameter_defaults: > # This section is where deployment-specific configuration is done > # > ServiceNetMap: > IronicApiNetwork: oc_provisioning > IronicNetwork: oc_provisioning > > > > # This section is where deployment-specific configuration is done > ControllerNetworkConfigTemplate: > 'templates/bonds_vlans/bonds_vlans.j2' > ComputeNetworkConfigTemplate: > 'templates/bonds_vlans/bonds_vlans.j2' > > > > # Customize the IP subnet to match the local environment > J3MgmtNetCidr: 'fd80:fd00:fd00:4000::/64' > # Customize the IP range to use for static IPs and VIPs > J3MgmtAllocationPools: [{'start': 'fd80:fd00:fd00:4000::10', > 'end': 'fd80:fd00:fd00:4000:ffff:ffff:ffff:fffe'}] > # Customize the VLAN ID to match the local environment > J3MgmtNetworkVlanID: 400 > > > > # Customize the IP subnet to match the local environment > InternalApiNetCidr: 'fd00:fd00:fd00:2000::/64' > # Customize the IP range to use for static IPs and VIPs > InternalApiAllocationPools: [{'start': 'fd00:fd00:fd00:2000::10', > 'end': 'fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe'}] > # Customize the VLAN ID to match the local environment > InternalApiNetworkVlanID: 418 > > > > # Customize the IP subnet to match the local environment > ExternalNetCidr: 'fd00:fd00:fd00:9900::/64' > # Customize the IP range to use for static IPs and VIPs > # Leave room if the external network is also used for floating IPs > ExternalAllocationPools: [{'start': 'fd00:fd00:fd00:9900::10', > 'end': 'fd00:fd00:fd00:9900:ffff:ffff:ffff:fffe'}] > # Gateway router for routable networks > ExternalInterfaceDefaultRoute: 'fd00:fd00:fd00:9900::1' > # Customize the VLAN ID to match the local environment > ExternalNetworkVlanID: 408 > > > > # Customize the IP subnet to match the local environment > OCProvisioningNetCidr: '172.23.3.0/24' > # Customize the IP range to use for static IPs and VIPs > OCProvisioningAllocationPools: [{'start': '172.23.3.10', 'end': > '172.23.3.50'}] > # Customize the VLAN ID to match the local environment > OCProvisioningNetworkVlanID: 412 > > > > # List of Neutron network types for tenant networks (will be used > in order) > NeutronNetworkType: 'geneve,vlan' > # Neutron VLAN ranges per network, for example > 'datacentre:1:499,tenant:500:1000': > NeutronNetworkVLANRanges: 'datacentre:1:1000' > # Customize bonding options, e.g. "mode=4 lacp_rate=1 updelay=1000 > miimon=100" > # for Linux bonds w/LACP, or "bond_mode=active-backup" for OVS > active/backup. > BondInterfaceOvsOptions: "bond_mode=active-backup" > > (undercloud) [stack@undercloud templates]$ > > > (undercloud) [stack@undercloud templates]$ cat > environments/network-isolation.yaml > > # NOTE: This template is now deprecated, and is only included for > compatibility > # when upgrading a deployment where this template was originally > used. For new > # deployments, set "ipv6: true" on desired networks in > network_data.yaml, and > # include network-isolation.yaml. > # > # Enable the creation of Neutron networks for isolated Overcloud > # traffic and configure each role to assign ports (related > # to that role) on these networks. > resource_registry: > # networks as defined in network_data.yaml > OS::TripleO::Network::J3Mgmt: ../network/j3mgmt_v6.yaml > OS::TripleO::Network::InternalApi: ../network/internal_api_v6.yaml > OS::TripleO::Network::External: ../network/external_v6.yaml > OS::TripleO::Network::OCProvisioning: > ../network/oc_provisioning.yaml > > > # Port assignments for the VIPs > OS::TripleO::Network::Ports::J3MgmtVipPort: > ../network/ports/j3mgmt_v6.yaml > OS::TripleO::Network::Ports::InternalApiVipPort: > ../network/ports/internal_api_v6.yaml > OS::TripleO::Network::Ports::ExternalVipPort: > ../network/ports/external_v6.yaml > OS::TripleO::Network::Ports::OCProvisioningVipPort: > ../network/ports/oc_provisioning.yaml > > > > # Port assignments by role, edit role definition to assign > networks to roles. > # Port assignments for the Controller > OS::TripleO::Controller::Ports::J3MgmtPort: > ../network/ports/j3mgmt_v6.yaml > OS::TripleO::Controller::Ports::InternalApiPort: > ../network/ports/internal_api_v6.yaml > OS::TripleO::Controller::Ports::ExternalPort: > ../network/ports/external_v6.yaml > OS::TripleO::Controller::Ports::OCProvisioningPort: > ../network/ports/oc_provisioning.yaml > # Port assignments for the Compute > OS::TripleO::Compute::Ports::J3MgmtPort: > ../network/ports/j3mgmt_v6.yaml > OS::TripleO::Compute::Ports::InternalApiPort: > ../network/ports/internal_api_v6.yaml > > > > parameter_defaults: > # Enable IPv6 environment for Manila > ManilaIPv6: True > > (undercloud) [stack@undercloud templates]$ > > > > > > > > > > On Tue, May 24, 2022 at 5:04 PM Lokendra Rathour < > lokendrarathour@gmail.com> wrote: > >> Thanks, I'll check them out. >> will let you know in case it works out. >> >> On Tue, May 24, 2022 at 2:37 PM Swogat Pradhan < >> swogatpradhan22@gmail.com> wrote: >> >>> Hi, >>> Please find the below templates: >>> These are for openstack wallaby release: >>> >>> (undercloud) [stack@hkg2director workplace]$ cat >>> custom_network_data.yaml >>> - name: Storage >>> name_lower: storage >>> vip: true >>> mtu: 1500 >>> subnets: >>> storage_subnet: >>> ip_subnet: 172.25.202.0/26 >>> allocation_pools: >>> - start: 172.25.202.6 >>> end: 172.25.202.20 >>> vlan: 1105 >>> - name: StorageMgmt >>> name_lower: storage_mgmt >>> vip: true >>> mtu: 1500 >>> subnets: >>> storage_mgmt_subnet: >>> ip_subnet: 172.25.202.64/26 >>> allocation_pools: >>> - start: 172.25.202.72 >>> end: 172.25.202.87 >>> vlan: 1106 >>> - name: InternalApi >>> name_lower: internal_api >>> vip: true >>> mtu: 1500 >>> subnets: >>> internal_api_subnet: >>> ip_subnet: 172.25.201.192/26 >>> allocation_pools: >>> - start: 172.25.201.198 >>> end: 172.25.201.212 >>> vlan: 1104 >>> - name: Tenant >>> vip: false # Tenant network does not use VIPs >>> mtu: 1500 >>> name_lower: tenant >>> subnets: >>> tenant_subnet: >>> ip_subnet: 172.25.202.128/26 >>> allocation_pools: >>> - start: 172.25.202.135 >>> end: 172.25.202.150 >>> vlan: 1108 >>> - name: External >>> name_lower: external >>> vip: true >>> mtu: 1500 >>> subnets: >>> external_subnet: >>> ip_subnet: 172.25.201.128/26 >>> allocation_pools: >>> - start: 172.25.201.135 >>> end: 172.25.201.150 >>> gateway_ip: 172.25.201.129 >>> vlan: 1103 >>> >>> (undercloud) [stack@hkg2director workplace]$ cat >>> custom_vip_data.yaml >>> - network: ctlplane >>> #dns_name: overcloud >>> ip_address: 172.25.201.91 >>> subnet: ctlplane-subnet >>> - network: external >>> #dns_name: overcloud >>> ip_address: 172.25.201.150 >>> subnet: external_subnet >>> - network: internal_api >>> #dns_name: overcloud >>> ip_address: 172.25.201.250 >>> subnet: internal_api_subnet >>> - network: storage >>> #dns_name: overcloud >>> ip_address: 172.25.202.50 >>> subnet: storage_subnet >>> - network: storage_mgmt >>> #dns_name: overcloud >>> ip_address: 172.25.202.90 >>> subnet: storage_mgmt_subnet >>> >>> (undercloud) [stack@hkg2director workplace]$ cat >>> overcloud-baremetal-deploy.yaml >>> - name: Controller >>> count: 4 >>> defaults: >>> networks: >>> - network: ctlplane >>> vif: true >>> - network: external >>> subnet: external_subnet >>> - network: internal_api >>> subnet: internal_api_subnet >>> - network: storage >>> subnet: storage_subnet >>> - network: storage_mgmt >>> subnet: storage_mgmt_subnet >>> - network: tenant >>> subnet: tenant_subnet >>> network_config: >>> template: /home/stack/templates/controller.j2 >>> default_route_network: >>> - external >>> instances: >>> - hostname: overcloud-controller-0 >>> name: dc1-controller2 >>> #provisioned: false >>> - hostname: overcloud-controller-1 >>> name: dc2-controller2 >>> #provisioned: false >>> - hostname: overcloud-controller-2 >>> name: dc1-controller1 >>> #provisioned: false >>> - hostname: overcloud-controller-no-ceph-3 >>> name: dc2-ceph2 >>> #provisioned: false >>> #- hostname: overcloud-controller-3 >>> #name: dc2-compute3 >>> #provisioned: false >>> >>> - name: Compute >>> count: 5 >>> defaults: >>> networks: >>> - network: ctlplane >>> vif: true >>> - network: internal_api >>> subnet: internal_api_subnet >>> - network: tenant >>> subnet: tenant_subnet >>> - network: storage >>> subnet: storage_subnet >>> network_config: >>> template: /home/stack/templates/compute.j2 >>> instances: >>> - hostname: overcloud-novacompute-0 >>> name: dc2-compute1 >>> #provisioned: false >>> - hostname: overcloud-novacompute-1 >>> name: dc2-ceph1 >>> #provisioned: false >>> - hostname: overcloud-novacompute-2 >>> name: dc1-compute1 >>> #provisioned: false >>> - hostname: overcloud-novacompute-3 >>> name: dc1-compute2 >>> #provisioned: false >>> - hostname: overcloud-novacompute-4 >>> name: dc2-compute3 >>> #provisioned: false >>> >>> - name: CephStorage >>> count: 4 >>> defaults: >>> networks: >>> - network: ctlplane >>> vif: true >>> - network: internal_api >>> subnet: internal_api_subnet >>> - network: storage >>> subnet: storage_subnet >>> - network: storage_mgmt >>> subnet: storage_mgmt_subnet >>> network_config: >>> template: /home/stack/templates/ceph-storage.j2 >>> instances: >>> - hostname: overcloud-cephstorage-0 >>> name: dc2-controller1 >>> #provisioned: false >>> # - hostname: overcloud-cephstorage-1 >>> # name: dc2-ceph2 >>> - hostname: overcloud-cephstorage-1 >>> name: dc1-ceph1 >>> # provisioned: false >>> - hostname: overcloud-cephstorage-2 >>> name: dc1-ceph2 >>> #provisioned: false >>> - hostname: overcloud-cephstorage-3 >>> name: dc2-compute2 >>> #provisioned: false >>> >>> >>> You must use these templates to provision network, vip and nodes. >>> You must use the output files generated during the provisioning >>> step in openstack overcloud deploy command using -e parameter. >>> >>> With regards, >>> Swogat Pradhan >>> >>> >>> On Mon, May 23, 2022 at 8:33 PM Lokendra Rathour < >>> lokendrarathour@gmail.com> wrote: >>> >>>> Hi Swogat, >>>> I tried checking your solution and my templates but could not >>>> relate much. >>>> But issue seems the same >>>> >>>> http://lists.openstack.org/pipermail/openstack-discuss/2022-May/028401.html >>>> >>>> I tried somemore ways but looks like some issue with templates. >>>> Can you please share the templates used to deploy the overcloud. >>>> >>>> Mysetup have 3 controller and 1 compute. >>>> >>>> Thanks once again for reading my mail. >>>> >>>> Waiting for your reply. >>>> >>>> -Lokendra >>>> >>>> On Fri, 20 May 2022, 08:25 Swogat Pradhan, < >>>> swogatpradhan22@gmail.com> wrote: >>>> >>>>> Hi, >>>>> Yes I was able to find the issue and fix it. >>>>> The issue was with the overcloud-baremetal-deployed.yaml file i >>>>> was trying to provision controller-0, controller-1 and controller-3 and >>>>> kept controller-2 aside for later, but the tripleo scripts are built in >>>>> such a way that they were taking controller- 0, 1 and 2 inplace of >>>>> controller-3, so the network ports and vip were created for controller 0,1 >>>>> and 2 but not for 3 , so this error was popping off. Also i would request >>>>> you to check the jinja nic templates and once the node provisioning is done >>>>> check the /etc/os-net-config/config.json/yaml file for syntax if using >>>>> bonded nic template. >>>>> If you need any more infor please let me know. >>>>> >>>>> With regards, >>>>> Swogat Pradhan >>>>> >>>>> >>>>> >>>>> On Fri, May 20, 2022 at 8:01 AM Lokendra Rathour < >>>>> lokendrarathour@gmail.com> wrote: >>>>> >>>>>> Hi Swogat, >>>>>> Thanks for raising this issue. >>>>>> Did you find any solution? to this problem ? >>>>>> >>>>>> Please let me know it might be helpful >>>>>> >>>>>> >>>>>> On Tue, Apr 19, 2022 at 12:43 PM Swogat Pradhan < >>>>>> swogatpradhan22@gmail.com> wrote: >>>>>> >>>>>>> Hi, >>>>>>> I am currently trying to deploy openstack wallaby using >>>>>>> tripleo arch. >>>>>>> I created the network jinja templates, ran the following >>>>>>> commands also: >>>>>>> >>>>>>> #openstack overcloud network provision --stack overcloud >>>>>>> --output networks-deployed-environment.yaml custom_network_data.yaml >>>>>>> # openstack overcloud network vip provision --stack overcloud >>>>>>> --output vip-deployed-environment.yaml custom_vip_data.yaml >>>>>>> # openstack overcloud node provision --stack overcloud >>>>>>> --overcloud-ssh-key /home/stack/sshkey/id_rsa >>>>>>> overcloud-baremetal-deploy.yaml >>>>>>> >>>>>>> and used the environment files in the openstack overcloud >>>>>>> deploy command: >>>>>>> >>>>>>> (undercloud) [stack@hkg2director ~]$ cat deploy.sh >>>>>>> #!/bin/bash >>>>>>> THT=/usr/share/openstack-tripleo-heat-templates/ >>>>>>> CNF=/home/stack/ >>>>>>> openstack overcloud deploy --templates $THT \ >>>>>>> -r $CNF/templates/roles_data.yaml \ >>>>>>> -n $CNF/workplace/custom_network_data.yaml \ >>>>>>> -e ~/containers-prepare-parameter.yaml \ >>>>>>> -e $CNF/templates/node-info.yaml \ >>>>>>> -e $CNF/templates/scheduler-hints.yaml \ >>>>>>> -e $CNF/workplace/networks-deployed-environment.yaml \ >>>>>>> -e $CNF/workplace/vip-deployed-environment.yaml \ >>>>>>> -e $CNF/workplace/overcloud-baremetal-deployed.yaml \ >>>>>>> -e $CNF/workplace/custom-net-bond-with-vlans.yaml >>>>>>> >>>>>>> Now when i run the ./deploy.sh script i encounter an error >>>>>>> stating: >>>>>>> >>>>>>> ERROR openstack [-] Resource >>>>>>> OS::TripleO::Network::Ports::ControlPlaneVipPort maps to type >>>>>>> OS::Neutron::Port and the Neutron service is not available when using >>>>>>> ephemeral Heat. The generated environments from 'openstack overcloud >>>>>>> baremetal provision' and 'openstack overcloud network provision' must be >>>>>>> included with the deployment command.: >>>>>>> tripleoclient.exceptions.InvalidConfiguration: Resource >>>>>>> OS::TripleO::Network::Ports::ControlPlaneVipPort maps to type >>>>>>> OS::Neutron::Port and the Neutron service is not available when using >>>>>>> ephemeral Heat. The generated environments from 'openstack overcloud >>>>>>> baremetal provision' and 'openstack overcloud network provision' must be >>>>>>> included with the deployment command. >>>>>>> 2022-04-19 13:47:16.582 735924 INFO osc_lib.shell [-] END >>>>>>> return value: 1 >>>>>>> >>>>>>> Can someone tell me where the mistake is? >>>>>>> >>>>>>> With regards, >>>>>>> Swogat Pradhan >>>>>>> >>>>>> >>>>>> >>>>>>
You'd need to check whether that oc_provisioning network is part of network_data and is mapped to the Controller role (might be a different role if you completely customize roles). If you want to use the provisioning network used by undercloud then it should be ctlplane instead. Although bugzilla is open, we maintain upstream bugs for OpenStack components not in bugzilla but in launchpad, so please report a bug in launchpad instead. https://bugs.launchpad.net/tripleo On Wed, Jun 8, 2022 at 11:48 PM Swogat Pradhan <swogatpradhan22@gmail.com> wrote:
Hi Lokendra, I am not sure why this issue is caused, can you please check the tripleo_dnsmasq service and the tripleo_ironic_pxe service in your director node? IF the services are running fine then please report this here for fast resolvement https://bugzilla.redhat.com/
With regards, Swogat Pradhan
On Tue, Jun 7, 2022 at 12:54 PM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Hi Swogat, Yes after correcting the j2 template, as suggested by you, it started working. Thanks a lot once again. Now the Overcloud is deployed.
Further, as a next requirement, we were also trying to add an *additional Node as a bare-metal Instance* on the overcloud. As it is the composable network approach, we add an entry in parameters default for ServiceNetMap, as like below in environments/network-environments.yaml
parameter_defaults: # This section is where deployment-specific configuration is done ServiceNetMap: IronicApiNetwork: oc_provisioning IronicNetwork: oc_provisioning
this is now passed as in the environment.yaml as parameter_defaults, but somehow we are not able to deploy the setup. it gives the error for containers.
*2022-06-06 19:08:37.560800 | 525400fd-f24d-9703-b0e7-0000000084b2 | FATAL | Manage container systemd services and cleanup old systemd healthchecks for /var/lib/tripleo-config/container-startup-config/step_4 | overcloud-controller-0 | error={"changed": false, "msg": "Service ironic_pxe_tftp has not started yet"}*
and if we remove this setting as stated above, the deployment is successful, but at the time of node provisioning it is not able to reach the TFTP server to pull files, mainly because of the composable network (oc_provisioning), we faced this issue in Train, so we did the above config changes and it working. But as it looks something more is needed in Wallaby for Baremetal provisioning as an instance.
Please share your learnings with the reference to it. Thanks once again for your all-time support. reference link: Bare Metal Instances in Overcloud — TripleO 3.0.0 documentation (openstack.org) <https://docs.openstack.org/project-deploy-guide/tripleo-docs/wallaby/features/baremetal_overcloud.html>
-Lokendra
On Wed, Jun 1, 2022 at 12:19 AM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Ok Swogat, Thanks once again. i will try this approach once and will let you know.
On Wed, 1 Jun 2022, 00:04 Swogat Pradhan, <swogatpradhan22@gmail.com> wrote:
NOTE: when passing --network-config parameter in node provision step, it creates a directory in /etc/os-net-config and in it creates a file config.yaml, do check the indentation of that file. (in my case the indentation was wrong when i was using bonding everytime, so i had to manually change the script and run a while loop and then my node
Hi Lokendra, Like i said, provision step was successful) this parameter --network-config creates a config.yaml(network config) file in /etc/os-net-config directory in the overcloud nodes and then ansible tries to apply the network config from the generated config file. And in wallaby version if you are using bonding then the syntax in the generated conf is wrong (atleast was in my case) and then the ansible tries to apply the network config (with wrong syntax) so your overcloud nodes become unavailable.
Please run node provision separately, and keep on monitoring "metalsmith list" command. Once IP is assigned to the overcloud nodes, ssh to the nodes and assign a password to heat-admin user so that even if the network becomes unavailable you still will be able to access the nodes via console access, then you can visit /etc/os-net-config directory and verify the config.yaml file.
With regards, Swogat pradhan.
On Tue, May 31, 2022 at 11:56 PM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
Hi Swogat, Thanks once again for your input it really helped much.
instead of running mentioned those three provisioning steps i used alternate method and passed directly in deploy command. now my current deploy command is:
openstack overcloud deploy --templates \ --networks-file /home/stack/templates/custom_network_data.yaml \ --vip-file /home/stack/templates/custom_vip_data.yaml \ --baremetal-deployment /home/stack/templates/overcloud-baremetal-deploy.yaml \ --network-config \ -e /home/stack/templates/environment.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-conductor.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-inspector.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-overcloud.yaml \ -e /home/stack/templates/ironic-config.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/docker-ha.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/podman.yaml \ -e /home/stack/containers-prepare-parameter.yaml
The files as suggested by you are well created.
But once we run the deployment I get this error for all nodes:
0:00:16.064781 | 1.16s 2022-05-31 19:13:00.276954 | 525400ef-b928-9ded-fecc-000000000094 | TASK | Run tripleo_os_net_config_module with network_config 2022-05-31 19:40:30.061582 | 525400ef-b928-9ded-fecc-000000000094 | FATAL | Run tripleo_os_net_config_module with network_config | overcloud-controller-1 | error={"msg": "Data could not be sent to remote host \"30.30.30.117\". Make sure this host can be reached over ssh: ssh: connect to host 30.30.30.117 port 22: No route to host\r\n"} 2022-
Baremetal node list are showing in as active.
(undercloud) [stack@undercloud ~]$ openstack baremetal node list /usr/lib64/python3.6/site-packages/_yaml/__init__.py:23: DeprecationWarning: The _yaml extension module is now located at yaml._yaml and its location is subject to change. To use the LibYAML-based parser and emitter, import from `yaml`: `from yaml import CLoader as Loader, CDumper as Dumper`. DeprecationWarning
+--------------------------------------+--------+--------------------------------------+-------------+--------------------+-------------+ | UUID | Name | Instance UUID | Power State | Provisioning State | Maintenance |
+--------------------------------------+--------+--------------------------------------+-------------+--------------------+-------------+ | 1a4d873c-f9f7-4504-a3af-92c11f954171 | node-a | 901453a1-183f-4de8-aaab-0f38be2be455 | power on | active | False | | d18610fc-9532-410c-918e-8efc326c89f8 | node-b | d059b94a-8357-4f8e-a0d8-15a24b0c1afe | power on | active | False | | b69f2d5a-5b18-4453-8843-15c6af79aca0 | node-c | f196ef3a-7950-47b9-a5ae-751f06b18f75 | power on | active | False | | 8a38c584-f812-4ebc-a0b1-4299f0917637 | node-d | 1636517c-2ab2-43d7-8205-9f02c5290207 | power on | active | False |
+--------------------------------------+--------+--------------------------------------+-------------+--------------------+-------------+
Some config is missing it seems, please check once and advise.
On Tue, May 31, 2022 at 11:40 AM Swogat Pradhan < swogatpradhan22@gmail.com> wrote:
Hi Lokendra, You need to generate another file also in the following step: openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa overcloud-baremetal-deploy.yaml also you need to pass another parameter --network-config. example: openstack overcloud node provision --stack overcloud --overcloud-ssh-key /home/stack/sshkey/id_rsa *--network-config* *--output overcloud-baremetal-deployed.yaml* overcloud-baremetal-deploy.yaml
And then all these output files will be passed on to the openstack overcloud deploy command. NOTE: when passing --network-config parameter in node provision step, it creates a directory in /etc/os-net-config and in it creates a file config.yaml, do check the indentation of that file. (in my case the indentation was wrong when i was using bondind everytime, so i had to manually change the script and run a while loop and then my node provision step was successful)
On Tue, May 31, 2022 at 8:59 AM Lokendra Rathour < lokendrarathour@gmail.com> wrote:
> Hi Swogat, > I tried generating the scripts as used by you in your deployments > using the > > > #openstack overcloud network provision --stack overcloud --output > networks-deployed-environment.yaml custom_network_data.yaml > # openstack overcloud network vip provision --stack overcloud > --output vip-deployed-environment.yaml custom_vip_data.yaml > # openstack overcloud node provision --stack overcloud > --overcloud-ssh-key /home/stack/sshkey/id_rsa > overcloud-baremetal-deploy.yaml > > and used the first two in the final deployment script, but it gives > the error: > > heatclient.exc.HTTPInternalServerError: ERROR: Internal Error > 2022-05-30 14:14:39.772 479668 ERROR > tripleoclient.v1.overcloud_deploy.DeployOvercloud Traceback (most recent > call last):\n', ' File "/usr/lib/python3.6/ted_stack\n > nested_stack.validate()\n', ' File > "/usr/lib/python3.6/site-packages/osprofiler/profiler.py", line 160, in > wrapper\n result = f(*args, ine 969, in validate\n result = > res.validate()\n', ' File > "/usr/lib/python3.6/site-packages/heat/engine/resources/openstack/neutron/port.py", > line 454site-packages/heat/engine/resources/openstack/neutron/neutron.py", > line 43, in validate\n res = super(NeutronResource, self).validate()\n', > ' File "/un return self.validate_template()\n', ' File > "/usr/lib/python3.6/site-packages/heat/engine/resource.py", line 1882, in > validate_template\n self.t.rpy", line 200, in > _validate_service_availability\n raise ex\n', > 'heat.common.exception.ResourceTypeUnavailable: HEAT-E99001 Service neutron > is not avaieutron network endpoint is not in service catalog.\n', '\nDuring > handling of the above exception, another exception occurred:\n\n', > 'Traceback (most recens/stack_resource.py", line 75, in > validate_nested_stack\n nested_stack.validate()\n', ' File > "/usr/lib/python3.6/site-packages/osprofiler/profiler.py"thon3.6/site-packages/heat/engine/stack.py", > line 969, in validate\n result = res.validate()\n', ' File > "/usr/lib/python3.6/site-packages/heat/engine/ateResource, > self).validate()\n', ' File > "/usr/lib/python3.6/site-packages/heat/engine/resources/stack_resource.py", > line 65, in validate\n self.validources/stack_resource.py", line 81, in > validate_nested_stack\n ex, path=[self.stack.t.RESOURCES, path])\n', > 'heat.common.exception.StackValidationFaileeploy/overcloud/tripleo-heat-templates/deployed-server/deployed-server.yaml>: > HEAT-E99001 Service neutron is not available for resource type > OS::TripleO::vice catalog.\n', '\nDuring handling of the above exception, > another exception occurred:\n\n', 'Traceback (most recent call last):\n', ' > File "/usr/lib/pline 320, in validate_nested_stack\n > nested_stack.validate()\n', ' File > "/usr/lib/python3.6/site-packages/osprofiler/profiler.py", line 160, in > wrappe/heat/engine/stack.py", line 969, in validate\n result = > res.validate()\n', ' File > "/usr/lib/python3.6/site-packages/heat/engine/resources/template_relidate()\n', > ' File > "/usr/lib/python3.6/site-packages/heat/engine/resources/stack_resource.py", > line 65, in validate\n self.validate_nested_stack()\n'.py", line 81, in > validate_nested_stack\n ex, path=[self.stack.t.RESOURCES, path])\n', > 'heat.common.exception.StackValidationFailed: > ResourceTypeUnavaimplates/puppet/compute-role.yaml>.resources.NovaCompute<file:///home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/deployed-server/deployed-servpleO::DeployedServer::ControlPlanePort, > reason: neutron network endpoint is not in service catalog.\n', '\nDuring > handling of the above exception, > another/lib/python3.6/site-packages/heat/common/context.py", line 416, in > wrapped\n return func(self, ctx, *args, **kwargs)\n', ' File > "/usr/lib/python3.6/sirce_name, template_id)\n', ' File > "/usr/lib/python3.6/site-packages/heat/engine/service.py", line 756, in > _parse_template_and_validate_stack\n stack.v line 160, in wrapper\n > result = f(*args, **kwargs)\n', ' File > "/usr/lib/python3.6/site-packages/heat/engine/stack.py", line 969, in > validate\n resesources/stack_resource.py", line 65, in validate\n > self.validate_nested_stack()\n', ' File > "/usr/lib/python3.6/site-packages/heat/engine/resources/oph=[self.stack.t.RESOURCES, > path])\n', 'heat.common.exception.StackValidationFailed: > ResourceTypeUnavailable: > resources.Compute<nested_stack>.resources.0<fte-role.yaml>.resources.NovaCompute<file:///home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/deployed-server/deployed-server.yaml>: > HEAT-E9900::ControlPlanePort, reason: neutron network endpoint is not in > service catalog.\n']. > > Request you to check once, please. > > > > > On Mon, May 30, 2022 at 11:06 AM Lokendra Rathour < > lokendrarathour@gmail.com> wrote: > >> Hi Swogat, >> Thanks once again. >> >> with the files as shown below I am running the overcloud deploy for >> wallaby using this command: >> >> (undercloud) [stack@undercloud ~]$ cat >> deploy_overcloud_working_1.sh >> openstack overcloud deploy --templates \ >> -n /home/stack/templates/network_data.yaml \ >> -r /home/stack/templates/roles_data.yaml \ >> -e /home/stack/templates/environment.yaml \ >> -e /home/stack/templates/environments/network-isolation.yaml \ >> -e /home/stack/templates/environments/network-environment.yaml \ >> -e >> /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-conductor.yaml >> \ >> -e >> /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-inspector.yaml >> \ >> -e >> /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-overcloud.yaml >> \ >> -e /home/stack/templates/ironic-config.yaml \ >> -e >> /usr/share/openstack-tripleo-heat-templates/environments/docker-ha.yaml \ >> -e >> /usr/share/openstack-tripleo-heat-templates/environments/podman.yaml \ >> -e /home/stack/containers-prepare-parameter.yaml >> (undercloud) [stack@undercloud ~]$ >> >> >> This deployment is on ipv6 using triple0 wallaby, templates, as >> mentioned below, are generated using rendering steps and the >> network_data.yaml the roles_data.yaml >> Steps used to render the templates: >> cd /usr/share/openstack-tripleo-heat-templates/ >> ./tools/process-templates.py -o >> ~/openstack-tripleo-heat-templates-rendered_at_wallaby -n >> /home/stack/templates/network_data.yaml -r >> /home/stack/templates/roles_data.yaml >> >> *Now if i try adding the related to VIP port I do get the error as:* >> >> 2022-05-30 10:37:12.792 979387 WARNING >> tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] rendering j2 template >> to file: >> /home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/puppet/controller-role.yaml >> 2022-05-30 10:37:12.792 979387 WARNING >> tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] rendering j2 template >> to file: >> /home/stack/overcloud-deploy/overcloud/tripleo-heat-templates/puppet/compute-role.yaml >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud [-] Exception occured >> while running the command: ValueError: The environment is not a valid YAML >> mapping data type. >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud Traceback (most recent >> call last): >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud File >> "/usr/lib/python3.6/site-packages/tripleoclient/command.py", line 34, in run >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud super(Command, >> self).run(parsed_args) >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud File >> "/usr/lib/python3.6/site-packages/osc_lib/command/command.py", line 39, in >> run >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud return super(Command, >> self).run(parsed_args) >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud File >> "/usr/lib/python3.6/site-packages/cliff/command.py", line 185, in run >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud return_code = >> self.take_action(parsed_args) or 0 >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud File >> "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", >> line 1189, in take_action >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud stack, parsed_args, >> new_tht_root, user_tht_root) >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud File >> "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", >> line 227, in create_env_files >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud created_env_files, >> parsed_args, new_tht_root, user_tht_root) >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud File >> "/usr/lib/python3.6/site-packages/tripleoclient/v1/overcloud_deploy.py", >> line 204, in build_image_params >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud cleanup=(not >> parsed_args.no_cleanup)) >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud File >> "/usr/lib/python3.6/site-packages/tripleoclient/utils.py", line 1929, in >> process_multiple_environments >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud env_path=env_path, >> include_env_in_files=include_env_in_files) >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud File >> "/usr/lib/python3.6/site-packages/heatclient/common/template_utils.py", >> line 326, in process_environment_and_files >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud env = >> environment_format.parse(raw_env) >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud File >> "/usr/lib/python3.6/site-packages/heatclient/common/environment_format.py", >> line 50, in parse >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud raise >> ValueError(_('The environment is not a valid ' >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud ValueError: The >> environment is not a valid YAML mapping data type. >> 2022-05-30 10:37:14.455 979387 ERROR >> tripleoclient.v1.overcloud_deploy.DeployOvercloud >> 2022-05-30 10:37:14.457 979387 ERROR openstack [-] The environment >> is not a valid YAML mapping data type. >> 2022-05-30 10:37:14.457 979387 INFO osc_lib.shell [-] END return >> value: 1 >> (undercloud) [stack@undercloud ~]$ >> >> This is more of a syntax error where it is not able to understand >> the passed VIP data file: >> >> undercloud) [stack@undercloud ~]$ cat >> /home/stack/templates/vip-data-default-network-isolation.yaml >> - >> dns_name: overcloud >> network: internal_api >> - >> dns_name: overcloud >> network: external >> - >> dns_name: overcloud >> network: ctlplane >> - >> dns_name: overcloud >> network: oc_provisioning >> - >> dns_name: overcloud >> network: j3mgmt >> >> >> Please advise, also please note that similar templates generated in >> prior releases such as train/ussuri works perfectly. >> >> >> >> Please check the list of *templates *files: >> >> drwxr-xr-x. 2 stack stack 68 May 30 09:22 environments >> -rw-r--r--. 1 stack stack 265 May 27 13:47 environment.yaml >> -rw-rw-r--. 1 stack stack 297 May 27 13:47 init-repo.yaml >> -rw-r--r--. 1 stack stack 570 May 27 13:47 ironic-config.yaml >> drwxrwxr-x. 4 stack stack 4096 May 27 13:53 network >> -rw-r--r--. 1 stack stack 6370 May 27 14:26 network_data.yaml >> -rw-r--r--. 1 stack stack 11137 May 27 13:53 roles_data.yaml >> -rw-r--r--. 1 stack stack 234 May 30 09:23 >> vip-data-default-network-isolation.yaml >> >> >> >> (undercloud) [stack@undercloud templates]$ cat environment.yaml >> >> parameter_defaults: >> OvercloudControllerFlavor: control >> OvercloudComputeFlavor: compute >> ControllerCount: 3 >> ComputeCount: 1 >> TimeZone: 'Asia/Kolkata' >> NtpServer: ['30.30.30.3'] >> NeutronBridgeMappings: datacentre:br-tenant >> NeutronFlatNetworks: datacentre >> (undercloud) [stack@undercloud templates]$ >> >> >> >> (undercloud) [stack@undercloud templates]$ cat ironic-config.yaml >> >> parameter_defaults: >> NovaSchedulerDefaultFilters: >> - AggregateInstanceExtraSpecsFilter >> - AvailabilityZoneFilter >> - ComputeFilter >> - ComputeCapabilitiesFilter >> - ImagePropertiesFilter >> IronicEnabledHardwareTypes: >> - ipmi >> - redfish >> IronicEnabledPowerInterfaces: >> - ipmitool >> - redfish >> IronicEnabledManagementInterfaces: >> - ipmitool >> - redfish >> IronicCleaningDiskErase: metadata >> IronicIPXEEnabled: true >> IronicInspectorSubnets: >> - ip_range: 172.23.3.100,172.23.3.150 >> >> (undercloud) [stack@undercloud templates]$ cat network_data.yaml >> >> - name: J3Mgmt >> name_lower: j3mgmt >> vip: true >> vlan: 400 >> ipv6: true >> ipv6_subnet: 'fd80:fd00:fd00:4000::/64' >> ipv6_allocation_pools: [{'start': 'fd80:fd00:fd00:4000::10', >> 'end': 'fd80:fd00:fd00:4000:ffff:ffff:ffff:fffe'}] >> mtu: 9000 >> >> >> >> - name: InternalApi >> name_lower: internal_api >> vip: true >> vlan: 418 >> ipv6: true >> ipv6_subnet: 'fd00:fd00:fd00:2000::/64' >> ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:2000::10', >> 'end': 'fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe'}] >> mtu: 9000 >> >> >> - name: External >> vip: true >> name_lower: external >> vlan: 408 >> ipv6: true >> gateway_ipv6: 'fd00:fd00:fd00:9900::1' >> ipv6_subnet: 'fd00:fd00:fd00:9900::/64' >> ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:9900::10', >> 'end': 'fd00:fd00:fd00:9900:ffff:ffff:ffff:fffe'}] >> mtu: 9000 >> >> >> - name: OCProvisioning >> vip: true >> name_lower: oc_provisioning >> vlan: 412 >> ip_subnet: '172.23.3.0/24' >> allocation_pools: [{'start': '172.23.3.10', 'end': '172.23.3.50'}] >> mtu: 9000 >> >> >> >> >> (undercloud) [stack@undercloud templates]$ cat roles_data.yaml >> >> >> ############################################################################### >> # File generated by TripleO >> >> ############################################################################### >> >> ############################################################################### >> # Role: Controller >> # >> >> ############################################################################### >> - name: Controller >> description: | >> Controller role that has all the controller services loaded and >> handles >> Database, Messaging, and Network functions. >> CountDefault: 1 >> tags: >> - primary >> - controller >> # Create external Neutron bridge for SNAT (and floating IPs >> when using >> # ML2/OVS without DVR) >> - external_bridge >> networks: >> External: >> subnet: external_subnet >> InternalApi: >> subnet: internal_api_subnet >> OCProvisioning: >> subnet: oc_provisioning_subnet >> J3Mgmt: >> subnet: j3mgmt_subnet >> >> >> # For systems with both IPv4 and IPv6, you may specify a gateway >> network for >> # each, such as ['ControlPlane', 'External'] >> default_route_networks: ['External'] >> HostnameFormatDefault: '%stackname%-controller-%index%' >> RoleParametersDefault: >> OVNCMSOptions: "enable-chassis-as-gw" >> # Deprecated & backward-compatible values (FIXME: Make parameters >> consistent) >> # Set uses_deprecated_params to True if any deprecated params are >> used. >> uses_deprecated_params: True >> deprecated_param_extraconfig: 'controllerExtraConfig' >> deprecated_param_flavor: 'OvercloudControlFlavor' >> deprecated_param_image: 'controllerImage' >> deprecated_nic_config_name: 'controller.yaml' >> update_serial: 1 >> ServicesDefault: >> - OS::TripleO::Services::Aide >> - OS::TripleO::Services::AodhApi >> - OS::TripleO::Services::AodhEvaluator >> >> .. >> . >> >> >> ..############################################################################### >> # Role: Compute >> # >> >> ############################################################################### >> - name: Compute >> description: | >> Basic Compute Node role >> CountDefault: 1 >> # Create external Neutron bridge (unset if using ML2/OVS without >> DVR) >> tags: >> - compute >> - external_bridge >> networks: >> InternalApi: >> subnet: internal_api_subnet >> J3Mgmt: >> subnet: j3mgmt_subnet >> HostnameFormatDefault: '%stackname%-novacompute-%index%' >> RoleParametersDefault: >> FsAioMaxNumber: 1048576 >> TunedProfileName: "virtual-host" >> # Deprecated & backward-compatible values (FIXME: Make parameters >> consistent) >> # Set uses_deprecated_params to True if any deprecated params are >> used. >> # These deprecated_params only need to be used for existing roles >> and not for >> # composable roles. >> uses_deprecated_params: True >> deprecated_param_image: 'NovaImage' >> deprecated_param_extraconfig: 'NovaComputeExtraConfig' >> deprecated_param_metadata: 'NovaComputeServerMetadata' >> deprecated_param_scheduler_hints: 'NovaComputeSchedulerHints' >> deprecated_param_ips: 'NovaComputeIPs' >> deprecated_server_resource_name: 'NovaCompute' >> >> deprecated_nic_config_name: 'compute.yaml' >> update_serial: 25 >> ServicesDefault: >> - OS::TripleO::Services::Aide >> - OS::TripleO::Services::AuditD >> - OS::TripleO::Services::BootParams >> >> >> (undercloud) [stack@undercloud templates]$ cat >> environments/network-environment.yaml >> >> #This file is an example of an environment file for defining the >> isolated >> #networks and related parameters. >> resource_registry: >> # Network Interface templates to use (these files must exist). >> You can >> # override these by including one of the net-*.yaml environment >> files, >> # such as net-bond-with-vlans.yaml, or modifying the list here. >> # Port assignments for the Controller >> OS::TripleO::Controller::Net::SoftwareConfig: OS::Heat::None >> # Port assignments for the Compute >> OS::TripleO::Compute::Net::SoftwareConfig: OS::Heat::None >> >> >> parameter_defaults: >> # This section is where deployment-specific configuration is done >> # >> ServiceNetMap: >> IronicApiNetwork: oc_provisioning >> IronicNetwork: oc_provisioning >> >> >> >> # This section is where deployment-specific configuration is done >> ControllerNetworkConfigTemplate: >> 'templates/bonds_vlans/bonds_vlans.j2' >> ComputeNetworkConfigTemplate: >> 'templates/bonds_vlans/bonds_vlans.j2' >> >> >> >> # Customize the IP subnet to match the local environment >> J3MgmtNetCidr: 'fd80:fd00:fd00:4000::/64' >> # Customize the IP range to use for static IPs and VIPs >> J3MgmtAllocationPools: [{'start': 'fd80:fd00:fd00:4000::10', >> 'end': 'fd80:fd00:fd00:4000:ffff:ffff:ffff:fffe'}] >> # Customize the VLAN ID to match the local environment >> J3MgmtNetworkVlanID: 400 >> >> >> >> # Customize the IP subnet to match the local environment >> InternalApiNetCidr: 'fd00:fd00:fd00:2000::/64' >> # Customize the IP range to use for static IPs and VIPs >> InternalApiAllocationPools: [{'start': 'fd00:fd00:fd00:2000::10', >> 'end': 'fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe'}] >> # Customize the VLAN ID to match the local environment >> InternalApiNetworkVlanID: 418 >> >> >> >> # Customize the IP subnet to match the local environment >> ExternalNetCidr: 'fd00:fd00:fd00:9900::/64' >> # Customize the IP range to use for static IPs and VIPs >> # Leave room if the external network is also used for floating IPs >> ExternalAllocationPools: [{'start': 'fd00:fd00:fd00:9900::10', >> 'end': 'fd00:fd00:fd00:9900:ffff:ffff:ffff:fffe'}] >> # Gateway router for routable networks >> ExternalInterfaceDefaultRoute: 'fd00:fd00:fd00:9900::1' >> # Customize the VLAN ID to match the local environment >> ExternalNetworkVlanID: 408 >> >> >> >> # Customize the IP subnet to match the local environment >> OCProvisioningNetCidr: '172.23.3.0/24' >> # Customize the IP range to use for static IPs and VIPs >> OCProvisioningAllocationPools: [{'start': '172.23.3.10', 'end': >> '172.23.3.50'}] >> # Customize the VLAN ID to match the local environment >> OCProvisioningNetworkVlanID: 412 >> >> >> >> # List of Neutron network types for tenant networks (will be used >> in order) >> NeutronNetworkType: 'geneve,vlan' >> # Neutron VLAN ranges per network, for example >> 'datacentre:1:499,tenant:500:1000': >> NeutronNetworkVLANRanges: 'datacentre:1:1000' >> # Customize bonding options, e.g. "mode=4 lacp_rate=1 >> updelay=1000 miimon=100" >> # for Linux bonds w/LACP, or "bond_mode=active-backup" for OVS >> active/backup. >> BondInterfaceOvsOptions: "bond_mode=active-backup" >> >> (undercloud) [stack@undercloud templates]$ >> >> >> (undercloud) [stack@undercloud templates]$ cat >> environments/network-isolation.yaml >> >> # NOTE: This template is now deprecated, and is only included for >> compatibility >> # when upgrading a deployment where this template was originally >> used. For new >> # deployments, set "ipv6: true" on desired networks in >> network_data.yaml, and >> # include network-isolation.yaml. >> # >> # Enable the creation of Neutron networks for isolated Overcloud >> # traffic and configure each role to assign ports (related >> # to that role) on these networks. >> resource_registry: >> # networks as defined in network_data.yaml >> OS::TripleO::Network::J3Mgmt: ../network/j3mgmt_v6.yaml >> OS::TripleO::Network::InternalApi: ../network/internal_api_v6.yaml >> OS::TripleO::Network::External: ../network/external_v6.yaml >> OS::TripleO::Network::OCProvisioning: >> ../network/oc_provisioning.yaml >> >> >> # Port assignments for the VIPs >> OS::TripleO::Network::Ports::J3MgmtVipPort: >> ../network/ports/j3mgmt_v6.yaml >> OS::TripleO::Network::Ports::InternalApiVipPort: >> ../network/ports/internal_api_v6.yaml >> OS::TripleO::Network::Ports::ExternalVipPort: >> ../network/ports/external_v6.yaml >> OS::TripleO::Network::Ports::OCProvisioningVipPort: >> ../network/ports/oc_provisioning.yaml >> >> >> >> # Port assignments by role, edit role definition to assign >> networks to roles. >> # Port assignments for the Controller >> OS::TripleO::Controller::Ports::J3MgmtPort: >> ../network/ports/j3mgmt_v6.yaml >> OS::TripleO::Controller::Ports::InternalApiPort: >> ../network/ports/internal_api_v6.yaml >> OS::TripleO::Controller::Ports::ExternalPort: >> ../network/ports/external_v6.yaml >> OS::TripleO::Controller::Ports::OCProvisioningPort: >> ../network/ports/oc_provisioning.yaml >> # Port assignments for the Compute >> OS::TripleO::Compute::Ports::J3MgmtPort: >> ../network/ports/j3mgmt_v6.yaml >> OS::TripleO::Compute::Ports::InternalApiPort: >> ../network/ports/internal_api_v6.yaml >> >> >> >> parameter_defaults: >> # Enable IPv6 environment for Manila >> ManilaIPv6: True >> >> (undercloud) [stack@undercloud templates]$ >> >> >> >> >> >> >> >> >> >> On Tue, May 24, 2022 at 5:04 PM Lokendra Rathour < >> lokendrarathour@gmail.com> wrote: >> >>> Thanks, I'll check them out. >>> will let you know in case it works out. >>> >>> On Tue, May 24, 2022 at 2:37 PM Swogat Pradhan < >>> swogatpradhan22@gmail.com> wrote: >>> >>>> Hi, >>>> Please find the below templates: >>>> These are for openstack wallaby release: >>>> >>>> (undercloud) [stack@hkg2director workplace]$ cat >>>> custom_network_data.yaml >>>> - name: Storage >>>> name_lower: storage >>>> vip: true >>>> mtu: 1500 >>>> subnets: >>>> storage_subnet: >>>> ip_subnet: 172.25.202.0/26 >>>> allocation_pools: >>>> - start: 172.25.202.6 >>>> end: 172.25.202.20 >>>> vlan: 1105 >>>> - name: StorageMgmt >>>> name_lower: storage_mgmt >>>> vip: true >>>> mtu: 1500 >>>> subnets: >>>> storage_mgmt_subnet: >>>> ip_subnet: 172.25.202.64/26 >>>> allocation_pools: >>>> - start: 172.25.202.72 >>>> end: 172.25.202.87 >>>> vlan: 1106 >>>> - name: InternalApi >>>> name_lower: internal_api >>>> vip: true >>>> mtu: 1500 >>>> subnets: >>>> internal_api_subnet: >>>> ip_subnet: 172.25.201.192/26 >>>> allocation_pools: >>>> - start: 172.25.201.198 >>>> end: 172.25.201.212 >>>> vlan: 1104 >>>> - name: Tenant >>>> vip: false # Tenant network does not use VIPs >>>> mtu: 1500 >>>> name_lower: tenant >>>> subnets: >>>> tenant_subnet: >>>> ip_subnet: 172.25.202.128/26 >>>> allocation_pools: >>>> - start: 172.25.202.135 >>>> end: 172.25.202.150 >>>> vlan: 1108 >>>> - name: External >>>> name_lower: external >>>> vip: true >>>> mtu: 1500 >>>> subnets: >>>> external_subnet: >>>> ip_subnet: 172.25.201.128/26 >>>> allocation_pools: >>>> - start: 172.25.201.135 >>>> end: 172.25.201.150 >>>> gateway_ip: 172.25.201.129 >>>> vlan: 1103 >>>> >>>> (undercloud) [stack@hkg2director workplace]$ cat >>>> custom_vip_data.yaml >>>> - network: ctlplane >>>> #dns_name: overcloud >>>> ip_address: 172.25.201.91 >>>> subnet: ctlplane-subnet >>>> - network: external >>>> #dns_name: overcloud >>>> ip_address: 172.25.201.150 >>>> subnet: external_subnet >>>> - network: internal_api >>>> #dns_name: overcloud >>>> ip_address: 172.25.201.250 >>>> subnet: internal_api_subnet >>>> - network: storage >>>> #dns_name: overcloud >>>> ip_address: 172.25.202.50 >>>> subnet: storage_subnet >>>> - network: storage_mgmt >>>> #dns_name: overcloud >>>> ip_address: 172.25.202.90 >>>> subnet: storage_mgmt_subnet >>>> >>>> (undercloud) [stack@hkg2director workplace]$ cat >>>> overcloud-baremetal-deploy.yaml >>>> - name: Controller >>>> count: 4 >>>> defaults: >>>> networks: >>>> - network: ctlplane >>>> vif: true >>>> - network: external >>>> subnet: external_subnet >>>> - network: internal_api >>>> subnet: internal_api_subnet >>>> - network: storage >>>> subnet: storage_subnet >>>> - network: storage_mgmt >>>> subnet: storage_mgmt_subnet >>>> - network: tenant >>>> subnet: tenant_subnet >>>> network_config: >>>> template: /home/stack/templates/controller.j2 >>>> default_route_network: >>>> - external >>>> instances: >>>> - hostname: overcloud-controller-0 >>>> name: dc1-controller2 >>>> #provisioned: false >>>> - hostname: overcloud-controller-1 >>>> name: dc2-controller2 >>>> #provisioned: false >>>> - hostname: overcloud-controller-2 >>>> name: dc1-controller1 >>>> #provisioned: false >>>> - hostname: overcloud-controller-no-ceph-3 >>>> name: dc2-ceph2 >>>> #provisioned: false >>>> #- hostname: overcloud-controller-3 >>>> #name: dc2-compute3 >>>> #provisioned: false >>>> >>>> - name: Compute >>>> count: 5 >>>> defaults: >>>> networks: >>>> - network: ctlplane >>>> vif: true >>>> - network: internal_api >>>> subnet: internal_api_subnet >>>> - network: tenant >>>> subnet: tenant_subnet >>>> - network: storage >>>> subnet: storage_subnet >>>> network_config: >>>> template: /home/stack/templates/compute.j2 >>>> instances: >>>> - hostname: overcloud-novacompute-0 >>>> name: dc2-compute1 >>>> #provisioned: false >>>> - hostname: overcloud-novacompute-1 >>>> name: dc2-ceph1 >>>> #provisioned: false >>>> - hostname: overcloud-novacompute-2 >>>> name: dc1-compute1 >>>> #provisioned: false >>>> - hostname: overcloud-novacompute-3 >>>> name: dc1-compute2 >>>> #provisioned: false >>>> - hostname: overcloud-novacompute-4 >>>> name: dc2-compute3 >>>> #provisioned: false >>>> >>>> - name: CephStorage >>>> count: 4 >>>> defaults: >>>> networks: >>>> - network: ctlplane >>>> vif: true >>>> - network: internal_api >>>> subnet: internal_api_subnet >>>> - network: storage >>>> subnet: storage_subnet >>>> - network: storage_mgmt >>>> subnet: storage_mgmt_subnet >>>> network_config: >>>> template: /home/stack/templates/ceph-storage.j2 >>>> instances: >>>> - hostname: overcloud-cephstorage-0 >>>> name: dc2-controller1 >>>> #provisioned: false >>>> # - hostname: overcloud-cephstorage-1 >>>> # name: dc2-ceph2 >>>> - hostname: overcloud-cephstorage-1 >>>> name: dc1-ceph1 >>>> # provisioned: false >>>> - hostname: overcloud-cephstorage-2 >>>> name: dc1-ceph2 >>>> #provisioned: false >>>> - hostname: overcloud-cephstorage-3 >>>> name: dc2-compute2 >>>> #provisioned: false >>>> >>>> >>>> You must use these templates to provision network, vip and nodes. >>>> You must use the output files generated during the provisioning >>>> step in openstack overcloud deploy command using -e parameter. >>>> >>>> With regards, >>>> Swogat Pradhan >>>> >>>> >>>> On Mon, May 23, 2022 at 8:33 PM Lokendra Rathour < >>>> lokendrarathour@gmail.com> wrote: >>>> >>>>> Hi Swogat, >>>>> I tried checking your solution and my templates but could not >>>>> relate much. >>>>> But issue seems the same >>>>> >>>>> http://lists.openstack.org/pipermail/openstack-discuss/2022-May/028401.html >>>>> >>>>> I tried somemore ways but looks like some issue with templates. >>>>> Can you please share the templates used to deploy the overcloud. >>>>> >>>>> Mysetup have 3 controller and 1 compute. >>>>> >>>>> Thanks once again for reading my mail. >>>>> >>>>> Waiting for your reply. >>>>> >>>>> -Lokendra >>>>> >>>>> On Fri, 20 May 2022, 08:25 Swogat Pradhan, < >>>>> swogatpradhan22@gmail.com> wrote: >>>>> >>>>>> Hi, >>>>>> Yes I was able to find the issue and fix it. >>>>>> The issue was with the overcloud-baremetal-deployed.yaml file i >>>>>> was trying to provision controller-0, controller-1 and controller-3 and >>>>>> kept controller-2 aside for later, but the tripleo scripts are built in >>>>>> such a way that they were taking controller- 0, 1 and 2 inplace of >>>>>> controller-3, so the network ports and vip were created for controller 0,1 >>>>>> and 2 but not for 3 , so this error was popping off. Also i would request >>>>>> you to check the jinja nic templates and once the node provisioning is done >>>>>> check the /etc/os-net-config/config.json/yaml file for syntax if using >>>>>> bonded nic template. >>>>>> If you need any more infor please let me know. >>>>>> >>>>>> With regards, >>>>>> Swogat Pradhan >>>>>> >>>>>> >>>>>> >>>>>> On Fri, May 20, 2022 at 8:01 AM Lokendra Rathour < >>>>>> lokendrarathour@gmail.com> wrote: >>>>>> >>>>>>> Hi Swogat, >>>>>>> Thanks for raising this issue. >>>>>>> Did you find any solution? to this problem ? >>>>>>> >>>>>>> Please let me know it might be helpful >>>>>>> >>>>>>> >>>>>>> On Tue, Apr 19, 2022 at 12:43 PM Swogat Pradhan < >>>>>>> swogatpradhan22@gmail.com> wrote: >>>>>>> >>>>>>>> Hi, >>>>>>>> I am currently trying to deploy openstack wallaby using >>>>>>>> tripleo arch. >>>>>>>> I created the network jinja templates, ran the following >>>>>>>> commands also: >>>>>>>> >>>>>>>> #openstack overcloud network provision --stack overcloud >>>>>>>> --output networks-deployed-environment.yaml custom_network_data.yaml >>>>>>>> # openstack overcloud network vip provision --stack >>>>>>>> overcloud --output vip-deployed-environment.yaml custom_vip_data.yaml >>>>>>>> # openstack overcloud node provision --stack overcloud >>>>>>>> --overcloud-ssh-key /home/stack/sshkey/id_rsa >>>>>>>> overcloud-baremetal-deploy.yaml >>>>>>>> >>>>>>>> and used the environment files in the openstack overcloud >>>>>>>> deploy command: >>>>>>>> >>>>>>>> (undercloud) [stack@hkg2director ~]$ cat deploy.sh >>>>>>>> #!/bin/bash >>>>>>>> THT=/usr/share/openstack-tripleo-heat-templates/ >>>>>>>> CNF=/home/stack/ >>>>>>>> openstack overcloud deploy --templates $THT \ >>>>>>>> -r $CNF/templates/roles_data.yaml \ >>>>>>>> -n $CNF/workplace/custom_network_data.yaml \ >>>>>>>> -e ~/containers-prepare-parameter.yaml \ >>>>>>>> -e $CNF/templates/node-info.yaml \ >>>>>>>> -e $CNF/templates/scheduler-hints.yaml \ >>>>>>>> -e $CNF/workplace/networks-deployed-environment.yaml \ >>>>>>>> -e $CNF/workplace/vip-deployed-environment.yaml \ >>>>>>>> -e $CNF/workplace/overcloud-baremetal-deployed.yaml \ >>>>>>>> -e $CNF/workplace/custom-net-bond-with-vlans.yaml >>>>>>>> >>>>>>>> Now when i run the ./deploy.sh script i encounter an error >>>>>>>> stating: >>>>>>>> >>>>>>>> ERROR openstack [-] Resource >>>>>>>> OS::TripleO::Network::Ports::ControlPlaneVipPort maps to type >>>>>>>> OS::Neutron::Port and the Neutron service is not available when using >>>>>>>> ephemeral Heat. The generated environments from 'openstack overcloud >>>>>>>> baremetal provision' and 'openstack overcloud network provision' must be >>>>>>>> included with the deployment command.: >>>>>>>> tripleoclient.exceptions.InvalidConfiguration: Resource >>>>>>>> OS::TripleO::Network::Ports::ControlPlaneVipPort maps to type >>>>>>>> OS::Neutron::Port and the Neutron service is not available when using >>>>>>>> ephemeral Heat. The generated environments from 'openstack overcloud >>>>>>>> baremetal provision' and 'openstack overcloud network provision' must be >>>>>>>> included with the deployment command. >>>>>>>> 2022-04-19 13:47:16.582 735924 INFO osc_lib.shell [-] END >>>>>>>> return value: 1 >>>>>>>> >>>>>>>> Can someone tell me where the mistake is? >>>>>>>> >>>>>>>> With regards, >>>>>>>> Swogat Pradhan >>>>>>>> >>>>>>> >>>>>>> >>>>>>> > >
participants (3)
-
Lokendra Rathour
-
Swogat Pradhan
-
Takashi Kajinami