そりゃそうなんだけど、社内で大きな Kubernetes クラスタ使った後に、検証用の小さな EKS クラスタ使った後だったので、見落としていた。
deployment を get で見てみて、
% kubectl get deployment -n kube-system (git)-[master]
NAME READY UP-TO-DATE AVAILABLE AGE
alb-ingress-controller 0/1 1 0 7m6s
coredns 2/2 2 2 149d
この alb-ingress-controller を起動したいけど READY が 0 になってる。
この場合、kubectl get pod ではpod は見えないけど (オプションつけると見えるようになるかも? 詳しくはわからない)、
EKS のウェブコンソールからは、起動しようとしているポッド名がわかるので、describe してみる
% kubectl -n kube-system describe pod/alb-ingress-controller-5686444fbf-cjmqj
...
Tolerations: node.kubernetes.io/not-ready:NoExecute op=Exists for 300s
node.kubernetes.io/unreachable:NoExecute op=Exists for 300s
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning FailedScheduling 0s (x3 over 75s) default-scheduler 0/1 nodes are available: 1 Too many pods.
Warning FailedScheduling となっていると、外的要因で Podの起動するら試していない。
おそらくリソース不足なので、他のポッドを消してみる。そうしたら動いた。
コメント