Kubernetes 笔记 11 Pod 扩容与缩容 双十一前后的忙碌
本文首发于我的公众号 Linux云计算网络(id: cloud_dev),专注于干货分享,号内有 10T 书籍和视频资源,后台回复「1024」即可领取,欢迎大家关注,二维码文末可以扫。
Hi,大家好,欢迎大家和我一起学 K8S,这是系列第 11 篇。
资源的伸缩在云计算环境中是至关重要的,云计算的动机就是企图提高资源的利用率,在用户请求高峰期的时候能够对资源进行横向扩容,反之,当用户请求回落低谷的时候,能够及时缩减资源,避免资源的浪费。
这就像双十一的时候,随着用户不断地涌入,阿里后台需要不断调配更多的资源来支撑用户大量的请求,当过了双十一当天,再慢慢缩减资源的使用。
Kubernetes 作为一个集群管理系统,提供了两种资源伸缩的方式:手动和自动。本文先来看手动方式。
Kubernetes 的资源伸缩本质上指的是 Pod 的扩容和缩容(scale up/down),也就是增加或减少 Pod 的副本数。
手动的方式是使用 kubectl scale
命令手动进行,或者基于 YAML 配置来实现。
首先,定义一个 nginx-deployment.yaml
配置文件:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: nginx-deployment
spec:
replicas: 3
template:
metadata:
labels:
app: web_server
spec:
containers:
- name: nginx
image: nginx:1.12.1
其中定义了 3 个副本,执行 kubectl create -f nginx-deployment.yaml
创建 Pod。
如果现在遇到高峰请求,我们急需进行扩容,执行
kubectl scale deployment nginx-deployment --replicas 5
将 Pod 扩增到 5 个。
其中,用 --replicas
来指示增缩的数量,对于缩容,将 --replicas
设置为比当前 Pod 副本数量更小的数字即可,比如缩容到 2 个如下:
可以看到,Pod 销毁会经历一个 Terminating
的过程,最终 3 个副本被删除,只保留了 2 个副本。
以上是通过命令的形式来实现手动的扩容和缩容,我们也可以修改 YAML 配置文件中的 replicas
来实现,只要修改完之后执行 kubectl apply
即可。
OK,本文到此为止,下文我们再来 Pod 伸缩的另一种方式——自动扩容和缩容。
我的公众号 「Linux云计算网络」(id: cloud_dev) ,号内有 10T 书籍和视频资源,后台回复 「1024」 即可领取,分享的内容包括但不限于 Linux、网络、云计算虚拟化、容器Docker、OpenStack、Kubernetes、工具、SDN、OVS、DPDK、Go、Python、C/C++编程技术等内容,欢迎大家关注。
作者:公众号「Linux云计算网络」,专注于Linux、云计算、网络领域技术干货分享
出处:https://www.cnblogs.com/bakari/p/10613654.html
本站使用「署名 4.0 国际」创作共享协议,转载请在文章明显位置注明作者及出处。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)