Kubernetes部署

时间:2016-01-13 17:51:20

标签: kubernetes openshift-origin

在创建使用Kubernetes进行微服务部署的平台的同时,我们希望对Kubernetes部署对象采取依赖关系。但是,我们看到文档http://kubernetes.io/v1.1/docs/user-guide/deployments.html表示以下内容“请注意,部署对象实际上具有API版本v1alpha1。在未来的软件版本中,Alpha对象可能会更改甚至中断” 我想知道我们是否应该使用部署概念来进行部署,基本上是滚动更新,或者因为它可以停止或更改,我们应该自己重新实现相同的概念,创建带有新标签的rc,创建新的pod不同的标签,然后旧的rc和新的rc,通过从旧的rc缓慢移除pod并慢慢地将新的pod添加到新的rc中缩小旧的rc。 部署的计划或建议的更改是什么,或者概念是否会为更好的概念而消失? 另外我想知道为什么OpenShift没有使用Deployment对象,那时候还没有准备好吗?

3 个答案:

答案 0 :(得分:2)

OpenShifts部署对象位于上游Kube对象之前(在2015年3月的时间范围内功能完成)。一旦Kube Deployments支持OpenShift部署中的其余功能,我们就会自动迁移它们。 OpenShift部署支持的一些东西尚未上游

  • Docker注册表标记更改时的自动部署
  • 自定义部署(在窗格中运行您自己的部署逻辑)
  • 部署挂钩 - 执行"捆绑exec rake db:migrate"在部署应用之前或之后
  • 重新制作部署策略
  • 能够暂停或'#34;持有"部署因此不会自动运行(因此管理员可以选择部署)。
  • 部署到"失败的能力"并被记录(以便最终用户知道他们推送的代码无法启动)。

添加剩余选项需要时间。

答案 1 :(得分:2)

截至目前,部署概念已移至“v1beta1”。这个概念很可能会继续下去,因为它是一种声明性的方法(与使用旧的复制控制器等的命令式方法相比)。

无法告诉OpenShift,但在GKE上它对我很有用!

答案 2 :(得分:0)

部署计划在1.2版本中升级到测试阶段。有关要进行的更改,请参阅相关的issue #15313。我们还将使用新的kubectl命令进行滚动更新,该命令使用部署,请参阅issue #17168proposal