使用Kubernetes'挂钩

时间:2015-01-26 14:22:13

标签: kubernetes

我想试试Kubernetes'钩子,但我没有找到任何一个例子我应该怎么做。据我所知,通过这个钩子,我可以在新创建的容器中运行bash脚本,然后再终止它们。

我发现只有一小段documentation,说这是可能的,但这就是全部。

有人有一个例子或有用的信息吗?

提前致谢。

2 个答案:

答案 0 :(得分:14)

我没有看到任何示例.yaml文件,但是Kubernetes API v1以相同的方式描述了生命周期事件。目前,只定义了PostStart和PreStop,您应该可以通过向pod定义中的容器添加生命周期部分来使用它们。

基于阅读API定义,这样的事情应该有用(免责声明:我自己没有亲自尝试过):

containers:
  - name: lifecycle
    image: busybox
    lifecycle:
      postStart:
        exec:
          command:
            - "touch"
            - "/var/log/lifecycle/post-start"
      preStop:
        httpGet:
          path: "/abort"
          port: 8080

答案 1 :(得分:0)

通过上面的回答,我可以尝试postStart钩子,我发现了一个在去年年底解决但未在Fedora的测试库中发布的bug,只是在rawhide repo中。

回购应在接下来的几天内更新。

进一步详情: https://github.com/kubernetes/kubernetes/issues/3930