9.5.2. Kubernetes Deployments 和部署配置
由于在 Kubernetes 1.2 中添加了部署之前,OpenShift Container Platform 中存在部署配置,因此后者的对象类型与之前稍有的稍有不同。OpenShift Container Platform 中的长期目标是访问 Kubernetes 部署中的完整功能奇偶校验,并通过应用程序将其切换到使用单一的对象类型来提供精细管理。
支持 Kubernetes 部署,以确保使用新对象类型的上游项目和示例可以在 OpenShift Container Platform 上平稳运行。根据当前的 Kubernetes 部署功能集,如果不计划使用以下任一操作,则在 OpenShift Container Platform 中使用它们而不是部署配置:
以下部分详细阐述两种对象类型之间的区别,以进一步协助您决定何时想通过部署配置使用 Kubernetes 部署。
9.5.2.1. 部署配置特定功能 复制链接链接已复制到粘贴板!
9.5.2.1.1. 自动回滚 复制链接链接已复制到粘贴板!
Kubernetes 部署不支持在出现故障时自动回滚到上次成功部署的副本集。此功能会很快被添加。
9.5.2.1.2. 触发器 复制链接链接已复制到粘贴板!
Kubernetes 部署有一个隐式 ConfigChange
触发器,每次更改部署的 Pod 模板都会自动触发新的推出部署。如果您不想在 Pod 模板更改时进行新的推出部署,请暂停部署:
oc rollout pause deployments/<name>
$ oc rollout pause deployments/<name>
目前,Kubernetes 部署不支持 ImageChange
触发器。上游建议了一个通用触发机制,但如果它被接受,则代表未知。最终,OpenShift Container Platform 的特定机制可以实施为 Kubernetes 部署之上的层,但最好作为 Kubernetes 内核的一部分存在。
9.5.2.1.3. 生命周期 Hook 复制链接链接已复制到粘贴板!
Kubernetes 部署不支持任何生命周期 hook。
9.5.2.1.4. 自定义策略 复制链接链接已复制到粘贴板!
Kubernetes 部署尚不支持用户指定的自定义部署策略。
9.5.2.1.5. Canary 部署 复制链接链接已复制到粘贴板!
Kubernetes 部署还没有作为新推出部署的一部分运行。
9.5.2.1.6. 测试部署 复制链接链接已复制到粘贴板!
Kubernetes 部署不支持运行测试跟踪。