Bug 1627949 - auto-discovery of nodes feature not enabling when configuring post undercloud install
Summary: auto-discovery of nodes feature not enabling when configuring post undercloud...
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-ironic
Version: 14.0 (Rocky)
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
: ---
Assignee: Harald Jensås
QA Contact: mlammon
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-09-12 00:01 UTC by mlammon
Modified: 2018-09-21 19:18 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2018-09-21 19:18:31 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
sosreport (3.06 MB, application/x-xz)
2018-09-12 16:10 UTC, mlammon
no flags Details

Description mlammon 2018-09-12 00:01:34 UTC
Description:
auto-discovery of nodes feature not enabling when configuring post undercloud install.



Steps to re-produce:
1. install undercloud with latest osp14 
2. add "enable_node_discovery = true" to undercloud.conf
3. run "openstack install undercloud"
4. power nodes
5. run "openstack baremetal node list"

We don't see nodes discover.  Checked both containers looking for /etc/ironic-inspector/inspector.conf
and do not see node_not_found_hook configured.

1) Check undercloud.conf
(undercloud) [stack@undercloud-0 ~]$ grep enable_node_discovery undercloud.conf
enable_node_discovery = true

2) Check inspector.conf
(undercloud) [stack@undercloud-0 ~]$ docker exec -u root -it ironic_inspector_dnsmasq bash
()[root@undercloud-0 /]# grep node_not_found_hook /etc/ironic-inspector/inspector.conf
#node_not_found_hook = <None>

3) Check inspector.conf  (believe this is one should change)
(undercloud) [stack@undercloud-0 ~]$ docker exec -u root -it ironic_inspector bash
()[root@undercloud-0 /]# grep node_not_found_hook /etc/ironic-inspector/inspector.conf
#node_not_found_hook = <None>

Comment 3 mlammon 2018-09-12 16:10:23 UTC
Created attachment 1482759 [details]
sosreport

Comment 4 Harald Jensås 2018-09-21 10:29:51 UTC
Intial attempt to reproduce this using current-dev upstream repositories:
-------------------------------------------------------------------------

(undercloud) [stack@leafs ~]$ sudo grep node_not_found_hook /var/lib/config-data/puppet-generated/ironic_inspector/etc/ironic-inspector/inspector.conf
#node_not_found_hook = <None>

(undercloud) [stack@leafs ~]$ grep discovery undercloud.conf 
enable_node_discovery = true

(undercloud) [stack@leafs ~]$ openstack undercloud install

[ .... ]

[root@leafs stack]# grep -R IronicInspectorEnableNodeDiscovery tripleo-heat-installer-templates/undercloud_parameters.yaml
  IronicInspectorEnableNodeDiscovery: true


[root@leafs stack]# sudo grep node_not_found_hook /var/lib/config-data/puppet-generated/ironic_inspector/etc/ironic-inspector/inspector.conf
#node_not_found_hook = <None>
node_not_found_hook=enroll

[root@leafs stack]# docker container list | grep inspector
c4d132dc81e9        docker.io/tripleomaster/centos-binary-ironic-inspector:0d5b1d18e88ad27e87368c8844c325cbfe603fdb_e25bec61            "kolla_start"            2 hours ago         Up 2 hours                                 ironic_inspector_dnsmasq
dbf8966b22a3        docker.io/tripleomaster/centos-binary-ironic-inspector:0d5b1d18e88ad27e87368c8844c325cbfe603fdb_e25bec61            "kolla_start"            2 hours ago         Up 2 hours                                 ironic_inspector
[root@leafs stack]# docker exec -it dbf8966b22a3 /bin/bash
()[ironic-inspector@leafs /]$ grep node_not_found_hook /etc/ironic-inspector/inspector.conf 
#node_not_found_hook = <None>
node_not_found_hook=enroll



(Moving on to test with Rocky)

Repeated same test using upstream Rocky:

[root@container-undercloud ~]# sudo grep node_not_found_hook /var/lib/config-data/puppet-generated/ironic_inspector/etc/ironic-inspector/inspector.conf
#node_not_found_hook = <None>
node_not_found_hook=enroll


[root@container-undercloud ~]#  docker container list | grep inspector
ebb35b34d74a        docker.io/tripleorocky/centos-binary-ironic-inspector:c4ced59918d7a2105e64f024b2d5ea4c627c0b9e_fba987ed            "kolla_start"            6 minutes ago       Up 6 minutes                                  ironic_inspector_dnsmasq
5c6948de65af        docker.io/tripleorocky/centos-binary-ironic-inspector:c4ced59918d7a2105e64f024b2d5ea4c627c0b9e_fba987ed            "kolla_start"            6 minutes ago       Up 6 minutes                                  ironic_inspector
[root@container-undercloud ~]# docker exec -it 5c6948de65af /bin/bash
()[ironic-inspector@container-undercloud /]$ grep node_not_found_hook /etc/ironic-inspector/inspector.conf 
#node_not_found_hook = <None>
node_not_found_hook=enroll



Conclusion:
-----------

Looks like this is working as intended in upstream Rocky and current.

Comment 5 mlammon 2018-09-21 15:24:35 UTC
Looks like the "enable_node_discovery = true" needs to be in [DEFAULT] section of the undercloud.conf and it was added to end of file in the [ctlplane-subnet].   The case where we enable this feature before initial undercloud install it seems to work in [ctlplane-subnet]   Just tested this BZ case and I now seen feature enable in /etc/ironic-inspector/inspector.conf

Comment 6 mlammon 2018-09-21 19:18:31 UTC





This worked so we will close this bugzilla.

(undercloud) [stack@undercloud-0 ~]$ cat undercloud.conf
[DEFAULT]
# Network interface on the Undercloud that will be handling the PXE
# boots and DHCP for Overcloud instances. (string value)
local_interface = eth0
local_ip = 192.168.24.1/24
undercloud_public_host = 192.168.24.2
undercloud_admin_host = 192.168.24.3
undercloud_ntp_servers=clock.redhat.com
container_images_file=/home/stack/containers-prepare-parameter.yaml
docker_insecure_registries=docker-registry.engineering.redhat.com,brew-pulp-docker01.web.prod.ext.phx2.redhat.com:8888
undercloud_service_certificate = /etc/pki/instack-certs/undercloud.pem
hieradata_override = /home/stack/hiera_override.yaml
enable_node_discovery = true
[ctlplane-subnet]
local_subnet = ctlplane-subnet
cidr = 192.168.24.0/24
dhcp_start = 192.168.24.5
dhcp_end = 192.168.24.24
gateway = 192.168.24.1
inspection_iprange = 192.168.24.100,192.168.24.120
masquerade = true
#TODO(skatlapa): add param to override masq


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