Uploaded image for project: 'OpenShift Bugs'
  1. OpenShift Bugs
  2. OCPBUGS-63183

[AWS][CAPI]MAPI machine phase is null when creating MAPI machine with spec.authoritativeAPI: ClusterAPI and already existing CAPI Machine with same name

XMLWordPrintable

    • None
    • False
    • Hide

      None

      Show
      None
    • None
    • Moderate
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Description of problem:

          MAPI machine phase is null when creating MAPI machine with spec.authoritativeAPI: ClusterAPI and already existing CAPI Machine with same name

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

          4.21.0-0.nightly-2025-10-15-162146

      How reproducible:

          always

      Steps to Reproduce:

          1.Create a CAPI machine and it's reference AWS machine, and wait the CAPI machine get Running
      
      liuhuali@Lius-MacBook-Pro huali-test % oc create -f ms1.yaml 
      machine.cluster.x-k8s.io/huliu-aws1016a-j9dnx-worker-1 created
      liuhuali@Lius-MacBook-Pro huali-test % oc create -f ms2.yaml 
      awsmachine.infrastructure.cluster.x-k8s.io/huliu-aws1016a-j9dnx-worker-1 created
      
      liuhuali@Lius-MacBook-Pro huali-test % cat ms1.yaml 
      apiVersion: cluster.x-k8s.io/v1beta1
      kind: Machine
      metadata:
        name: huliu-aws1016a-j9dnx-worker-1
        namespace: openshift-cluster-api
      spec:
        bootstrap:
          dataSecretName: worker-user-data
        clusterName: huliu-aws1016a-j9dnx
        failureDomain: us-east-2c
        infrastructureRef:
          apiVersion: infrastructure.cluster.x-k8s.io/v1beta2
          kind: AWSMachine
          name: huliu-aws1016a-j9dnx-worker-1
          namespace: openshift-cluster-api
        nodeDeletionTimeout: 10s
      
      liuhuali@Lius-MacBook-Pro huali-test % cat ms2.yaml 
      apiVersion: infrastructure.cluster.x-k8s.io/v1beta2
      kind: AWSMachine
      metadata:
        name: huliu-aws1016a-j9dnx-worker-1
        namespace: openshift-cluster-api
      spec:
        additionalSecurityGroups:
        - filters:
          - name: tag:Name
            values:
            - huliu-aws1016a-j9dnx-node
        - filters:
          - name: tag:Name
            values:
            - huliu-aws1016a-j9dnx-lb
        additionalTags:
          kubernetes.io/cluster/huliu-aws1016a-j9dnx: owned
        ami:
          id: ami-082a55a580d5538ed
        cloudInit: {}
        iamInstanceProfile: huliu-aws1016a-j9dnx-worker-profile
        ignition:
          storageType: UnencryptedUserData
        instanceID: i-0e47737b728b2f221
        instanceMetadataOptions:
          httpEndpoint: enabled
          httpPutResponseHopLimit: 1
          httpTokens: optional
          instanceMetadataTags: disabled
        instanceType: m6i.xlarge
        rootVolume:
          encrypted: true
          size: 120
          type: gp3
        subnet:
          filters:
          - name: tag:Name
            values:
            - huliu-aws1016a-j9dnx-subnet-private-us-east-2c
      
      liuhuali@Lius-MacBook-Pro huali-test % oc get machine.c                       
      NAME                                           CLUSTER                NODENAME                                    PROVIDERID                              PHASE     AGE     VERSION
      huliu-aws1016a-j9dnx-worker-1                  huliu-aws1016a-j9dnx   ip-10-0-81-229.us-east-2.compute.internal   aws:///us-east-2c/i-05635919f660edc7d   Running   4m45s   
      huliu-aws1016a-j9dnx-worker-us-east-2a-b9clv   huliu-aws1016a-j9dnx   ip-10-0-31-191.us-east-2.compute.internal   aws:///us-east-2a/i-06ef33607ee55dfac   Running   67m     
      huliu-aws1016a-j9dnx-worker-us-east-2b-2gmx4   huliu-aws1016a-j9dnx   ip-10-0-45-85.us-east-2.compute.internal    aws:///us-east-2b/i-07c60ad254b34b0e4   Running   70m     
      huliu-aws1016a-j9dnx-worker-us-east-2c-pzp7m   huliu-aws1016a-j9dnx   ip-10-0-65-37.us-east-2.compute.internal    aws:///us-east-2c/i-0e47737b728b2f221   Running   67m     
      liuhuali@Lius-MacBook-Pro huali-test % oc get awsmachine                      
      NAME                                           CLUSTER                STATE     READY   INSTANCEID                              MACHINE
      huliu-aws1016a-j9dnx-worker-1                  huliu-aws1016a-j9dnx   running   true    aws:///us-east-2c/i-05635919f660edc7d   huliu-aws1016a-j9dnx-worker-1
      huliu-aws1016a-j9dnx-worker-us-east-2a-b9clv   huliu-aws1016a-j9dnx                     aws:///us-east-2a/i-06ef33607ee55dfac   huliu-aws1016a-j9dnx-worker-us-east-2a-b9clv
      huliu-aws1016a-j9dnx-worker-us-east-2b-2gmx4   huliu-aws1016a-j9dnx                     aws:///us-east-2b/i-07c60ad254b34b0e4   huliu-aws1016a-j9dnx-worker-us-east-2b-2gmx4
      huliu-aws1016a-j9dnx-worker-us-east-2c-pzp7m   huliu-aws1016a-j9dnx                     aws:///us-east-2c/i-0e47737b728b2f221   huliu-aws1016a-j9dnx-worker-us-east-2c-pzp7m
      
          2.Create a same name MAPI machine with spec.authoritativeAPI: ClusterAPI, observe the MAPI machine phase is null
      
      liuhuali@Lius-MacBook-Pro huali-test % oc create -f ms3.yaml 
      machine.machine.openshift.io/huliu-aws1016a-j9dnx-worker-1 created
      
      liuhuali@Lius-MacBook-Pro huali-test % cat ms3.yaml 
      apiVersion: machine.openshift.io/v1beta1
      kind: Machine
      metadata:
        name: huliu-aws1016a-j9dnx-worker-1
        namespace: openshift-machine-api
      spec:
        authoritativeAPI: ClusterAPI
        lifecycleHooks: {}
        metadata: {}
        providerSpec:
          value:
            ami:
              id: ami-082a55a580d5538ed
            apiVersion: machine.openshift.io/v1beta1
            blockDevices:
            - ebs:
                encrypted: true
                iops: 0
                kmsKey:
                  arn: ""
                volumeSize: 120
                volumeType: gp3
            capacityReservationId: ""
            credentialsSecret:
              name: aws-cloud-credentials
            deviceIndex: 0
            iamInstanceProfile:
              id: huliu-aws1016a-j9dnx-worker-profile
            instanceType: m6i.xlarge
            kind: AWSMachineProviderConfig
            metadata:
              creationTimestamp: null
            metadataServiceOptions: {}
            placement:
              availabilityZone: us-east-2c
              region: us-east-2
            securityGroups:
            - filters:
              - name: tag:Name
                values:
                - huliu-aws1016a-j9dnx-node
            - filters:
              - name: tag:Name
                values:
                - huliu-aws1016a-j9dnx-lb
            subnet:
              filters:
              - name: tag:Name
                values:
                - huliu-aws1016a-j9dnx-subnet-private-us-east-2c
            tags:
            - name: kubernetes.io/cluster/huliu-aws1016a-j9dnx
              value: owned
            userDataSecret:
              name: worker-user-data
      
      liuhuali@Lius-MacBook-Pro huali-test % oc get machine -n openshift-machine-api
      NAME                                           PHASE     TYPE         REGION      ZONE         AGE
      huliu-aws1016a-j9dnx-master-0                  Running   m6i.xlarge   us-east-2   us-east-2a   94m
      huliu-aws1016a-j9dnx-master-1                  Running   m6i.xlarge   us-east-2   us-east-2b   94m
      huliu-aws1016a-j9dnx-master-2                  Running   m6i.xlarge   us-east-2   us-east-2c   94m
      huliu-aws1016a-j9dnx-worker-1                                                                  5m1s
      huliu-aws1016a-j9dnx-worker-us-east-2a-b9clv   Running   m6i.xlarge   us-east-2   us-east-2a   90m
      huliu-aws1016a-j9dnx-worker-us-east-2b-2gmx4   Running   m6i.xlarge   us-east-2   us-east-2b   90m
      huliu-aws1016a-j9dnx-worker-us-east-2c-pzp7m   Running   m6i.xlarge   us-east-2   us-east-2c   90m
      liuhuali@Lius-MacBook-Pro huali-test % oc get machine.c                               
      NAME                                           CLUSTER                NODENAME                                    PROVIDERID                              PHASE     AGE   VERSION
      huliu-aws1016a-j9dnx-worker-1                  huliu-aws1016a-j9dnx   ip-10-0-81-229.us-east-2.compute.internal   aws:///us-east-2c/i-05635919f660edc7d   Running   10m   
      huliu-aws1016a-j9dnx-worker-us-east-2a-b9clv   huliu-aws1016a-j9dnx   ip-10-0-31-191.us-east-2.compute.internal   aws:///us-east-2a/i-06ef33607ee55dfac   Running   73m   
      huliu-aws1016a-j9dnx-worker-us-east-2b-2gmx4   huliu-aws1016a-j9dnx   ip-10-0-45-85.us-east-2.compute.internal    aws:///us-east-2b/i-07c60ad254b34b0e4   Running   75m   
      huliu-aws1016a-j9dnx-worker-us-east-2c-pzp7m   huliu-aws1016a-j9dnx   ip-10-0-65-37.us-east-2.compute.internal    aws:///us-east-2c/i-0e47737b728b2f221   Running   73m   
      
          3.Update the MAPI machine spec.authoritativeAPI to MachineAPI, the MAPI machine phase is still null, the CAPI machine phase is also changed to null   
      
      liuhuali@Lius-MacBook-Pro huali-test % oc edit machine huliu-aws1016a-j9dnx-worker-1  -n openshift-machine-api
      machine.machine.openshift.io/huliu-aws1016a-j9dnx-worker-1 edited
      
      liuhuali@Lius-MacBook-Pro huali-test % oc get machine -n openshift-machine-api
      NAME                                           PHASE     TYPE         REGION      ZONE         AGE
      huliu-aws1016a-j9dnx-master-0                  Running   m6i.xlarge   us-east-2   us-east-2a   96m
      huliu-aws1016a-j9dnx-master-1                  Running   m6i.xlarge   us-east-2   us-east-2b   96m
      huliu-aws1016a-j9dnx-master-2                  Running   m6i.xlarge   us-east-2   us-east-2c   96m
      huliu-aws1016a-j9dnx-worker-1                                                                  6m29s
      huliu-aws1016a-j9dnx-worker-us-east-2a-b9clv   Running   m6i.xlarge   us-east-2   us-east-2a   92m
      huliu-aws1016a-j9dnx-worker-us-east-2b-2gmx4   Running   m6i.xlarge   us-east-2   us-east-2b   92m
      huliu-aws1016a-j9dnx-worker-us-east-2c-pzp7m   Running   m6i.xlarge   us-east-2   us-east-2c   92m
      liuhuali@Lius-MacBook-Pro huali-test % oc get machine.c
      NAME                                           CLUSTER                NODENAME                                    PROVIDERID                              PHASE     AGE   VERSION
      huliu-aws1016a-j9dnx-worker-1                  huliu-aws1016a-j9dnx   ip-10-0-81-229.us-east-2.compute.internal   aws:///us-east-2c/i-05635919f660edc7d             11m   
      huliu-aws1016a-j9dnx-worker-us-east-2a-b9clv   huliu-aws1016a-j9dnx   ip-10-0-31-191.us-east-2.compute.internal   aws:///us-east-2a/i-06ef33607ee55dfac   Running   74m   
      huliu-aws1016a-j9dnx-worker-us-east-2b-2gmx4   huliu-aws1016a-j9dnx   ip-10-0-45-85.us-east-2.compute.internal    aws:///us-east-2b/i-07c60ad254b34b0e4   Running   76m   
      huliu-aws1016a-j9dnx-worker-us-east-2c-pzp7m   huliu-aws1016a-j9dnx   ip-10-0-65-37.us-east-2.compute.internal    aws:///us-east-2c/i-0e47737b728b2f221   Running   74m   
      
      liuhuali@Lius-MacBook-Pro huali-test % oc get machine huliu-aws1016a-j9dnx-worker-1  -n openshift-machine-api -oyaml 
      apiVersion: machine.openshift.io/v1beta1
      kind: Machine
      metadata:
        creationTimestamp: "2025-10-16T02:56:05Z"
        finalizers:
        - sync.machine.openshift.io/finalizer
        generation: 3
        name: huliu-aws1016a-j9dnx-worker-1
        namespace: openshift-machine-api
        resourceVersion: "58041"
        uid: 8ee8c24f-4741-4ae4-a57c-ca6689301c46
      spec:
        authoritativeAPI: MachineAPI
        lifecycleHooks: {}
        metadata: {}
        providerID: aws:///us-east-2c/i-05635919f660edc7d
        providerSpec:
          value:
            ami:
              id: ami-082a55a580d5538ed
            apiVersion: machine.openshift.io/v1beta1
            blockDevices:
            - ebs:
                encrypted: true
                kmsKey:
                  id: ""
                volumeSize: 120
                volumeType: gp3
            capacityReservationId: ""
            credentialsSecret:
              name: aws-cloud-credentials
            deviceIndex: 0
            iamInstanceProfile:
              id: huliu-aws1016a-j9dnx-worker-profile
            instanceType: m6i.xlarge
            kind: AWSMachineProviderConfig
            metadata:
              creationTimestamp: null
            metadataServiceOptions:
              authentication: Optional
            placement:
              availabilityZone: us-east-2c
              region: us-east-2
            securityGroups:
            - filters:
              - name: tag:Name
                values:
                - huliu-aws1016a-j9dnx-node
            - filters:
              - name: tag:Name
                values:
                - huliu-aws1016a-j9dnx-lb
            subnet:
              filters:
              - name: tag:Name
                values:
                - huliu-aws1016a-j9dnx-subnet-private-us-east-2c
            tags:
            - name: kubernetes.io/cluster/huliu-aws1016a-j9dnx
              value: owned
            userDataSecret:
              name: worker-user-data
      status:
        authoritativeAPI: MachineAPI
        conditions:
        - lastTransitionTime: "2025-10-16T02:56:05Z"
          status: "True"
          type: Drainable
        - lastTransitionTime: "2025-10-16T03:02:26Z"
          message: The AuthoritativeAPI status is set to 'MachineAPI'
          reason: AuthoritativeAPIMachineAPI
          severity: Info
          status: "False"
          type: Paused
        - lastTransitionTime: "2025-10-16T03:02:26Z"
          message: Successfully synchronized MAPI Machine to CAPI
          reason: ResourceSynchronized
          severity: ""
          status: "True"
          type: Synchronized
        - lastTransitionTime: "2025-10-16T02:56:05Z"
          status: "True"
          type: Terminable
        lastUpdated: "2025-10-16T03:02:26Z"
        nodeRef:
          kind: Node
          name: ip-10-0-81-229.us-east-2.compute.internal
          uid: ef95f6db-e004-4cef-8d51-69a12be4168c
        phase: ""
        synchronizedGeneration: 3

      Actual results:

          MAPI machine phase is null when creating MAPI machine with spec.authoritativeAPI: ClusterAPI and already existing CAPI Machine with same name

      Expected results:

          MAPI machine phase should be Running when creating MAPI machine with spec.authoritativeAPI: ClusterAPI and already existing CAPI Machine with same name

      Additional info:

          must-gather: https://drive.google.com/file/d/1ESLzLLeETXpRC0ZVls-lFyIILE0kmRll/view?usp=sharing

              rh-ee-nbrubake Nolan Brubaker
              huliu@redhat.com Huali Liu
              None
              None
              Huali Liu Huali Liu
              None
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated: