求个网站靠谱的搜索引擎优化的简称
K8s控制器Replicaset
k8s可以创建自主式pod,也可以在pod里定义重启策略。但是如果pod被删除就无法恢复了,这种情况无法满足实际需要。使用replicaset控制器来管理pod,可以实现pod的自我恢复,弹性扩缩容等。
replicaset又叫副本控制器,简称ns,主要控制pod数量维持在预设的个数,在pod数量与replicaset预设数量不同时,可以增加或者减少pod数量。
replicaset控制器三部分组成:
- 期望的pod副本数
- 标签选择器,replicaset创建的pod都带有统一的标签,方便管理
- pod模板资源,定义pod的镜像、拉取策略等
vi replicaset.yaml
apiVersion: apps/v1
kind: ReplicaSet
metadata:name: tomcatnamespace: defaultlabels:app: tomcat
spec:replicas: 3selector:matchLabels:app: tomcattemplate:metadata: labels: tier: tomcatspec:containers:- name: tomcatimage: 172.16.80.140/tomcat/tomcat:v1imagePullPolicy: IfNotPresent
该yaml会按照配置生成三个pod,标签为app=tomcat
如果手工删除一个pod,系统会根据rs配置自动生成一个新的pod
虽然replicaset可以控制副本数量,但是由于功能单一,官方不建议使用,而使用功能更加强大的deployment控制器,replicaset作为deployment中的一个功能实现。