本文讨论 K8S 1.3 的一些新功能,以及正在进行中的功能。读者应该对 kubernetes 的基本结构已经有所了解。
支持更多类型的应用
1-Init container
Init container 是 1.3 中的 alpha feature ,目的是支持一类需要在启动 Pod “普通容器”前,先进行 Pod 初始化的应用。执行该初始化任务的容器被成为“初始化容器”( init container )。例如,在启动应用之前,初始化数据库,或等待数据库启动等。下图是一个包含 init container 的 Pod :
http://i2.piimg.com/4851/9ed340179d1a38e2.png 对于此类 Pod , kubernetes 的运行策略如下:
初始化容器按顺序依次执行,即图中容器 1->2 若其中某一个初始化容器运行失败,则整个 Pod 失败 当所有初始化容器运行成功,启动普通容器,即图中容器 A 和 B 在 alpha 版本中使用 init container 需要用 annotation ,下图是来自 k8s 的一个例子(略有裁剪):
1
harryge 2016-08-02 19:35:33 +08:00
|