5.4. Node.js のヘルスチェックの例


重要

以下の例は、実稼働環境での実行を目的としていません。

上達度レベルの例: Foundational

アプリケーションをデプロイする場合は、アプリケーションが利用可能かどうかを確認し、受信した要求の処理を開始することが重要です。ヘルスチェック パターンを実装すると、アプリケーションが利用できるかどうかや要求に対応できるかどうかなど、アプリケーションの健全性を監視できます。

注記

ヘルスチェックの用語に慣れていない場合は、最初に 「ヘルスチェックの概念」 セクションを参照してください。

このユースケースの目的は、プローブを使用してヘルスチェックパターンを実証することです。プロービングは、アプリケーションの liveness および readiness を報告するために使用されます。このユースケースでは、HTTP health エンドポイントを公開して HTTP 要求を発行するアプリケーションを設定します。コンテナーが動作している場合は、HTTP エンドポイント health の Liveness プローブによると、管理プラットフォームは 200 を戻りコードとして受け取り、それ以上のアクションは必要ありません。HTTP エンドポイント health が応答を返さない場合 (たとえば、スレッドがブロックされている場合)、アプリケーションは liveness プローブにより有効とみなされません。この場合、プラットフォームはそのアプリケーションに対応する Pod を強制終了し、アプリケーションを再起動するために新規 Pod を再作成します。

このユースケースでは、readiness プローブを実証し、使用することもできます。アプリケーションが実行していても要求を処理できない場合 (再起動中にアプリケーションが HTTP 503 応答コードを返す場合など)、このアプリケーションは readiness プローブにより準備ができていないと見なされます。readiness プローブによってアプリケーションが準備状態にあるとみなされない場合、要求は readiness プローブにより準備状態にあるとみなされるまで、要求はそのアプリケーションにルーティングされません。

5.4.1. ヘルスチェックの概念

ヘルスチェックパターンを理解するには、まず以下の概念を理解する必要があります。

Liveness
liveness は、アプリケーションが実行しているかどうかを定義します。実行中のアプリケーションが応答しない状態または停止状態に移行する可能性があるため、再起動する必要があります。liveness の確認は、アプリケーションを再起動する必要があるかどうかを判断するのに役立ちます。
Readines
readiness は、実行中のアプリケーションが要求を処理できるかどうかを定義します。実行中のアプリケーションがエラーまたは破損状態に切り替わり、要求にサービスを提供することができません。readiness を確認すると、要求が引き続きそのアプリケーションにルーティングされるべきかどうかが判断されます。
フェイルオーバー
フェイルオーバーにより、サービス要求の失敗が適切に処理されるようになります。アプリケーションが要求のサービスに失敗した場合、その要求と今後の要求は フェイルオーバー したり、別のアプリケーションにルーティングしたりすることができます。通常、同じアプリケーションの冗長コピーになります。
耐障害性および安定性
耐障害性および安定性により、要求サービスの失敗を適切に処理できます。接続の損失によりアプリケーションが要求を処理できない場合、耐障害性のあるシステムでは、接続が再確立された後に要求を再試行できます。
プローブ
プローブは実行中のコンテナーで定期的に実行する Kubernetes の動作です。
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat