Uploaded image for project: 'Hybrid Cloud Infrastructure Documentation'
  1. Hybrid Cloud Infrastructure Documentation
  2. HCIDOCS-195

MetalLB CR is not created with runtimeclass kata

XMLWordPrintable

    • False
    • Hide

      None

      Show
      None
    • True
    • If Release Note Needed, Set a Value
    • Set a Value
    • Important
    • Rejected

      Description of problem:

      The MetalLB CR supports specifying runtimeclass in YAML but the controller pod is not created, subsequently speaker pods are also not created.

      Version-Release number of selected component (if applicable):

      4.12

      How reproducible:

      Always

      Steps to Reproduce:

      1. Install MetalLB Operator
      2. Install sandbox operator to make kata runtime available to cluster
      Catalog Source YAML
      ---
      apiVersion: operators.coreos.com/v1alpha1
      kind: CatalogSource
      metadata:
        name:  katacatalog
        namespace: openshift-marketplace
      spec:
        sourceType: grpc
        image: quay.io/openshift_sandboxed_containers/openshift-sandboxed-containers-operator-catalog:1.3.1-3
        publisher: Red Hat
        updateStrategy:
          registryPoll:
            interval: 10m0s
      
      Namespace YAML 
      apiVersion: v1
      kind: Namespace
      metadata:
        labels:
          kubernetes.io/metadata.name: cni-test
          pod-security.kubernetes.io/audit: privileged
          pod-security.kubernetes.io/enforce: privileged
          pod-security.kubernetes.io/enforce-version: v1.24
          pod-security.kubernetes.io/warn: privileged
          security.openshift.io/scc.podSecurityLabelSync: "false"
        name: openshift-sandboxed-containers-operator
      
      Operator Group
      ----
      apiVersion: operators.coreos.com/v1
      kind: OperatorGroup
      metadata:
        name: openshift-sandboxed-containers-operator
        namespace: openshift-sandboxed-containers-operator
      spec:
        targetNamespaces:
        - openshift-sandboxed-containers-operator
      
      Subscription
      ---
      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        labels:
          operators.coreos.com/sandboxed-containers-operator.openshift-sandboxed-containers-op: ""
        name: sandboxed-containers-operator
        namespace: openshift-sandboxed-containers-operator
      spec:
        channel: stable-1.3
        name: sandboxed-containers-operator
        source: katacatalog
        sourceNamespace: openshift-marketplace
      
      KataConfig YAML
      apiVersion: kataconfiguration.openshift.io/v1
      kind: KataConfig
      metadata:
        generation: 2
        name: kataconfig
      spec:
        checkNodeEligibility: false
        kataConfigPoolSelector: null
        kataMonitorImage: registry-proxy.engineering.redhat.com/rh-osbs/openshift-sandboxed-containers-operator-monitor:1.3.0
        logLevel: debug
      
      Wait for all nodes to be ready state.
      
      Once all nodes are ready, runtime will be available.
      
       oc get runtimeclass
      NAME   HANDLER   AGE
      kata   kata      3m26s
      
      
       3. Create a metallb CR
      apiVersion: metallb.io/v1beta1
      kind: MetalLB
      metadata:
        name: metallb
        namespace: metallb-system
      spec:
        nodeSelector:
          node-role.kubernetes.io/worker: ''
        controllerConfig:
          runtimeClassName: kata
        speakerConfig:
          runtimeClassName: kata 

      Actual results:

      oc get pods -n metallb-system
      NAME                                                   READY   STATUS              RESTARTS       AGE
      controller-6b7b75b8dd-x29dh                            0/2     ContainerCreating   0              37m
      metallb-operator-controller-manager-6bddfc4fd8-26t7q   1/1     Running             1 (4d6h ago)   4d6h
      metallb-operator-webhook-server-8574556545-rcgqs       1/1     Running             0              4d5h
      speaker-b4wmn                                          0/6     Init:0/3            0              37m
      speaker-gt9q2                                          0/6     Init:0/3            0              37m
      speaker-gxktt                                          0/6     Init:0/3            0              37m
      speaker-rxbgc                                          0/6     Init:0/3            0              37m
      
      oc describe pod controller-6b7b75b8dd-x29dh -n metallb-system
      ....
      ....
      
      Events:
        Type     Reason                  Age                   From               Message
        ----     ------                  ----                  ----               -------
        Normal   Scheduled               38m                   default-scheduler  Successfully assigned metallb-system/controller-6b7b75b8dd-x29dh to openshift-qe-024.lab.eng.rdu2.redhat.com by master-2
        Warning  FailedMount             38m                   kubelet            MountVolume.SetUp failed for volume "metrics-certs" : secret "controller-certs-secret" not found
        Warning  FailedCreatePodSandBox  3m7s (x164 over 38m)  kubelet            Failed to create pod sandbox: rpc error: code = Unknown desc = failed to find runtime handler kata from runtime list map[crun:0xc00048ad80 runc:0xc00048af00]
      
      The speaker pods are also not created.
      
      

      Expected results:

      Controller and speaker pods are created successfully

      Additional info:

      This was tested on Bare Metal Cluster

       

       

              astillma Andy Stillman
              rhn-support-asood Arti Sood
              Cameron Meadors Cameron Meadors
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

                Created:
                Updated: