Issue with ironic-neutron-agent. No agents are created for overcloud nodes after import.

Bug #1950639 reported by Alexey Kashavkin
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
tripleo
New
Undecided
Unassigned

Bug Description

Description
===========

Overcloud nodes cannot switch to available state after introspection. This is because ironic-neutron-agents aren't created.

2021-11-11 14:43:54.500696 | 005056b2-1d0b-2767-891c-00000000000f | TASK | Make nodes available
2021-11-11 14:44:56.370100 | 005056b2-1d0b-2767-891c-00000000000f | FATAL | Make nodes available | localhost | error={"changed": false, "msg": "Timeout waiting for node 9449a890-73ec-4a23-8581-a16ce8bfce89 to have bridge_mappings set in the ironic-neutron-agent entry"}
2021-11-11 14:44:56.371389 | 005056b2-1d0b-2767-891c-00000000000f | TIMING | Make nodes available | localhost | 0:01:02.049977 | 61.87s

Steps to reproduce
==================

I everything do by TripleO documentation - https://docs.openstack.org/project-deploy-guide/tripleo-docs/latest/deployment/install_undercloud.html

Environment
===========

1. Wallaby release
2. Undercloud node in VM with Centos 8.4.2105

Logs & Configs
==============

In the ironic-neutron-agent logs:
2021-11-11 14:07:41.319 245813 WARNING keystoneauth.discover [req-f3b069d1-5a67-4ff8-a837-3f1673960191 - - - - -] Failed to contact the endpoint at https://192.168.24.2:13385 for discovery. Fallback to using that endpoint as the base url.
2021-11-11 14:07:41.332 245813 WARNING keystoneauth.discover [req-f3b069d1-5a67-4ff8-a837-3f1673960191 - - - - -] Failed to contact the endpoint at https://192.168.24.2:13385 for discovery. Fallback to using that endpoint as the base url.
2021-11-11 14:07:41.333 245813 ERROR networking_baremetal.ironic_client [req-f3b069d1-5a67-4ff8-a837-3f1673960191 - - - - -] Ironic API might not be running, failed to establish a connection with ironic, reason: The baremetal service for 192.168.24.3:regionOne exists but does not have any supported versions.. Retrying ...: openstack.exceptions.NotSupported: The baremetal service for 192.168.24.3:regionOne exists but does not have any supported versions.

In HAProxy logs:
Nov 11 13:34:17 tripleo-undercloud-1 haproxy[12]: 192.168.24.2:38340 [11/Nov/2021:13:34:17.217] ironic/1: SSL handshake failure
Nov 11 13:34:17 tripleo-undercloud-1 haproxy[12]: 192.168.24.2:38342 [11/Nov/2021:13:34:17.228] ironic/1: SSL handshake failure

In template for ironic-neutron-agent from kolla-ansible, I saw option - cafile (https://github.com/openstack/kolla-ansible/blob/master/ansible/roles/neutron/templates/ironic_neutron_agent.ini.j2#L11) and manually added them to ironic-neutron-agent.ini:

(undercloud) [stack@tripleo-undercloud-1 ~]$ sudo podman exec ironic_neutron_agent cat etc/neutron/plugins/ml2/ironic_neutron_agent.ini
[ironic]
auth_type=password
auth_url=http://192.168.24.3:5000
username=ironic
password=S4sKbc7obrtWBgVhxpPGkk08v
project_domain_name=Default
project_name=service
user_domain_name=Default
region_name=regionOne
cafile=/etc/pki/tls/certs/ca-bundle.trust.crt <---

After that, the ironic-neutron-agent began to work correctly and was created for overcloud nodes:

(undercloud) [stack@tripleo-undercloud-1 ~]$ openstack network agent list -c Host -c Binary -c 'Agent Type' --sort-column Binary -f json
[
  {
    "Agent Type": "Baremetal Node",
    "Host": "314ceed1-6412-4f1c-9c9b-1168c0873720",
    "Binary": "ironic-neutron-agent"
  },
  {
    "Agent Type": "Baremetal Node",
    "Host": "9449a890-73ec-4a23-8581-a16ce8bfce89",
    "Binary": "ironic-neutron-agent"
  },
  {
    "Agent Type": "DHCP agent",
    "Host": "tripleo-undercloud-1.localdomain",
    "Binary": "neutron-dhcp-agent"
  },
  {
    "Agent Type": "L3 agent",
    "Host": "tripleo-undercloud-1.localdomain",
    "Binary": "neutron-l3-agent"
  },
  {
    "Agent Type": "Open vSwitch agent",
    "Host": "tripleo-undercloud-1.localdomain",
    "Binary": "neutron-openvswitch-agent"
  }
]

description: updated
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.