【Kubernetes】自动创建 Pod 集群
环境
- kubernetes 1.20.2
- Spring Boot 2.5.0-M1
目标
之前介绍了手动创建多副本的集群,现在将这个过程进行自动化,需要引入 k8s 中的另一个资源对象。
即副本控制器-replicationcontroller,简写 rc,Pod 的简写是 po。
创建 rc
rc.yaml
apiVersion: v1
kind: ReplicationController
metadata:
name: rc-demo
spec:
replicas: 3
selector:
app: myapp
template:
metadata:
labels:
app: myapp
spec:
containers:
- name: pod-demo
image: jiangbo920827/spring-demo:actuator
ports:
- containerPort: 8080
template 字段下面的字段,应该很熟悉,就是我们之前学习的 Pod 的相关字段。
前面的三个字段是 k8s 资源的标准声明,和 Pod 一致。
就只有 spec 中的 replicas 和 selector 需要进行说明。
replicas
副本数,相当于服务的个数,相当于之前集群中的机器的数量,这里设定的三个。
selector
标签选择器,其中的冒号相当于之前学习的标签选择器里的相等。
查看状态
查看 Pod
[root@master kubernetes]# kubectl get po
NAME READY STATUS RESTARTS AGE
rc-demo-9hjh6 1/1 Running 0 30s
rc-demo-ddg8d 1/1 Running 0 30s
rc-demo-qxsf4 1/1 Running 0 30s
可以看到根据定义的文档,已准确生成了三个副本。
副本的名称是 rc 的名称加上随机字母和数字。
查看 rc
[root@master kubernetes]# kubectl get rc
NAME DESIRED CURRENT READY AGE
rc-demo 3 3 3 44s
可以看到 rc 记录了我们定义的副本数量,并且启动 Pod 来达到我们定义的数量。
查看 rc 详情
[root@master kubernetes]# kubectl describe -f rc.yaml
Name: rc-demo
Namespace: default
Selector: app=myapp
Labels: app=myapp
Annotations: <none>
Replicas: 3 current / 3 desired
Pods Status: 3 Running / 0 Waiting / 0 Succeeded / 0 Failed
Pod Template:
Labels: app=myapp
Containers:
pod-demo:
Image: jiangbo920827/spring-demo:actuator
Port: 8080/TCP
Host Port: 0/TCP
Environment: <none>
Mounts: <none>
Volumes: <none>
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal SuccessfulCreate 13m replication-controller Created pod: rc-demo-qxsf4
Normal SuccessfulCreate 13m replication-controller Created pod: rc-demo-ddg8d
Normal SuccessfulCreate 13m replication-controller Created pod: rc-demo-9hjh6
总结
介绍了自动创建 Pod 集群,使用的是 k8s 的 rc,即副本控制器。正如其名,可以准确控制生成的副本数量。
附录
分类:
Kubernetes
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!