Kubernetes liveness probes with query string parameters

后端 未结 3 963
北海茫月
北海茫月 2021-01-13 05:15

I\'ve looked over the documentation and browsed the source, but I can\'t seem to figure out how to do this. Is there any way to send query string parameters along with the p

相关标签:
3条回答
  • 2021-01-13 05:56

    Which version are you running? The escaping is a bug that was supposed to be fixed in 1.3:

    https://github.com/kubernetes/kubernetes/pull/25064

    Not perfect, but it doesn't require additional API fields in the YAML.

    0 讨论(0)
  • 2021-01-13 06:00

    EDIT: This should now be fixed in Kubernetes 1.3. Thanks to Rudi C for pointing that out.

    Liveness probes in Kubernetes v1.2 don't support passing query parameters.

    This Issue in the Deis Controller repo has a good explanation. The gist is that the LivenessProbe.HttpGet.Path is treated as a true URL path (which needs the "?" to be escaped as "%3f").

    I've opened a feature request Issue against Kubernetes to discuss adding query parameter(s).

    As a workaround, you could use an exec livenessProbe that included the query parameters (as long as your container includes something like wget or curl):

    livenessProbe:
      exec:
        command:
        - wget
        - /api/v1?q=...
    
    0 讨论(0)
  • 2021-01-13 06:05

    If you have some kind of token authorization (via get parameter) and you have health check on root (service-name/), you should omit the slash, for example:

    readinessProbe:
      httpGet:
        path: ?token=${TOKEN}
        port: 80
        scheme: HTTP
    

    I had to look through PR changes to find the way to specify it

    0 讨论(0)
提交回复
热议问题