3.6. Deployments


3.6.1. 复制控制器

复制控制器确保任何时候都运行指定数量的 pod 副本。如果 pod 退出或被删除,复制控制器会做出反应,实例化更多 pod 来达到定义的数量。同样,如果运行中的数量超过所需的数目,它会根据需要删除相应数量的 Pod,使其与定义的数量相符。

复制控制器配置包括:

  1. 所需的副本数(可在运行时调整)。
  2. 创建复制容器集时要使用的容器集定义。
  3. 用于标识受管 pod 的选择器。

选择器是分配给由复制控制器管理的 pod 的一组标签。这些标签包含在复制控制器实例化的容器集定义中。复制控制器使用选择器来决定已在运行的 pod 实例数量,以便根据需要进行调整。

复制控制器不会基于负载或流量执行自动扩展,因为复制控制器不会跟踪它们。相反,这需要外部自动缩放器调整其副本数。

复制控制器是名为 ReplicationController 的核心 Kubernetes 对象。

以下是 ReplicationController 定义示例:

apiVersion: v1
kind: ReplicationController
metadata:
  name: frontend-1
spec:
  replicas: 1  1
  selector:    2
    name: frontend
  template:    3
    metadata:
      labels:  4
        name: frontend 5
    spec:
      containers:
      - image: openshift/hello-openshift
        name: helloworld
        ports:
        - containerPort: 8080
          protocol: TCP
      restartPolicy: Always
1
要运行的 pod 的副本数。
2
要运行的 pod 的标签选择器。
3
控制器创建的 pod 模板。
4
pod 上的标签应该包括标签选择器中的标签。
5
扩展任何参数后的最大名称长度为 63 个字符。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.