kops 클러스터에 대한 검증 실패: "kops-controller"가 보류 중입니다.

kops 클러스터에 대한 검증 실패: "kops-controller"가 보류 중입니다.

kops 도구를 사용하여 AWS에서 Kubernetes 클러스터를 생성하려고 합니다. 클러스터가 생성된 후 명령을 실행하여 유효성을 검사했는데 유효하지 않습니다.

$ kops validate cluster
Using cluster from kubectl context: devops23.k8s.local

Validating cluster devops23.k8s.local

INSTANCE GROUPS
NAME                            ROLE            MACHINETYPE     MIN     MAX     SUBNETS
control-plane-us-east-2a        ControlPlane    t2.small        1       1       us-east-2a
control-plane-us-east-2b        ControlPlane    t2.small        1       1       us-east-2b
control-plane-us-east-2c        ControlPlane    t2.small        1       1       us-east-2c
nodes-us-east-2a                Node            t2.small        1       1       us-east-2a
nodes-us-east-2b                Node            t2.small        0       0       us-east-2b
nodes-us-east-2c                Node            t2.small        0       0       us-east-2c

NODE STATUS
NAME                    ROLE            READY
i-04979e16868806652     control-plane   True
i-098e4ca3ad7ee246d     control-plane   True
i-0d1819f232278b049     control-plane   True
i-0f3b8414ecd1ef5eb     node            True

VALIDATION ERRORS
KIND    NAME                                    MESSAGE
Pod     kube-system/kops-controller-p5rz4       system-cluster-critical pod "kops-controller-p5rz4" is pending

Validation Failed
Error: validation failed: cluster not yet healthy

클러스터를 생성하는 데 사용한 명령은 다음과 같습니다.

kops create cluster \
 --name $NAME \
 --master-count 3 \
 --node-count 1 \
 --node-size t2.small \
 --master-size t2.small \
 --zones $ZONES \
 --master-zones $ZONES \
 --ssh-public-key devops23.pub \
 --networking kubenet \
 --yes
$ echo $NAME
devops23.k8s.local
$ echo $ZONES
us-east-2a,us-east-2b,us-east-2c
$ kops version
Client version: 1.27.0 (git-v1.27.0)

실행하여

kubectl -n kube-system get po

3개의 Kops 컨트롤러 중 2개가 실행 중이고 1개가 '보류 중'인 것을 확인했습니다.

ebs-csi-node-bwvff                            3/3     Running   0              159m
ebs-csi-node-q4vxg                            3/3     Running   0              158m
ebs-csi-node-sk4gc                            3/3     Running   0              157m
etcd-manager-events-i-04979e16868806652       1/1     Running   0              158m
etcd-manager-events-i-098e4ca3ad7ee246d       1/1     Running   0              158m
etcd-manager-events-i-0d1819f232278b049       1/1     Running   0              156m
etcd-manager-main-i-04979e16868806652         1/1     Running   0              158m
etcd-manager-main-i-098e4ca3ad7ee246d         1/1     Running   0              158m
etcd-manager-main-i-0d1819f232278b049         1/1     Running   0              155m
kops-controller-5fpxq                         1/1     Running   0              157m
kops-controller-p5rz4                         0/1     Pending   0              158m
kops-controller-w9fhg                         1/1     Running   0              159m
kube-apiserver-i-04979e16868806652            2/2     Running   4 (161m ago)   158m
kube-apiserver-i-098e4ca3ad7ee246d            2/2     Running   4 (161m ago)   159m
kube-apiserver-i-0d1819f232278b049            2/2     Running   5 (159m ago)   156m
kube-controller-manager-i-04979e16868806652   1/1     Running   5 (161m ago)   159m
kube-controller-manager-i-098e4ca3ad7ee246d   1/1     Running   5 (161m ago)   159m

답변1

좋습니다. create Cluster 명령에 Kubernetes 버전을 추가하면 문제가 해결되었습니다.

kops create cluster \
    --name $NAME \
    --master-count 3 \
    --node-count 1 \
    --node-size t2.small \
    --master-size t2.small \
    --zones $ZONES \
    --master-zones $ZONES \
    --ssh-public-key devops23.pub \
    --networking kubenet \
    **--kubernetes-version v1.22.2** \
    --yes

kOps 버전 1.27의 경우 버전 1.22.2가 괜찮습니다. 다른 버전의 kOps가 있는 경우 여기에 호환성 표가 있습니다.https://github.com/kubernetes/kops/blob/master/permalinks/upgrade_k8s.md#1.24.0

관련 정보