在Amazon Elastic Kubernetes服务(EKS
)上,每个节点的pod的最大数量取决于节点类型,范围从4到737。
如果达到最大限制,则会看到类似以下内容的
:
❯ kubectl get node -o yaml | grep pods
pods: "17" => this is allocatable pods that can be allocated in node
pods: "17" => this is how many running pods you have created
如果仅获得一个号码,则该号码应该是可分配的。计算所有正在运行的Pod的另一种方法是运行以下命令:
kubectl get pods --all-namespaces | grep Running | wc -l
以下是每种节点类型的最大Pod列表:
https://github.com/awslabs/amazon-eks-ami/blob/master/files/eni-max-pods.txt
在Google Kubernetes Engine(GKE
)上,每个节点的限制为110个pod。检查以下网址:
https://github.com/kubernetes/community/blob/master/sig-scalability/configs-and-limits/thresholds.md
在Azure Kubernetes服务(AKS
)上,默认限制是每个节点30个容器,但可以增加到250个。每个节点的默认容器最大数量在kubenet和Azure CNI网络之间有所不同,集群部署方法。检查以下URL以获取更多信息:
https://docs.microsoft.com/en-us/azure/aks/configure-azure-cni#maximum-pods-per-node
,
问题是您正在使用t2.micro
。至少需要t2.small
。调度程序无法在节点上调度Pod,因为t2.micro
实例上没有足够的可用容量。大部分容量已被系统资源占用。至少使用t2.small
。
,
未能成功安排广告连播。
问题可能与节点配置有关。
共享以下命令的输出以找出根本原因
1. kubectl describe node <node-name>
2. kubectl describe pod <pod-name>
3. kubectl get ev
对于每个节点可以运行的Pod有一个限制(不考虑资源),您正在达到该限制。您可以在kubectl get node -o yaml
的输出中找到该限制。
从节点输出中可以很明显地看出,您已经达到了每个节点的Pod限制。检查分配的容器与容器的容量。两者都显示计数为4。
解决方案:您需要在集群中再添加一个节点,才能部署更多的工作负载
,
更新:我尝试将节点数增加到6,并且现在可以正常工作。
已经安排了4个kube系统吊舱,因此请尝试将其增加到6个。
我不擅长Kubes,这只是反复试验的结果。
如果有经验的人可以对它的工作原理有所了解,它将非常有用。
本文链接:https://www.f2er.com/3053220.html