Uploaded image for project: 'Red Hat OpenStack Services on OpenShift'
  1. Red Hat OpenStack Services on OpenShift
  2. OSPRH-8119

Ironic Inspector - can get stuck in reconcile loop

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Cannot Reproduce
    • Icon: Normal Normal
    • rhos-18.0.1
    • rhos-18.0 Beta
    • ironic-operator
    • None
    • False
    • Hide

      None

      Show
      None
    • False
    • ?
    • ?
    • ?
    • ?
    • None
    • Important

      It looks like there is a race condition that happens quite rarely - the ironic-operator get's "stuck" in a inspector reconcile loop and never completes.

      The following log entries are repeated over and over in the controller manager log:

      2024-06-29T11:02:18Z    INFO    Controllers.IronicInspector     Applied new databasehostname openstack.openstack.svc to MariaDBDatabase ironic-inspector        {"controller": "ironicinspector", "controllerGroup": "ironic.openstack.org", "controllerKind": "IronicInspector"
      , "IronicInspector": {"name":"ironic-inspector","namespace":"openstack"}, "namespace": "openstack", "name": "ironic-inspector", "reconcileID": "6afd1271-0676-4a36-93bc-c136c1d2c3a5"}
      2024-06-29T11:02:18Z    INFO    Controllers.IronicInspector     Reconciling Ironic Inspector init       {"controller": "ironicinspector", "controllerGroup": "ironic.openstack.org", "controllerKind": "IronicInspector", "IronicInspector": {"name":"ironic-inspector","namespa
      ce":"openstack"}, "namespace": "openstack", "name": "ironic-inspector", "reconcileID": "6afd1271-0676-4a36-93bc-c136c1d2c3a5"}
      2024-06-29T11:02:18Z    INFO    Controllers.IronicInspector     Service ironic-inspector-public - updated       {"controller": "ironicinspector", "controllerGroup": "ironic.openstack.org", "controllerKind": "IronicInspector", "IronicInspector": {"name":"ironic-inspector",
      "namespace":"openstack"}, "namespace": "openstack", "name": "ironic-inspector", "reconcileID": "6afd1271-0676-4a36-93bc-c136c1d2c3a5"}
      2024-06-29T11:02:18Z    INFO    Controllers.IronicInspector     Service ironic-inspector-internal - updated     {"controller": "ironicinspector", "controllerGroup": "ironic.openstack.org", "controllerKind": "IronicInspector", "IronicInspector": {"name":"ironic-inspector",
      "namespace":"openstack"}, "namespace": "openstack", "name": "ironic-inspector", "reconcileID": "6afd1271-0676-4a36-93bc-c136c1d2c3a5"}
      2024-06-29T11:02:18Z    INFO    Controllers.IronicInspector     Reconciled Ironic Inspector init successfully   {"controller": "ironicinspector", "controllerGroup": "ironic.openstack.org", "controllerKind": "IronicInspector", "IronicInspector": {"name":"ironic-inspector",
      "namespace":"openstack"}, "namespace": "openstack", "name": "ironic-inspector", "reconcileID": "6afd1271-0676-4a36-93bc-c136c1d2c3a5"}
      2024-06-29T11:02:18Z    INFO    Controllers.IronicInspector     Reconciling Ironic Inspector Service update     {"controller": "ironicinspector", "controllerGroup": "ironic.openstack.org", "controllerKind": "IronicInspector", "IronicInspector": {"name":"ironic-inspector",
      "namespace":"openstack"}, "namespace": "openstack", "name": "ironic-inspector", "reconcileID": "6afd1271-0676-4a36-93bc-c136c1d2c3a5"}
      2024-06-29T11:02:18Z    INFO    Controllers.IronicInspector     Reconciling Ironic Inspector Service upgrade    {"controller": "ironicinspector", "controllerGroup": "ironic.openstack.org", "controllerKind": "IronicInspector", "IronicInspector": {"name":"ironic-inspector",
      "namespace":"openstack"}, "namespace": "openstack", "name": "ironic-inspector", "reconcileID": "6afd1271-0676-4a36-93bc-c136c1d2c3a5"}
      2024-06-29T11:02:18Z    INFO    Controllers.IronicInspector     Found ingress domain: apps.ocp.openstack.lab    {"controller": "ironicinspector", "controllerGroup": "ironic.openstack.org", "controllerKind": "IronicInspector", "IronicInspector": {"name":"ironic-inspector",
      "namespace":"openstack"}, "namespace": "openstack", "name": "ironic-inspector", "reconcileID": "6afd1271-0676-4a36-93bc-c136c1d2c3a5"}
      2024-06-29T11:02:18Z    INFO    Controllers.IronicInspector     StatefulSet ironic-inspector - updated  {"controller": "ironicinspector", "controllerGroup": "ironic.openstack.org", "controllerKind": "IronicInspector", "IronicInspector": {"name":"ironic-inspector","namespa
      ce":"openstack"}, "namespace": "openstack", "name": "ironic-inspector", "reconcileID": "6afd1271-0676-4a36-93bc-c136c1d2c3a5"}
      2024-06-29T11:02:28Z    INFO    Controllers.IronicInspector     Reconciling Ironic Inspector    {"controller": "ironicinspector", "controllerGroup": "ironic.openstack.org", "controllerKind": "IronicInspector", "IronicInspector": {"name":"ironic-inspector","namespace":"ope
      nstack"}, "namespace": "openstack", "name": "ironic-inspector", "reconcileID": "27119178-2af8-430b-8796-baa27447ccec"}
      2024-06-29T11:02:28Z    INFO    Controllers.IronicInspector     Successfully ensured MariaDBAccount ironic-inspector exists; database username is ironic_inspector_55d5 {"controller": "ironicinspector", "controllerGroup": "ironic.openstack.org", "controllerKind": "IronicIn
      spector", "IronicInspector": {"name":"ironic-inspector","namespace":"openstack"}, "namespace": "openstack", "name": "ironic-inspector", "reconcileID": "27119178-2af8-430b-8796-baa27447ccec", "ObjectType": "*v1beta1.MariaDBAccount", "ObjectNamespace": "openstack", "ObjectN
      ame": "ironic-inspector"}
       

      In the attached log file it enters this state of endlessly looping the same reconcile tasks at timestamp: 2024-06-29T10:24:00Z

      Prior to that timestamp it is also repeating the same tasks in Controllers.IronicInspector, but there is also things executing in Controllers.Ironic.

       

      A workaround is to delete the ironic-inspector resource, this causes the operators to first delete inspector and then it is re-applied - and successfully reconciles.

      oc delete -n openstack ironicinspectors.ironic.openstack.org ironic-inspector 
      2024-06-29T11:02:29Z    INFO    Controllers.IronicInspector     Reconciling Ironic Inspector delete     {"controller": "ironicinspector", "controllerGroup": "ironic.openstack.org", "controllerKind": "IronicInspector", "IronicInspector": {"name":"ironic-inspector","namespace":"openstack"}, "namespace": "openstack", "name": "ironic-inspector", "reconcileID": "5ba7c63e-5b29-4184-8218-1f4e9194e90f"}
      2024-06-29T11:02:29Z    INFO    Controllers.Ironic      Reconciling Service     {"controller": "ironic", "controllerGroup": "ironic.openstack.org", "controllerKind": "Ironic", "Ironic": {"name":"ironic","namespace":"openstack"}, "namespace": "openstack", "name": "ironic", "reconcileID": "658a416c-0500-4509-b455-5686339d8d57"} 

       

       

              rhn-gps-hjensas Harald Jensas
              rhn-gps-hjensas Harald Jensas
              rhos-dfg-hardprov
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved:

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0 minutes
                  0m
                  Logged:
                  Time Spent - 2 hours
                  2h