在尝试了各种提供程序(bare kubernetes、openshift、aws eks)后,我们发现即使节点有足够的资源(cpu、ram、hdd),在达到~110个POD后,新的POD仍处于挂起状态,除了事件之外没有任何事件或错误
"Successfully assigned {namespace}/{pod_name} to {node_name}"
我们已经尝试在kubelet、scheduler等中搜索任何相关的日志--但除了前面提到的这个事件之外什么也没有。
是否有人成功地运行了每个节点超过110个豆荚?我们做错了什么?
另外,唯一值得一提的是,在我们的示例中,它不是同一个pod的110个副本,而是来自不同部署/守护进程集的110个不同的pod。当然,我们已经调整了节点pod_limit>110。
虽然当前的扩展目标是500个pods/node(请参见https://github.com/kubernetes/community/blob/master/sig-scalability/goals.md),但这取决于您所讨论的节点总数,您可能处于默认调度器设置不再有用的领域。不幸的是,调度器调优是一门黑暗的艺术,我建议在sig-scaling Slack通道中寻求帮助。
我已经在节点(node1)上的pod(pod1)上部署了一个Spring Boot应用程序。我还在不同节点(node2)上的另一个pod(pod2)上部署了JMeter。我试图从POD2执行自动负载测试。为了执行负载测试,我要求为每个测试用例重新启动pod1。如何从POD2重新启动pod1?
我们正在使用Docker 1.19运行库伯内特斯(1.18) Container是一个基于Java13的Spring启动应用程序(使用基本图像作为openjdk: 13-alpin),下面是内存设置。 豆荚: 内存-最小448M,最大2500M cpu-最小值0.1 容器: Xms:256M,Xmx:512M 当流量发送更长时间时,容器会突然重新启动;在Prometheus中,我可以看到Pod内存
我已经设置了普罗米修斯,通过跟踪普罗米修斯留档来监控库本内斯的指标。 普罗米修斯现在有很多有用的指标。 但是,我看不到任何引用我的pod或节点状态的指标。 理想情况下-我希望能够绘制pod状态(运行,挂起,CrashLoopBackoff,错误)和节点(NodeNow,就绪)。 这个度量单位在哪里?如果没有,我可以添加到某个地方吗?怎么做?
谁能知道我们在库伯内特斯怎样才能做到这一点呢? 谢谢
如何强制调度器以循环方式在节点上运行pod,以便如果任何节点宕机,那么至少有一个节点将NGINX pod处于运行模式。 这到底有没有可能?如果可能,我们如何实现这一场景?
根据Kubernetes文档,部署和副本集之间有1:1的对应关系。类似地,根据replicas属性,一个ReplicaSet可以管理n个相同性质的豆荚。这是正确的认识吗? 从逻辑上讲(假设部署是一个包装器/控制器),我认为部署可以有多个副本集,每个副本集可以有多个豆荚(相同或不同种类)。如果这个说法是正确的,有人可以分享一个例子K8S模板吗?