infrastructure-management-zookeeper-0 pod is not Ready on the Red Hat OpenShift on IBM Cloud cluster

You might notice that the infrastructure-management-zookeeper pod is not in Ready status on Red Hat OpenShift on IBM Cloud cluster.

The issue might happen because infrastructure-management-zookeeper pod requires more cpu and memory to start on a Red Hat OpenShift on IBM Cloud cluster.

Solution: Use the following steps to fix the failed pod issue:

  1. Change to the Infrastructure Automation namespace.

    oc project <IANamespace>
    

    Where IANamespaceis the namespace where Infrastructure Automation is installed.

    Note: If IBM Cloud Pak for AIOps is also installed, then use the IBM Cloud Pak for AIOps namespace in the command.

  2. Get the name of iminstall custom resource:

    oc get iminstall --no-headers | awk '{print $2}'
    
  3. Make a copy of the existing iminstall custom resource by using the command:

    oc get iminstall <iminstall CR name> -o yaml > <iminstall CR name>.orig
    

    Where <iminstall CR name> is the name of iminstall custom resource.

  4. Delete the iminstall custom resource:

    oc delete iminstall <iminstall CR name>
    

    Where <iminstall CR name> is the name of iminstall custom resource.

  5. Edit the iminstall custom resource file by using the command:

    vi <iminstall CR name>.orig
    

    Where <iminstall CR name> is the name of iminstall custom resource.

  6. Remove the following lines from iminstall custom resource:

    finalizers:
       - infra.management.install.finalizer.infra.management.ibm.com
    resourceVersion: "3023054"
    uid: c790e781-07a3-46d7-bf20-5e1acc1ba2ad
    

    Note: You might have different values for the mentioned properties.

  7. Add the following variables to the iminstall custom resource:

    spec:
      zookeeperCpuRequest: 400m
      zookeeperCpulimit: 500m
      zookeeperMemoryRequest: 400Mi
    

    **Note:**if you are using IAConfig to create the iminstall custom resource then, you can add the following environment variables to the IAConfig custom resource.

    name: ibm-management-im-install
    spec:
      iminstall:
        applicationDomain: inframgmtinstall.<your_env_domain>
        imagePullPolicy: Always
        imagePullSecret: ibm-entitlement-key
        initialAdminGroupName: <your_admin_group>
        zookeeperCpuRequest: 400m
        zookeeperCpulimit: 500m
        zookeeperMemoryRequest: 400Mi
        license:
          accept: true
    
  8. Apply the iminstall custom resource by using the command:

    oc apply -f <iminstall CR name>.orig
    

    Where <iminstall CR name> is the name of iminstall custom resource.