当前位置: 首页 > news >正文

北京网站设计制作上海谷歌seo

北京网站设计制作,上海谷歌seo,百度站长工具网站认证,网站建设的含盖哪方面公众号关注 「奇妙的 Linux 世界」设为「星标」,每天带你玩转 Linux !背景容器平台的三个价值:稳定性、效率、成本,都离不开容量管理。容量管理是 Kubernetes 集群管理中非常重要的一部分。它可以确保系统中的资源得到合理的分配和…

公众号关注 「奇妙的 Linux 世界」

设为「星标」,每天带你玩转 Linux !

036183da3b23fbc370153e89dee84bd3.png

背景

容器平台的三个价值:稳定性、效率、成本,都离不开容量管理。容量管理是 Kubernetes 集群管理中非常重要的一部分。它可以确保系统中的资源得到合理的分配和使用,避免了因资源不足或浪费导致的系统运行异常或效率低下的问题。通过容量管理,可以更好地控制和优化系统资源的利用,保证 Kubernetes 集群的稳定性和可靠性。容量管理还可以帮助管理员对系统进行更好的规划和预测,避免因资源不足而需要紧急扩容的情况出现,从而提高了系统的可维护性和可靠性。

面临的问题

K8s 集群管理员或多或少会被如下问题所困扰:

  • 不清楚当前集群资源使用或者剩余容量处于什么水位;

  • 不清楚当前集群资源浪费情况如何;

  • 不清楚当前集群资源碎片程度如何;

  • 不清楚如何设置调度策略配置值以提升资源利用效率;

资源是一个典型的可量化的指标,上述问题均可以做到可量化,我们缺少的只是一个好用的工具。

项目介绍

kluster-capacity 旨在通过模拟线上真实调度器的能力来解决上述问题,目前已经支持三个能力:容量评估,调度模拟,集群压缩。

项目地址:https://github.com/k-cloud-labs/kluster-capacity

容量评估

介绍

随着集群中节点上新的 Pod 被调度,消耗的资源越来越多。监控集群中可用的资源非常重要,因为运维人员可以及时增加当前的资源,以免所有资源都耗尽。或者,采取不同的步骤来增加可用资源。

集群容量包括单个集群节点的容量。容量涵盖了 CPU、内存、磁盘空间和其他资源。

整体剩余可分配容量是一个估计值。目标是分析剩余可分配的资源并估计可用容量,即可以在集群中安排给定资源需求的 Pod 实例数量。

增强

以下是对原集群容量的一些增强功能:

  • 支持直接从集群中使用现有的 Pod 作为 Pod 模板。

  • 支持针对不同的 Pod 模板进行批量模拟。

运行

# 直接使用指定的 pod 模板
$ ./kluster-capacity ce --kubeconfig <path to kubeconfig> --schedulerconfig= <path to schedulerconfig> --pods-from-template <path to pod templates> 
# 使用集群中指定的 pod 作为模板
$ ./kluster-capacity ce --kubeconfig <path to kubeconfig> --schedulerconfig= <path to schedulerconfig> --pods-from-cluster <namespace/name key of the pod>

更多运行参数及功能,请执行如下命令:

$ ./kluster-capacity ce --help

演示

假设集群运行有 4 个节点和 1 个主节点,每个节点有 2 个 CPU 和 4GB 内存。而每个 Pod 所需的资源为 150m CPU 和 100Mi 内存。

$ ./kluster-capacity ce --kubeconfig <path to kubeconfig> --schedulerconfig= <path to schedulerconfig> --pods-from-template <path to pod templates> --verbose
Pod requirements:- cpu: 150m- memory: 100MiThe cluster can schedule 52 instance(s) of the pod.
Termination reason: FailedScheduling: pod (small-pod-52) failed to fit in any node
fit failure on node (kube-node-1): Insufficient cpu
fit failure on node (kube-node-4): Insufficient cpu
fit failure on node (kube-node-2): Insufficient cpu
fit failure on node (kube-node-3): Insufficient cpuPod distribution among nodes:- kube-node-1: 13 instance(s)- kube-node-4: 13 instance(s)- kube-node-2: 13 instance(s)- kube-node-3: 13 instance(s)

随着集群中运行的 pod 数量增加,再次运行分析时,可调度的 pod 数量也会减少。

$ ./kluster-capacity ce --kubeconfig <path to kubeconfig> --schedulerconfig= <path to schedulerconfig> --pods-from-template <path to pod templates> --verbose
Pod requirements:- cpu: 150m- memory: 100MiThe cluster can schedule 46 instance(s) of the pod.
Termination reason: FailedScheduling: pod (small-pod-46) failed to fit in any node
fit failure on node (kube-node-1): Insufficient cpu
fit failure on node (kube-node-4): Insufficient cpu
fit failure on node (kube-node-2): Insufficient cpu
fit failure on node (kube-node-3): Insufficient cpuPod distribution among nodes:- kube-node-1: 11 instance(s)- kube-node-4: 12 instance(s)- kube-node-2: 11 instance(s)- kube-node-3: 12 instance(s)

输出格式

ce 命令有一个 --output (-o) 标志,可以将其输出格式化为 json 或 yaml。

$ ./kluster-capacity ce --kubeconfig <path to kubeconfig> --schedulerconfig= <path to schedulerconfig> --pods-from-template <path to pod templates> -o json|yaml

调度模拟

介绍

调度器模拟以当前集群中的所有 node、pod 等相关资源为输入,模拟从没有 pod 到创建并调度所有 pod 的过程。这可以用来计算集群压缩率比,以评估调度效果或衡量调度算法的质量。

与集群压缩相比,其结果更加激进和理想化。

运行

./kluster-capacity ss --kubeconfig <path to kubeconfig> --schedulerconfig= <path to schedulerconfig>

更多运行参数及功能,请执行如下命令:

$ ./kluster-capacity ss --help

它支持两种终止条件:AllSucceedAllScheduled。前者是指所有pod调度成功后程序结束,后者是指所有 pod 至少被调度一次后程序退出。默认值为 AllSucceed。可以使用 --exit-condition 标志设置退出条件。

演示

假设集群运行有 4 个节点和 1 个主节点,每个节点有 2 个 CPU 和 4GB 内存。有 40 个资源需求是 100m CPU 和 200Mi 内存的 Pod 需要被调度。

如果调度器使用 LeastAllocated 策略,调度结果可能如下所示:

$ ./kluster-capacity ss --kubeconfig <path to kubeconfig> --schedulerconfig= <path to schedulerconfig>
Termination reason: AllSucceed: 40 pod(s) have been scheduled successfully.Pod distribution among nodes:- kube-node-1: 10 instance(s)- kube-node-2: 10 instance(s)- kube-node-3: 10 instance(s)- kube-node-4: 10 instance(s)

如果调整调度器使用 MostAllocated 策略,调度结果可能如下所示:

$ ./kluster-capacity ss --kubeconfig <path to kubeconfig> --schedulerconfig= <path to schedulerconfig>
Termination reason: AllSucceed: 40 pod(s) have been scheduled successfully.Pod distribution among nodes:- kube-node-1: 20 instance(s)- kube-node-2: 20 instance(s)

可以分析上面的调度结果来评估调度策略的有效性和集群容量压缩比。例如,上面的结果表示集群压缩比为2,这意味着在理想情况下有50%的资源浪费。

集群压缩

介绍

集群压缩以集群的当前状态,包括所有 node、pod 和其他相关资源作为输入,模拟通过移除节点来压缩集群的过程。它可用于计算集群的压缩比,这是衡量资源利用效率的指标。

与模拟调度相比,集群压缩的结果通常更显示,可操作性更强。

运行

./kluster-capacity cc --kubeconfig <path to kubeconfig> --schedulerconfig= <path to schedulerconfig> --verbose

更多运行参数及功能,请执行如下命令:

$ ./kluster-capacity cc --help

演示

假设集群运行有 4 个节点和 1 个主节点,每个节点有 2 个 CPU 和 4GB 内存。运行有 40 个资源需求是 100m CPU 和 200Mi 内存的 Pod。

./kluster-capacity cc --kubeconfig <path to kubeconfig> --schedulerconfig= <path to schedulerconfig> --verbose
2 node(s) in the cluster can be scaled down.Termination reason: FailedSelectNode: could not find a node that satisfies the condition, 1 master node(s); 2 node(s) can't be scale down because of insufficient resource in other nodes;nodes selected to be scaled down:- kube-node-1- kube-node-3

上面的结果表明,给定 40 个 pod 的资源需求,在保证所有 pod 都能被调度的情况下,集群可以去掉 2 个节点,压缩比为 2,也就是有 50% 的资源浪费。

演进

当前已经支持上述三种能力,后续会继续完善其他容量、资源管理相关能力,如

  • 基于 snapshot 的模拟

  • 资源碎片分析

帮助我们基于集群历史某一时刻的状态来进行相关模拟操作,以及分析资源碎片情况等,欢迎体验并提出您的宝贵意见,谢谢!

本文转载自:「kaku's blog」,原文:https://url.hi-linux.com/L3PJ0 ,版权归原作者所有。欢迎投稿,投稿邮箱: editor@hi-linux.com。

c0edff215981901aad691c2d85e545c3.gif

最近,我们建立了一个技术交流微信群。目前群里已加入了不少行业内的大神,有兴趣的同学可以加入和我们一起交流技术,在 「奇妙的 Linux 世界」 公众号直接回复 「加群」 邀请你入群。

cd42d7d524e7e01f6e4d3990ab9de111.png

你可能还喜欢

点击下方图片即可阅读

f2a1f0ef1b81cdf582b11840e6b0f6f6.png

15 个 Kubernetes 最佳实践

588bae6c0575cc49fad7ebd0905fc2a1.png
点击上方图片,『美团|饿了么』外卖红包天天免费领

b9cfe439601ee9cbd89d846aefbbf78a.png

更多有趣的互联网新鲜事,关注「奇妙的互联网」视频号全了解!

http://www.lbrq.cn/news/2627749.html

相关文章:

  • 商务网站的推广方法有哪些百度新闻官网
  • 免费个人网站建站免费搜索引擎入口
  • wordpress写网站教程优化设计全部答案
  • 美团是最早做团购的网站么网络宣传策划方案
  • 做单页网站怎么选产品seo推广主要做什么的
  • 电脑上怎么运行wordpressseo培训教程
  • 电子商务网站建设属性线下引流推广方法
  • 郑州专业建站报价fifa最新排名出炉
  • 做网站寄生虫网站优化塔山双喜
  • 设计一个校园网方案seo报价单
  • 河南定制网站建设报价石家庄百度搜索引擎优化
  • o2o电商网站建设百度推广怎么收费
  • 网站建设 上海大数据营销案例
  • 中国人事建设部网站上海百度seo
  • 东莞建设教育网站前端培训
  • 论坛网站方案微信小程序排名关键词优化
  • 做网站工作都包括什么seo最强
  • 工厂怎么做网站互联网销售是什么意思
  • 网站建设 正邦上海seo优化
  • qq空间怎么跟网站做链接吗龙华网站建设
  • 做动态图片的网站北京seo相关
  • 移动网站建设流程沧州网站优化
  • 做网站用的到minitab么色目人
  • 中山做网站的seo关键词优化怎么做
  • 物业管理系统功能结构图seo专员工资一般多少
  • 武汉网站设计方案南京网站设计优化公司
  • 初中做历史的网站小说关键词生成器
  • 外贸渠道有哪些网站seo技术能不能赚钱
  • 怎么做网站表白seo顾问推推蛙
  • 黄页网页的推广网站下载四平网络推广
  • 微信小程序与后台管理系统开发全流程指南
  • oracle 11G安装大概率遇到问题
  • c++之 栈浅析
  • Docker可用镜像(长期免费)
  • Linux下动态库链接的详细过程
  • 服务器——“查询不到显卡驱动,且输入nvidia-smi报错”的解决办法