У меня проблема с одним из боксов. Пишет, что находится в состоянии ожидания.
kubectl get pods -n amazon-cloudwatch
NAME READY STATUS RESTARTS AGE
pod-1 1/1 Running 0 17h
pod-2 1/1 Running 0 17h
pod-3 1/1 Running 0 17h
pod-4 1/1 Running 0 17h
pod-5 1/1 Running 0 17h
pod-6 0/1 Pending 0 17h
Если я опишу стручок, то вот что я могу увидеть:
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning FailedScheduling 96s (x1011 over 17h) default-scheduler 0/6 nodes are available: 1 Too many pods, 5 node(s) didn't match Pod's node affinity/selector.
В моем файле YAML модуля селекторы узлов определены, как показано ниже.
Node-Selectors: kubernetes.io/os=linux
Я пытаюсь установить понимание контейнера, выполнив шаги по ссылке ниже. https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Container-Insights-setup-metrics.html
Здесь, в этом файле, упоминаются селекторы узлов.
kubectl apply -f https://raw.githubusercontent.com/aws-samples/amazon-cloudwatch-container-insights/latest/k8s-deployment-manifest-templates/deployment-mode/daemonset/container-insights-monitoring/cwagent/cwagent-daemonset.yaml
Все мои узлы помечены kubernetes.io/os=linux
kubectl get nodes --show-labels
NAME STATUS ROLES AGE VERSION LABELS
Node1 Ready <none> 11d v1.23.9-eks-ba74326 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/instance-type=t3.small,beta.kubernetes.io/os=linux,eks.amazonaws.com/capacityType=ON_DEMAND,failure-domain.beta.kubernetes.io/region=eu-central-1,failure-domain.beta.kubernetes.io/zone=eu-central-1a,kubernetes.io/arch=amd64,kubernetes.io/os=linux,node.kubernetes.io/instance-type=t3.small,topology.kubernetes.io/region=eu-central-1,topology.kubernetes.io/zone=eu-central-1a
Node2 Ready <none> 21d v1.23.9-eks-ba74326 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/instance-type=t3.small,beta.kubernetes.io/os=linux,eks.amazonaws.com/capacityType=ON_DEMAND,failure-domain.beta.kubernetes.io/region=eu-central-1,failure-domain.beta.kubernetes.io/zone=eu-central-1a,kubernetes.io/arch=amd64,kubernetes.io/os=linux,node.kubernetes.io/instance-type=t3.small,topology.kubernetes.io/region=eu-central-1,topology.kubernetes.io/zone=eu-central-1a
Node3 Ready <none> 21d v1.23.9-eks-ba74326 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/instance-type=t3.small,beta.kubernetes.io/os=linux,eks.amazonaws.com/capacityType=ON_DEMAND,failure-domain.beta.kubernetes.io/region=eu-central-1,failure-domain.beta.kubernetes.io/zone=eu-central-1a,kubernetes.io/arch=amd64,kubernetes.io/os=linux,node.kubernetes.io/instance-type=t3.small,topology.kubernetes.io/region=eu-central-1,topology.kubernetes.io/zone=eu-central-1a
Node4 Ready <none> 5d12h v1.23.9-eks-ba74326 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/instance-type=t3.small,beta.kubernetes.io/os=linux,eks.amazonaws.com/capacityType=ON_DEMAND,failure-domain.beta.kubernetes.io/region=eu-central-1,failure-domain.beta.kubernetes.io/zone=eu-central-1b,kubernetes.io/arch=amd64,kubernetes.io/os=linux,node.kubernetes.io/instance-type=t3.small,topology.kubernetes.io/region=eu-central-1,topology.kubernetes.io/zone=eu-central-1b
Node5 Ready <none> 5d13h v1.23.9-eks-ba74326 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/instance-type=t3.small,beta.kubernetes.io/os=linux,eks.amazonaws.com/capacityType=ON_DEMAND,failure-domain.beta.kubernetes.io/region=eu-central-1,failure-domain.beta.kubernetes.io/zone=eu-central-1b,kubernetes.io/arch=amd64,kubernetes.io/os=linux,node.kubernetes.io/instance-type=t3.small,topology.kubernetes.io/region=eu-central-1,topology.kubernetes.io/zone=eu-central-1b
Node6 Ready <none> 21d v1.23.9-eks-ba74326 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/instance-type=t3.small,beta.kubernetes.io/os=linux,eks.amazonaws.com/capacityType=ON_DEMAND,failure-domain.beta.kubernetes.io/region=eu-central-1,failure-domain.beta.kubernetes.io/zone=eu-central-1b,kubernetes.io/arch=amd64,kubernetes.io/os=linux,node.kubernetes.io/instance-type=t3.small,topology.kubernetes.io/region=eu-central-1,topology.kubernetes.io/zone=eu-central-1b
Проверьте, какова максимальная емкость модуля для текущего типа экземпляра узла. В кластере каждый узел имеет максимальную мощность для узла планирования. https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#AvailableIpPerENI
Я использую t3.small. что вы предлагаете .. мне следует перейти на t3.medium или добавить еще один узел типа t3.small?
На самом деле зависит от вашего варианта использования и вашей конфигурации. Для обеспечения отказоустойчивости лучше всего использовать более одного узла в разных зонах доступности. Вместо этого, если у проекта нет требований, вы можете сэкономить свое время и просто обновить семейство экземпляров. Помните, что цена одинаковая 2xt3.small = t3.medium
Рассмотрите возможность предоставления минимального воспроизводимого примера (stackoverflow.com/help/minimal-reproducible-example), чтобы другие могли воспроизвести вашу проблему и предоставить более качественные ответы.