Kubernetes 副本集
副本集确保有多少个 Pod 副本正在运行。可以将其视为复制控制器的替代品。副本集与复制控制器的主要区别在于,复制控制器仅支持基于相等的选择器,而副本集支持基于集合的选择器。
apiVersion: extensions/v1beta1 --------------------->1
kind: ReplicaSet --------------------------> 2
metadata:
name: Tomcat-ReplicaSet
spec:
replicas: 3
selector:
matchLables:
tier: Backend ------------------> 3
matchExpression:
{ key: tier, operation: In, values: [Backend]} --------------> 4
template:
metadata:
lables:
app: Tomcat-ReplicaSet
tier: Backend
labels:
app: App
component: neo4j
spec:
containers:
- name: Tomcat
image: tomcat: 8.0
ports:
- containerPort: 7474
设置详细信息
- apiVersion: extensions/v1beta1 → 在上述代码中,API版本是Kubernetes的高级beta版本,支持副本集的概念。
-
kind: ReplicaSet → 我们将kind定义为副本集,以便kubectl能够理解该文件用于创建副本集。
-
tier: Backend → 我们将标签tier定义为backend,以创建一个匹配选择器。
-
{key: tier, operation: In, values: [Backend]} → 这将帮助 matchExpression 理解我们定义的匹配条件和操作,该操作由 matchlabel 使用以查找详细信息。
使用 kubectl 运行上述文件,并使用提供的 yaml 文件创建后端副本集。