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

クラスター作成コマンドに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

関連情報