如何为容器设置正确的cpu millicores?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何为容器设置正确的cpu millicores?相关的知识,希望对你有一定的参考价值。
我希望在不分配过多或不足的情况下优化配置CPU内核。如何测量给定容器所需的CPU毫秒数?它还会带来代理将基于CPU消耗将其发送到任何给定pod的流量的问题,以便我们可以最佳地使用计算。
目前我发送请求和监控,
kubectl top pod
是否有任何工具可以随时测量,请求,CPU和内存,并建议最佳的CPU建议。
监测随着时间的推移和每个Pod是的,有https://kubernetes.io/docs/tasks/debug-application-cluster/resource-usage-monitoring/的建议其中一个比较受欢迎的是普罗米修斯 - 格拉法纳组合 - https://grafana.com/dashboards/315
至于请求和限制的自动建议,我认为没有任何东西。请记住,Kubernetes已经尝试平衡给每个Pod提供它所需要的东西而不需要花费太多。您设置的限制和请求是为了帮助它更安全地执行此操作。自动推理存在限制,因为资源不足的Pod仍然可以工作但响应速度稍慢 - 由您决定您可以容忍的缓慢程度。您还需要决定在峰值负载中可接受的资源消耗水平,而不是可能表明应用程序中存在错误甚至是攻击的过度消耗。还有一个进一步的限制,因为度量单位本身是一种尝试近似资源功率的尝试,实际上可以随硬件类型而变化(内存和CPU可能在操作模式和数量上有所不同),因此可以在集群甚至节点之间变化。群集,如果硬件不完全相同。
你在top上做的事情在我看来是一个很好的入门方式。无论如何,您都希望监视群集的资源使用情况,以便随时跟踪并调整限制是一个好主意。如果您可以在kubernetes之外运行相同的应用程序并阅读以查看使用相同语言的其他应用程序,那么可以帮助指示您是否可以采取任何措施来提高利用率(例如,容器中的JVM上的内存消耗是着名的要求一些调整,以获得正确的)。
以上是关于如何为容器设置正确的cpu millicores?的主要内容,如果未能解决你的问题,请参考以下文章