Bug 1827695 - [OSP 16.0.1] During the overcloud configuration, DHCP offer not released by Director to pre-provisioned nodes.
Summary: [OSP 16.0.1] During the overcloud configuration, DHCP offer not released by D...
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-tripleo
Version: 16.0 (Train)
Hardware: Unspecified
OS: Unspecified
low
low
Target Milestone: ---
: ---
Assignee: Luke Short
QA Contact: Arik Chernetsky
URL:
Whiteboard:
Depends On:
Blocks: 1825315
TreeView+ depends on / blocked
 
Reported: 2020-04-24 14:45 UTC by Pradipta Kumar Sahoo
Modified: 2020-05-04 17:37 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-05-04 17:37:32 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Pradipta Kumar Sahoo 2020-04-24 14:45:35 UTC
Description of problem:
During the overcloud configuration, DHCP offer not released from Director(br-ctlplane) to pre-provisioned nodes provision interface (br-ex).

Although we assigned the fixed_ips in THT, for initial metadata configuration, pre-provisioned nodes are still required static IP (192.168.24.x) on the same NeutronPublicInterface(2nd Nic) or assigned the IP by the additional DHCP server.

I beleive this issue is exist because, we removed the below enviroment variables from OSP16 without having any alternative. [1][2]
As 1st nic of servers have public IP address for initial passowrd less configuraiton which can be usefull for intial metadata configuraiton by overcloud stakc and config-download configuration.
~~~
$ export OVERCLOUD_ROLES="ControllerDeployedServer ComputeDeployedServer"
$ export ControllerDeployedServer_hosts="<CONTROLLER0_IP> <CONTROLLER1_IP> <CONTROLLER2_IP>"
$ export ComputeDeployedServer_hosts="<COMPUTE0_IP> <COMPUTE1_IP>"
~~~

Version-Release number of selected component:
Red Hat OpenStack Platform release 16.0.1 (Train)

How reproducible: 100% reproducible in scale lab.

Steps to Reproduce: 

1. Used below fixed_IP mapping on 2nd nic of the pre-provisioned nodes.

~~~
$ cat /home/stack/virt/params-hosts.yml
resource_registry:
  OS::TripleO::DeployedServer::ControlPlanePort: /usr/share/openstack-tripleo-heat-templates/deployed-server/deployed-neutron-port.yaml
  OS::TripleO::Server: /usr/share/openstack-tripleo-heat-templates/deployed-server/deployed-server.yaml
  OS::TripleO::DeployedServer::Bootstrap: OS::Heat::None
 
parameter_defaults:
  NeutronPublicInterface: enp1s0f1
  EnablePackageInstall: True
  DeployedServerPortMap:
    f08-h17-b07-5039ms-ctlplane:
      fixed_ips:
        - ip_address: 192.168.24.11
      subnets:
        - cidr: 24
    f08-h17-b08-5039ms-ctlplane:
      fixed_ips:
        - ip_address: 192.168.24.12
      subnets:
        - cidr: 24
    f08-h20-b01-5039ms-ctlplane:
      fixed_ips:
        - ip_address: 192.168.24.13
      subnets:
        - cidr: 24
    f08-h20-b02-5039ms-ctlplane:
      fixed_ips:
        - ip_address: 192.168.24.15
      subnets:
        - cidr: 24
  HostnameMap:
    overcloud-controller-0: f08-h17-b07-5039ms
    overcloud-controller-1: f08-h17-b08-5039ms
    overcloud-controller-2: f08-h20-b01-5039ms
    overcloud-novacompute-0: f08-h20-b02-5039ms

  ControllerCount: 3
  ComputeCount: 1
~~~

2. After heat stack creation, the overcloud config-download failed as the 2nd nic (enp1s0f1) was not configured with 192.168.24.x IPs. During the heat stack creation, we noticed the Director br-ctlplane not sending DHCP offer after receiving the request from pre-provisioned nodes.

3. After static IP map to 2nd interface, heat stack is able to push metadata for further overcloud config-download configuration.

4. Then, in NIC configuration config-download TASK, the provisioning bridge(br-ex) configured with same fixed_IPs with 2nd interface(enp1s0f1) as uplink and same IP address reflect on both bridge and interface which looks weird.

It looks like a workaround for a testbed but not feasible for larger setup neither with static IP nor with the additional DHCP server.

Expected results:
Looking into the current issue, I believe an environment variable with public ssh IP is must required where Director can able to send metadata for further overcloud configuration after heat stack creation.

[1] Upstream Doc: https://ekultails.github.io/rootpages/openstack/tripleo.html#overcloud-pre-deployed-provisioned-nodes
[2] Downstream Doc: https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/16.0/html-single/director_installation_and_usage/index#configuring-a-basic-overcloud-with-pre-provisioned-nodes

Comment 1 Luke Short 2020-05-04 17:29:15 UTC
If you are not using the default control plane network 192.168.24.0/24 for the pre-provisioned nodes then you need to configure your THT templates to accommodate this. The Undercloud must also have SSL/TLS enabled. [1] Pre-provisioned nodes are not managed by Nova or Neutron so DHCP is not available/exposed to them via the Undercloud.

As a side note, the official upstream documentation is linked here. [2] The process is the same for both up- and down-stream.

1. https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/16.0/html-single/director_installation_and_usage/index#using-a-separate-network-for-pre-provisioned-nodes
2. https://docs.openstack.org/project-deploy-guide/tripleo-docs/latest/features/deployed_server.html

Comment 2 Luke Short 2020-05-04 17:37:32 UTC
See also: https://bugzilla.redhat.com/show_bug.cgi?id=1825315#c3


Note You need to log in before you can comment on or make changes to this bug.