3.6.4. 部署和部署配置
在复制控制器的基础上,OpenShift Container Platform 添加了对软件开发和部署生命周期的支持以及部署的概念。在最简单的情形中,部署仅创建一个新复制控制器,并允许它启动 pod。但是,OpenShift Container Platform 部署也提供从镜像的现有部署过渡到新部署的功能,还可定义要在创建复制控制器之前或之后运行的 hook。
OpenShift Container Platform DeploymentConfig
对象定义以下部署详情:
-
ReplicationController
定义的元素。 - 自动创建新部署的触发器。
- 在部署之间过渡的策略。
- 生命周期 Hook.
每次触发部署时,无论是手动还是自动,部署器 Pod 均管理部署(包括缩减旧复制控制器、扩展新复制控制器以及运行 hook)。部署 pod 在完成部署后会无限期保留,以便保留其部署日志。当部署被另一个部署替换时,以前的复制控制器会被保留,以便在需要时轻松回滚。
有关如何创建和与部署交互的详细信息,请参阅 Deployment。
以下是含有一些省略和标注的 DeploymentConfig
定义示例:
apiVersion: v1 kind: DeploymentConfig metadata: name: frontend spec: replicas: 5 selector: name: frontend template: { ... } triggers: - type: ConfigChange 1 - imageChangeParams: automatic: true containerNames: - helloworld from: kind: ImageStreamTag name: hello-openshift:latest type: ImageChange 2 strategy: type: Rolling 3