背景

为了保证正常运行的pod的数量满足我们的要求,k8s中退出了replication controller的概念,这个组件的主要作用就是保证有指定数量的pod运行在集群中

replication controller组件

1.我们先看一下replication controller组件的配置文件定义

kind:RellicationController  --replication controller类型
spec:
	replicas:3  			--pod的副本数量为3
	selector:
		name: tomcat		--replication controller组件选择的那些标识的pod

上面这个配置文件的意思是要保证集群中运行的tomcat这个pod的数量是3个,如果中途有某个tomcat的pod挂了,k8s需要在其他的node上启动新的tomcat的pod,保证replication controller组件要求的3个副本的要求
2.replication controller组件可以保证要求的pod的数量的前提是要知道pod的状态到底是成功和失败,而pod的成功和失败的定义其实是不要确定的,因为pod中会运行好多docker容器,不过目前k8s容器把pod中任意一个容器的失败都对应到整个pod的失败上了,所以实际上其实不排除被定义为失败的pod上有些docker 容器其实还正常运行,这种情况下,其实k8s还会给被判断为失败的pod发送强杀的信号,真正把被标识为失败的pod中的所有容器都停止.

replication controller组件非常好理解,其目的就是保证集群中有指定数量的pod在运行

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐