1.3. ヘルスチェックを使用する


Red Hat build of Keycloak のコンテナーイメージから curl やその他のパッケージを削除するセキュリティー対策が講じられたため、コンテナー内から HTTPS エンドポイントに対するチェックを実行することはできません。

コンテナー内で Red Hat build of Keycloak を使用していない、またはコンテナー外でヘルスチェックを実行している場合は、任意のツールを使用して、ヘルスチェックエンドポイントにアクセスします。

1.3.1. curl

シンプルな HTTP HEAD 要求を使用して、Red Hat build of Keycloak の状態が liveready かを判断できます。curl は、この目的に適した HTTP クライアントです。

Red Hat build of Keycloak がコンテナーにデプロイされている場合は、前述のセキュリティー対策のため、カスタムイメージを使用するか、コンテナーの外部からこのコマンドを実行する必要があります。以下に例を示します。

curl --head -fsS http://localhost:9000/health/ready
Copy to Clipboard Toggle word wrap

コマンドがステータス 0 を返した場合、呼び出したエンドポイントに応じて Red Hat build of Keycloak は live または ready になります。それ以外の場合は問題があります。

1.3.2. Kubernetes

Kubernetes が外部からヘルスエンドポイントをモニタリングできるように、HTTP Probe を定義してください。liveness コマンドは使用しないでください。

注記

https-client-authrequired に設定して mTLS を設定すると、この設定は管理インターフェイスによって継承されます。ヘルスエンドポイントに対して HTTP の利用を別途設定していない場合は、プローブリクエストに対して有効なクライアント証明書が要求されないように、https-management-client-authrequest または none に設定することが望ましいでしょう。

1.3.3. HEALTHCHECK

Containerfile イメージの HEALTHCHECK 命令は、コンテナーの実行中にコンテナー内で定期的に実行されるコマンドを定義します。Red Hat build of Keycloak コンテナーには CLI HTTP クライアントがインストールされていませんが、TCP ソケットへのリダイレクトに BASH サポートを活用し、ヘルスチェックエンドポイントへの簡単な HTTP リクエストを作成することは可能です。

{ printf 'HEAD /health/ready HTTP/1.0\r\n\r\n' >&0; grep 'HTTP/1.0 200'; } 0<>/dev/tcp/localhost/9000
Copy to Clipboard Toggle word wrap

上記のコードは、http-relative-path (http-management-relative-path) および http-management-port などの Red Hat build of Keycloak オプションの値に依存します。これらが変更された場合は、それに応じてコードを変更する必要があります。

TLS の設定 に示されているように TLS を有効にすると、管理インターフェイスでも TLS が使用されます。管理インターフェイスのエンドポイントの使用方法に応じて、以下の条件を満たせば、引き続きプレーンな HTTP ヘルスチェックを行うことができます。

  • http-management-schemehttp に設定することで、管理インターフェイスが HTTPS ではなく HTTP を使用している場合。
  • または、http-management-health-enabledfalse に設定してメインインターフェイスのヘルスチェックを有効にし、http-enabledtrue に設定して HTTP 経由でアクセスできるようにする場合。このシナリオでは、HTTP ポート (デフォルトは 8080) またはヘルスエンドポイント (デフォルトは /health) への外部トラフィックは、プロキシーによって許可されません。
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat