7

我正在使用容器探测器来检查在 kubernetes pod 内容器内运行的应用程序的运行状况。现在我的示例 pod 配置看起来像,

"spec":{
   "containers":[
      {
        "image":"tomcat",
        "name":"tomcat",
        "livenessProbe":{
           "httpGet":{
              "port": 80
            },
            "initialDelaySeconds": 15,
            "periodSeconds": 10
        }
      }
   ]
}

就我而言,我需要监视同一个容器的两个端口。80443。但是我找不到在配置文件中为同一个容器提供两个端口的方法。有没有其他方法可以做到这一点?

4

3 回答 3

2

不可以,试试把健康检查封装在你的应用里面

例如: http://localhost:80/health_check?full =>(代理到)=> http://localhost:443/health_check?full

可以帮助你https://github.com/kubernetes/kubernetes/issues/37218

于 2017-04-11T07:49:07.230 回答
2

如果你在容器上有 curl / wget,你可以只运行一个容器 exec 健康检查,然后执行类似curl localhost:80 && curl localhost:443.

于 2018-08-16T08:22:48.110 回答
1

这将是一个非常有用的功能,但缺少。正如其他人之前提到的,您可以使用脚本进行健康检查而不是 httpget 并检查该脚本中的两个 url。
另一种选择是创建一个 sidecar 健康容器来监控主容器的两个 url 并采取行动。

于 2018-09-19T18:26:47.373 回答