I am trying to add a phase - initinfra-networking-target to apply cni . Previously, cni was being applied as a post kubeadm command. I notice that the CNI gets applied properly . However, the target control plane gets stuck in
provisioning state after the clusterctl-move operation.
The order exections of phases for docker provider are:
❯ airshipctl phase plan
GROUP PHASE
group1
clusterctl-init-ephemeral
controlplane-ephemeral
initinfra-networking-target
clusterctl-init-target
clusterctl-move
workers-target
The logs at and after phase initinfra-networking-target are as follows.
❯ kubectl get machines --kubeconfig /tmp/target-cluster.kubeconfig
NAME PROVIDERID PHASE
target-cluster-control-plane-fw6t7 docker:////target-cluster-control-plane-fw6t7 Provisioning
❯ airshipctl phase run initinfra-networking-target --debug --kubeconfig "/tmp/target-cluster.kubeconfig"
[airshipctl] 2021/01/20 15:53:05 opendev.org/airship/airshipctl@/pkg/phase/executors/k8s_applier.go:103: Getting kubeconfig context name from cluster map
[airshipctl] 2021/01/20 15:53:05 opendev.org/airship/airshipctl@/pkg/phase/executors/k8s_applier.go:108: Getting kubeconfig file information from kubeconfig provider
[airshipctl] 2021/01/20 15:53:05 opendev.org/airship/airshipctl@/pkg/phase/executors/k8s_applier.go:113: Filtering out documents that shouldn't be applied to kubernetes from document bundle
[airshipctl] 2021/01/20 15:53:05 opendev.org/airship/airshipctl@/pkg/phase/executors/k8s_applier.go:121: Using kubeconfig at '/tmp/target-cluster.kubeconfig' and context 'target-cluster'
[airshipctl] 2021/01/20 15:53:05 opendev.org/airship/airshipctl@/pkg/phase/executors/k8s_applier.go:92: WaitTimeout: 0s
[airshipctl] 2021/01/20 15:53:05 opendev.org/airship/airshipctl@/pkg/k8s/applier/applier.go:76: Getting infos for bundle, inventory id is initinfra-networking-target
[airshipctl] 2021/01/20 15:53:05 opendev.org/airship/airshipctl@/pkg/k8s/applier/applier.go:109: Inventory Object config Map not found, auto generating Inventory object
[airshipctl] 2021/01/20 15:53:05 opendev.org/airship/airshipctl@/pkg/k8s/applier/applier.go:116: Injecting Inventory Object: {"apiVersion":"v1","kind":"ConfigMap","metadata":{"creationTimestamp":null,"labels":{"cli-utils.sigs.k8s.io/inventory-id":"initinfra-networking-target"},"name":"airshipit-initinfra-networking-target","namespace":"airshipit"}}{nsfx:false,beh:unspecified} into bundle
[airshipctl] 2021/01/20 15:53:05 opendev.org/airship/airshipctl@/pkg/k8s/applier/applier.go:122: Making sure that inventory object namespace airshipit exists
namespace/cert-manager created
namespace/tigera-operator created
customresourcedefinition.apiextensions.k8s.io/bgpconfigurations.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/bgppeers.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/blockaffinities.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/certificaterequests.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/certificates.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/challenges.acme.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/clusterinformations.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/clusterissuers.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/felixconfigurations.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/globalnetworkpolicies.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/globalnetworksets.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/hostendpoints.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/installations.operator.tigera.io created
customresourcedefinition.apiextensions.k8s.io/ipamblocks.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/ipamconfigs.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/ipamhandles.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/ippools.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/issuers.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/kubecontrollersconfigurations.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/networkpolicies.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/networksets.crd.projectcalico.org created
customresourcedefinition.apiextensions.k8s.io/orders.acme.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/tigerastatuses.operator.tigera.io created
mutatingwebhookconfiguration.admissionregistration.k8s.io/cert-manager-webhook created
serviceaccount/cert-manager created
serviceaccount/cert-manager-cainjector created
serviceaccount/cert-manager-webhook created
serviceaccount/tigera-operator created
podsecuritypolicy.policy/tigera-operator created
role.rbac.authorization.k8s.io/cert-manager-webhook:dynamic-serving created
role.rbac.authorization.k8s.io/cert-manager-cainjector:leaderelection created
role.rbac.authorization.k8s.io/cert-manager:leaderelection created
clusterrole.rbac.authorization.k8s.io/cert-manager-cainjector created
clusterrole.rbac.authorization.k8s.io/cert-manager-controller-certificates created
clusterrole.rbac.authorization.k8s.io/cert-manager-controller-challenges created
clusterrole.rbac.authorization.k8s.io/cert-manager-controller-clusterissuers created
clusterrole.rbac.authorization.k8s.io/cert-manager-controller-ingress-shim created
clusterrole.rbac.authorization.k8s.io/cert-manager-controller-issuers created
clusterrole.rbac.authorization.k8s.io/cert-manager-controller-orders created
clusterrole.rbac.authorization.k8s.io/cert-manager-edit created
clusterrole.rbac.authorization.k8s.io/cert-manager-view created
clusterrole.rbac.authorization.k8s.io/tigera-operator created
rolebinding.rbac.authorization.k8s.io/cert-manager-webhook:dynamic-serving created
rolebinding.rbac.authorization.k8s.io/cert-manager-cainjector:leaderelection created
rolebinding.rbac.authorization.k8s.io/cert-manager:leaderelection created
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-cainjector created
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-certificates created
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-challenges created
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-clusterissuers created
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-ingress-shim created
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-issuers created
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-orders created
clusterrolebinding.rbac.authorization.k8s.io/tigera-operator created
service/cert-manager created
service/cert-manager-webhook created
deployment.apps/cert-manager created
deployment.apps/cert-manager-cainjector created
deployment.apps/cert-manager-webhook created
deployment.apps/tigera-operator created
installation.operator.tigera.io/default created
validatingwebhookconfiguration.admissionregistration.k8s.io/cert-manager-webhook created
63 resource(s) applied. 63 created, 0 unchanged, 0 configured
❯ kubectl get pods -A --kubeconfig /tmp/target-cluster.kubeconfig
NAMESPACE NAME READY STATUS RESTARTS AGE
calico-system calico-kube-controllers-665cc578f8-pfl4z 1/1 Running 0 81s
calico-system calico-node-hcfmf 1/1 Running 0 82s
calico-system calico-typha-8494d49ffc-4slrh 1/1 Running 0 82s
cert-manager cert-manager-c5f45c6b7-wx8bd 1/1 Running 0 94s
cert-manager cert-manager-cainjector-78477f7546-lgfms 1/1 Running 0 94s
cert-manager cert-manager-webhook-69d7bc4c4c-t2wgs 1/1 Running 0 94s
kube-system coredns-66bff467f8-hd7lm 1/1 Running 0 6m5s
kube-system coredns-66bff467f8-tdcdg 1/1 Running 0 6m5s
kube-system etcd-target-cluster-control-plane-fw6t7 1/1 Running 0 6m11s
kube-system kube-apiserver-target-cluster-control-plane-fw6t7 1/1 Running 0 6m11s
kube-system kube-controller-manager-target-cluster-control-plane-fw6t7 1/1 Running 0 6m11s
kube-system kube-proxy-c527p 1/1 Running 0 6m5s
kube-system kube-scheduler-target-cluster-control-plane-fw6t7 1/1 Running 0 6m11s
tigera-operator tigera-operator-5d4fc8f656-vpxnk 1/1 Running 0 93s
❯ kubectl get nodes --kubeconfig /tmp/target-cluster.kubeconfig -A
NAME STATUS ROLES AGE VERSION
target-cluster-control-plane-fw6t7 Ready master 6m56s v1.18.6
❯ kubectl taint node target-cluster-control-plane-fw6t7 node-role.kubernetes.io/master- --kubeconfig /tmp/target-cluster.kubeconfig --request-timeout 10s
node/target-cluster-control-plane-fw6t7 untainted
❯ airshipctl phase run clusterctl-init-target --debug --kubeconfig /tmp/target-cluster.kubeconfig
[airshipctl] 2021/01/20 15:56:26 opendev.org/airship/airshipctl@/pkg/clusterctl/client/client.go:81: Starting cluster-api initiation
{"Message":"starting clusterctl init executor","Operation":"ClusterctlInitStart","Timestamp":"2021-01-20T15:56:26.041647983-08:00","Type":"ClusterctlEvent"}
Installing the clusterctl inventory CRD
Creating CustomResourceDefinition="providers.clusterctl.cluster.x-k8s.io"
Fetching providers
[airshipctl] 2021/01/20 15:56:26 opendev.org/airship/airshipctl@/pkg/clusterctl/client/factory.go:86: Creating airshipctl repository implementation interface for provider cluster-api of type CoreProvider
[airshipctl] 2021/01/20 15:56:26 opendev.org/airship/airshipctl@/pkg/clusterctl/implementations/repository_client.go:37: Setting up airshipctl provider Components client
Provider type: CoreProvider, name: cluster-api
[airshipctl] 2021/01/20 15:56:26 opendev.org/airship/airshipctl@/pkg/clusterctl/implementations/components_client.go:38: Getting airshipctl provider components, skipping variable substitution: false.
Provider type: CoreProvider, name: cluster-api
Fetching File="components.yaml" Provider="cluster-api" Version="v0.3.7"
[airshipctl] 2021/01/20 15:56:26 opendev.org/airship/airshipctl@/pkg/clusterctl/implementations/repository.go:83: Building cluster-api provider component documents from kustomize path at /tmp/airship/airshipctl/manifests/function/capi/v0.3.7
[airshipctl] 2021/01/20 15:56:35 opendev.org/airship/airshipctl@/pkg/clusterctl/client/factory.go:86: Creating airshipctl repository implementation interface for provider kubeadm of type BootstrapProvider
[airshipctl] 2021/01/20 15:56:35 opendev.org/airship/airshipctl@/pkg/clusterctl/implementations/repository_client.go:37: Setting up airshipctl provider Components client
Provider type: BootstrapProvider, name: kubeadm
[airshipctl] 2021/01/20 15:56:35 opendev.org/airship/airshipctl@/pkg/clusterctl/implementations/components_client.go:38: Getting airshipctl provider components, skipping variable substitution: false.
Provider type: BootstrapProvider, name: kubeadm
Fetching File="components.yaml" Provider="bootstrap-kubeadm" Version="v0.3.7"
[airshipctl] 2021/01/20 15:56:35 opendev.org/airship/airshipctl@/pkg/clusterctl/implementations/repository.go:83: Building cluster-api provider component documents from kustomize path at /tmp/airship/airshipctl/manifests/function/cabpk/v0.3.7
[airshipctl] 2021/01/20 15:56:43 opendev.org/airship/airshipctl@/pkg/clusterctl/client/factory.go:86: Creating airshipctl repository implementation interface for provider kubeadm of type ControlPlaneProvider
[airshipctl] 2021/01/20 15:56:43 opendev.org/airship/airshipctl@/pkg/clusterctl/implementations/repository_client.go:37: Setting up airshipctl provider Components client
Provider type: ControlPlaneProvider, name: kubeadm
[airshipctl] 2021/01/20 15:56:43 opendev.org/airship/airshipctl@/pkg/clusterctl/implementations/components_client.go:38: Getting airshipctl provider components, skipping variable substitution: false.
Provider type: ControlPlaneProvider, name: kubeadm
Fetching File="components.yaml" Provider="control-plane-kubeadm" Version="v0.3.7"
[airshipctl] 2021/01/20 15:56:43 opendev.org/airship/airshipctl@/pkg/clusterctl/implementations/repository.go:83: Building cluster-api provider component documents from kustomize path at /tmp/airship/airshipctl/manifests/function/cacpk/v0.3.7
[airshipctl] 2021/01/20 15:56:46 opendev.org/airship/airshipctl@/pkg/clusterctl/client/factory.go:86: Creating airshipctl repository implementation interface for provider docker of type InfrastructureProvider
[airshipctl] 2021/01/20 15:56:46 opendev.org/airship/airshipctl@/pkg/clusterctl/implementations/repository_client.go:37: Setting up airshipctl provider Components client
Provider type: InfrastructureProvider, name: docker
[airshipctl] 2021/01/20 15:56:46 opendev.org/airship/airshipctl@/pkg/clusterctl/implementations/components_client.go:38: Getting airshipctl provider components, skipping variable substitution: false.
Provider type: InfrastructureProvider, name: docker
Fetching File="components.yaml" Provider="infrastructure-docker" Version="v0.3.11"
[airshipctl] 2021/01/20 15:56:46 opendev.org/airship/airshipctl@/pkg/clusterctl/implementations/repository.go:83: Building cluster-api provider component documents from kustomize path at /tmp/airship/airshipctl/manifests/function/capd/v0.3.11
[airshipctl] 2021/01/20 15:56:48 opendev.org/airship/airshipctl@/pkg/clusterctl/client/factory.go:86: Creating airshipctl repository implementation interface for provider cluster-api of type CoreProvider
Fetching File="metadata.yaml" Provider="cluster-api" Version="v0.3.7"
[airshipctl] 2021/01/20 15:56:48 opendev.org/airship/airshipctl@/pkg/clusterctl/implementations/repository.go:83: Building cluster-api provider component documents from kustomize path at /tmp/airship/airshipctl/manifests/function/capi/v0.3.7
[airshipctl] 2021/01/20 15:56:56 opendev.org/airship/airshipctl@/pkg/clusterctl/client/factory.go:86: Creating airshipctl repository implementation interface for provider kubeadm of type BootstrapProvider
Fetching File="metadata.yaml" Provider="bootstrap-kubeadm" Version="v0.3.7"
[airshipctl] 2021/01/20 15:56:56 opendev.org/airship/airshipctl@/pkg/clusterctl/implementations/repository.go:83: Building cluster-api provider component documents from kustomize path at /tmp/airship/airshipctl/manifests/function/cabpk/v0.3.7
[airshipctl] 2021/01/20 15:57:03 opendev.org/airship/airshipctl@/pkg/clusterctl/client/factory.go:86: Creating airshipctl repository implementation interface for provider kubeadm of type ControlPlaneProvider
Fetching File="metadata.yaml" Provider="control-plane-kubeadm" Version="v0.3.7"
[airshipctl] 2021/01/20 15:57:03 opendev.org/airship/airshipctl@/pkg/clusterctl/implementations/repository.go:83: Building cluster-api provider component documents from kustomize path at /tmp/airship/airshipctl/manifests/function/cacpk/v0.3.7
[airshipctl] 2021/01/20 15:57:06 opendev.org/airship/airshipctl@/pkg/clusterctl/client/factory.go:86: Creating airshipctl repository implementation interface for provider docker of type InfrastructureProvider
Fetching File="metadata.yaml" Provider="infrastructure-docker" Version="v0.3.11"
[airshipctl] 2021/01/20 15:57:06 opendev.org/airship/airshipctl@/pkg/clusterctl/implementations/repository.go:83: Building cluster-api provider component documents from kustomize path at /tmp/airship/airshipctl/manifests/function/capd/v0.3.11
Creating Namespace="cert-manager-test"
Creating Issuer="test-selfsigned" Namespace="cert-manager-test"
Creating Certificate="selfsigned-cert" Namespace="cert-manager-test"
Deleting Namespace="cert-manager-test"
Deleting Issuer="test-selfsigned" Namespace="cert-manager-test"
Deleting Certificate="selfsigned-cert" Namespace="cert-manager-test"
Skipping installing cert-manager as it is already installed
Installing Provider="cluster-api" Version="v0.3.7" TargetNamespace="capi-system"
Creating shared objects Provider="cluster-api" Version="v0.3.7"
Creating Namespace="capi-webhook-system"
Creating CustomResourceDefinition="clusterresourcesetbindings.addons.cluster.x-k8s.io"
Creating CustomResourceDefinition="clusterresourcesets.addons.cluster.x-k8s.io"
Creating CustomResourceDefinition="clusters.cluster.x-k8s.io"
Creating CustomResourceDefinition="machinedeployments.cluster.x-k8s.io"
Creating CustomResourceDefinition="machinehealthchecks.cluster.x-k8s.io"
Creating CustomResourceDefinition="machinepools.exp.cluster.x-k8s.io"
Creating CustomResourceDefinition="machines.cluster.x-k8s.io"
Creating CustomResourceDefinition="machinesets.cluster.x-k8s.io"
Creating Service="capi-webhook-service" Namespace="capi-webhook-system"
Creating Deployment="capi-controller-manager" Namespace="capi-webhook-system"
Creating Certificate="capi-serving-cert" Namespace="capi-webhook-system"
Creating Issuer="capi-selfsigned-issuer" Namespace="capi-webhook-system"
Creating MutatingWebhookConfiguration="capi-mutating-webhook-configuration"
Creating ValidatingWebhookConfiguration="capi-validating-webhook-configuration"
Creating instance objects Provider="cluster-api" Version="v0.3.7" TargetNamespace="capi-system"
Creating Namespace="capi-system"
Creating Role="capi-leader-election-role" Namespace="capi-system"
Creating ClusterRole="capi-system-capi-aggregated-manager-role"
Creating ClusterRole="capi-system-capi-manager-role"
Creating ClusterRole="capi-system-capi-proxy-role"
Creating RoleBinding="capi-leader-election-rolebinding" Namespace="capi-system"
Creating ClusterRoleBinding="capi-system-capi-manager-rolebinding"
Creating ClusterRoleBinding="capi-system-capi-proxy-rolebinding"
Creating Service="capi-controller-manager-metrics-service" Namespace="capi-system"
Creating Deployment="capi-controller-manager" Namespace="capi-system"
Creating inventory entry Provider="cluster-api" Version="v0.3.7" TargetNamespace="capi-system"
Installing Provider="bootstrap-kubeadm" Version="v0.3.7" TargetNamespace="capi-kubeadm-bootstrap-system"
Creating shared objects Provider="bootstrap-kubeadm" Version="v0.3.7"
Creating CustomResourceDefinition="kubeadmconfigs.bootstrap.cluster.x-k8s.io"
Creating CustomResourceDefinition="kubeadmconfigtemplates.bootstrap.cluster.x-k8s.io"
Creating Service="capi-kubeadm-bootstrap-webhook-service" Namespace="capi-webhook-system"
Creating Deployment="capi-kubeadm-bootstrap-controller-manager" Namespace="capi-webhook-system"
Creating Certificate="capi-kubeadm-bootstrap-serving-cert" Namespace="capi-webhook-system"
Creating Issuer="capi-kubeadm-bootstrap-selfsigned-issuer" Namespace="capi-webhook-system"
Creating ValidatingWebhookConfiguration="capi-kubeadm-bootstrap-validating-webhook-configuration"
Creating instance objects Provider="bootstrap-kubeadm" Version="v0.3.7" TargetNamespace="capi-kubeadm-bootstrap-system"
Creating Namespace="capi-kubeadm-bootstrap-system"
Creating Role="capi-kubeadm-bootstrap-leader-election-role" Namespace="capi-kubeadm-bootstrap-system"
Creating ClusterRole="capi-kubeadm-bootstrap-system-capi-kubeadm-bootstrap-manager-role"
Creating ClusterRole="capi-kubeadm-bootstrap-system-capi-kubeadm-bootstrap-proxy-role"
Creating RoleBinding="capi-kubeadm-bootstrap-leader-election-rolebinding" Namespace="capi-kubeadm-bootstrap-system"
Creating ClusterRoleBinding="capi-kubeadm-bootstrap-system-capi-kubeadm-bootstrap-manager-rolebinding"
Creating ClusterRoleBinding="capi-kubeadm-bootstrap-system-capi-kubeadm-bootstrap-proxy-rolebinding"
Creating Service="capi-kubeadm-bootstrap-controller-manager-metrics-service" Namespace="capi-kubeadm-bootstrap-system"
Creating Deployment="capi-kubeadm-bootstrap-controller-manager" Namespace="capi-kubeadm-bootstrap-system"
Creating inventory entry Provider="bootstrap-kubeadm" Version="v0.3.7" TargetNamespace="capi-kubeadm-bootstrap-system"
Installing Provider="control-plane-kubeadm" Version="v0.3.7" TargetNamespace="capi-kubeadm-control-plane-system"
Creating shared objects Provider="control-plane-kubeadm" Version="v0.3.7"
Creating CustomResourceDefinition="kubeadmcontrolplanes.controlplane.cluster.x-k8s.io"
Creating Service="capi-kubeadm-control-plane-webhook-service" Namespace="capi-webhook-system"
Creating Deployment="capi-kubeadm-control-plane-controller-manager" Namespace="capi-webhook-system"
Creating Certificate="capi-kubeadm-control-plane-serving-cert" Namespace="capi-webhook-system"
Creating Issuer="capi-kubeadm-control-plane-selfsigned-issuer" Namespace="capi-webhook-system"
Creating MutatingWebhookConfiguration="capi-kubeadm-control-plane-mutating-webhook-configuration"
Creating ValidatingWebhookConfiguration="capi-kubeadm-control-plane-validating-webhook-configuration"
Creating instance objects Provider="control-plane-kubeadm" Version="v0.3.7" TargetNamespace="capi-kubeadm-control-plane-system"
Creating Namespace="capi-kubeadm-control-plane-system"
Creating Role="capi-kubeadm-control-plane-leader-election-role" Namespace="capi-kubeadm-control-plane-system"
Creating Role="capi-kubeadm-control-plane-manager-role" Namespace="capi-kubeadm-control-plane-system"
Creating ClusterRole="capi-kubeadm-control-plane-system-capi-kubeadm-control-plane-aggregated-manager-role"
Creating ClusterRole="capi-kubeadm-control-plane-system-capi-kubeadm-control-plane-manager-role"
Creating ClusterRole="capi-kubeadm-control-plane-system-capi-kubeadm-control-plane-proxy-role"
Creating RoleBinding="capi-kubeadm-control-plane-leader-election-rolebinding" Namespace="capi-kubeadm-control-plane-system"
Creating ClusterRoleBinding="capi-kubeadm-control-plane-system-capi-kubeadm-control-plane-manager-rolebinding"
Creating ClusterRoleBinding="capi-kubeadm-control-plane-system-capi-kubeadm-control-plane-proxy-rolebinding"
Creating Service="capi-kubeadm-control-plane-controller-manager-metrics-service" Namespace="capi-kubeadm-control-plane-system"
Creating Deployment="capi-kubeadm-control-plane-controller-manager" Namespace="capi-kubeadm-control-plane-system"
Creating inventory entry Provider="control-plane-kubeadm" Version="v0.3.7" TargetNamespace="capi-kubeadm-control-plane-system"
Installing Provider="infrastructure-docker" Version="v0.3.11" TargetNamespace="capd-system"
Creating shared objects Provider="infrastructure-docker" Version="v0.3.11"
Creating CustomResourceDefinition="dockerclusters.infrastructure.cluster.x-k8s.io"
Creating CustomResourceDefinition="dockermachinepools.exp.infrastructure.cluster.x-k8s.io"
Creating CustomResourceDefinition="dockermachines.infrastructure.cluster.x-k8s.io"
Creating CustomResourceDefinition="dockermachinetemplates.infrastructure.cluster.x-k8s.io"
Creating ValidatingWebhookConfiguration="capd-validating-webhook-configuration"
Creating instance objects Provider="infrastructure-docker" Version="v0.3.11" TargetNamespace="capd-system"
Creating Namespace="capd-system"
Creating Role="capd-leader-election-role" Namespace="capd-system"
Creating ClusterRole="capd-system-capd-manager-role"
Creating ClusterRole="capd-system-capd-proxy-role"
Creating RoleBinding="capd-leader-election-rolebinding" Namespace="capd-system"
Creating ClusterRoleBinding="capd-system-capd-manager-rolebinding"
Creating ClusterRoleBinding="capd-system-capd-proxy-rolebinding"
Creating Service="capd-controller-manager-metrics-service" Namespace="capd-system"
Creating Service="capd-webhook-service" Namespace="capd-system"
Creating Deployment="capd-controller-manager" Namespace="capd-system"
Creating Certificate="capd-serving-cert" Namespace="capd-system"
Creating Issuer="capd-selfsigned-issuer" Namespace="capd-system"
Creating inventory entry Provider="infrastructure-docker" Version="v0.3.11" TargetNamespace="capd-system"
{"Message":"clusterctl init completed successfully","Operation":"ClusterctlInitEnd","Timestamp":"2021-01-20T15:57:31.702173573-08:00","Type":"ClusterctlEvent"}
❯ kubectl get pods -A --kubeconfig /tmp/target-cluster.kubeconfig
NAMESPACE NAME READY STATUS RESTARTS AGE
calico-system calico-kube-controllers-665cc578f8-pfl4z 1/1 Running 0 4m52s
calico-system calico-node-hcfmf 1/1 Running 0 4m53s
calico-system calico-typha-8494d49ffc-4slrh 1/1 Running 0 4m53s
capd-system capd-controller-manager-5977747c45-zh5n5 2/2 Running 0 48s
capi-kubeadm-bootstrap-system capi-kubeadm-bootstrap-controller-manager-59b7bdbd94-59rbt 2/2 Running 0 62s
capi-kubeadm-control-plane-system capi-kubeadm-control-plane-controller-manager-7b6d8db5db-vq6mr 2/2 Running 0 56s
capi-system capi-controller-manager-69b878c7b6-wm94n 2/2 Running 0 66s
capi-webhook-system capi-controller-manager-77ccdfd94c-xb5wn 2/2 Running 0 67s
capi-webhook-system capi-kubeadm-bootstrap-controller-manager-77658d7745-phmsw 2/2 Running 0 65s
capi-webhook-system capi-kubeadm-control-plane-controller-manager-74dcf8b9c-q45wj 2/2 Running 0 61s
cert-manager cert-manager-c5f45c6b7-wx8bd 1/1 Running 0 5m5s
cert-manager cert-manager-cainjector-78477f7546-lgfms 1/1 Running 0 5m5s
cert-manager cert-manager-webhook-69d7bc4c4c-t2wgs 1/1 Running 0 5m5s
kube-system coredns-66bff467f8-hd7lm 1/1 Running 0 9m36s
kube-system coredns-66bff467f8-tdcdg 1/1 Running 0 9m36s
kube-system etcd-target-cluster-control-plane-fw6t7 1/1 Running 0 9m42s
kube-system kube-apiserver-target-cluster-control-plane-fw6t7 1/1 Running 0 9m42s
kube-system kube-controller-manager-target-cluster-control-plane-fw6t7 1/1 Running 0 9m42s
kube-system kube-proxy-c527p 1/1 Running 0 9m36s
kube-system kube-scheduler-target-cluster-control-plane-fw6t7 1/1 Running 0 9m42s
tigera-operator tigera-operator-5d4fc8f656-vpxnk 1/1 Running 0 5m4s
❯ KUBECONFIG="${HOME}/.airship/kubeconfig":/tmp/target-cluster.kubeconfig kubectl config view --merge --flatten > "/tmp/merged_target_ephemeral.kubeconfig
❯ airshipctl phase run clusterctl-move --kubeconfig "/tmp/merged_target_ephemeral.kubeconfig"
[airshipctl] 2021/01/20 16:00:09 command 'clusterctl move' is going to be executed
{"Message":"starting clusterctl move executor","Operation":"ClusterctlMoveStart","Timestamp":"2021-01-20T16:00:09.514700015-08:00","Type":"ClusterctlEvent"}
{"Message":"clusterctl move completed successfully","Operation":"ClusterctlMoveEnd","Timestamp":"2021-01-20T16:00:12.703681221-08:00","Type":"ClusterctlEvent"}
❯ kubectl get machines --kubeconfig /tmp/target-cluster.kubeconfig
NAME PROVIDERID PHASE
target-cluster-control-plane-fw6t7 docker:////target-cluster-control-plane-fw6t7 Provisioning
I am trying to add a phase -
initinfra-networking-target
to apply cni . Previously, cni was being applied as a post kubeadm command. I notice that the CNI gets applied properly . However, the target control plane gets stuck in provisioning state after theclusterctl-move
operation.The order exections of phases for docker provider are:
The logs at and after phase
initinfra-networking-target
are as follows.