Kubernetes 弹性伸缩全场景解析 (四)- 让核心组件充满弹性( 二 )
很遗憾,这个问题是没有统一答案的,因为不同的类型的应用、不同的网络模型、不同的调度分布,都有可能会带来不同的挑战。在本篇文章中,我们不谈具体的指标和数据,只探讨解法。在本系列后面的文章中,会为大家深入解析。
大部分的情况下,核心组件的副本数目和集群的节点数目是成正比的,一个集群的节点数目越多,核心组件所需要的副本数就越多。今天我们以 CoreDNS 为例,通过 cluster-proportional-autoscaler,来实现一个动态的、基于节点数目的核心组件动态伸缩。
cluster-proportional-autoscaler 的使用
cluster-proportional-autoscaler 和传统的 Kubernetes 组件设计有所不同,我们已经见惯了各种 Controller、CRD 或者 Operator,而 cluster-proportional-autoscaler 走了另外一条非常简单的路。使用 cluster-proportional-autoscaler 只需要部署一个 Yaml 并选择一个伸缩的监听对象以及伸缩策略即可。如果需要有多个组件进行伸缩,那就部署多个 Yaml,每个 Yaml 包含一个 cluster-proportional-autoscaler。一个使用 cluster-proportional-autoscaler 弹性伸缩 coredns 的模板如下。
推荐阅读
- 小米科技|11月5日,小米发布伸缩式镜头技术,“多摄”时代即将终结?
- 华为mate|华为Mate50Pro概念图:屏幕能上下伸缩,这设计值得iPhone12学习
- 荣耀|华为Mate50Pro概念图:伸缩式屏幕设计,华为旗舰不会绝唱
- 摄像头|华为P50Pro概念图:完美的后置五颗摄像头,药丸屏也改伸缩镜头了
- 苹果|华为Mate40Pro概念图:伸缩式屏幕,苹果得追赶好几年
- 华为Mate40Pro|华为Mate40Pro概念图:伸缩式屏幕,你会看不起iPhone12
- 联发科|美团“8分钟弹性时间”被指早就是行业惯例
- 泄漏图显示 TCL 正在开发一款屏幕可侧滑伸缩的概念手机
- 苹果没有创新?伸缩屏iPhone工程机曝光:惊艳程度不输折叠手机
- 从零开始入门 K8s | Kubernetes 调度和资源管理