web-dev-qa-db-ja.com

HTTPまたはTCPを介してKubernetesAPIサーバーのヘルスチェックを行うことは可能ですか?

DigitalOceanでKubernetesAPIサーバー(バージョン1.7)のクラスターを負荷分散する必要がありますが、問題は、Kubernetes APIサーバーがHTTPSのみをサポートしているように見え、DigitalOceanロードバランサーが実行できるのは HTTPまたはTCPヘルスチェック

HTTPまたはTCPを介してKubernetesAPIサーバーのヘルスチェックを実行する方法はありますか?

8
aknuds1

kubectlプロキシを実行してから、postmanまたは任意のツールを使用してgetリクエストを http://127.0.0.1:8001/healthz/poststarthook/apiservice-status-available-controller に送信します。

あなたも他を使うことができます

  • /healthz
  • /healthz/autoregister-completion
  • /healthz/ping
  • /healthz/poststarthook/apiservice-registration-controller
  • /healthz/poststarthook/apiservice-status-available-controller
  • /healthz/poststarthook/bootstrap-controller
  • /healthz/poststarthook/ca-registration
  • /healthz/poststarthook/extensions/third-party-resources
  • /healthz/poststarthook/generic-apiserver-start-informers
  • /healthz/poststarthook/kube-apiserver-autoregistration
  • /healthz/poststarthook/start-apiextensions-controllers
  • /healthz/poststarthook/start-apiextensions-informers
  • /healthz/poststarthook/start-kube-aggregator-informers
  • /healthz/poststarthook/start-kube-apiserver-informers
4
Prem Dubey

/healthzのポート8080でAPIサーバーノードにアクセスし、APIサーバーが稼働していて正常な状態であれば、本体がokの200を返すことを期待できます。

詳細については、このエンドポイントに到達するいくつかのテストコードを参照してください: https://github.com/kubernetes/kubernetes/blob/fe3e7482764ace362b465405c45780d03a8c6706/staging/src/k8s.io/apiserver/pkg/server/healthz/healthz_test。 go#L28

2
vascop