type
status
date
slug
summary
tags
category
icon
password

アプリケーションの監視とプローブ

目的

このセクションを完了すると、学生はOpenShiftにデプロイされたアプリケーションのヘルスチェックのためにプローブを設定できるようになります。

OpenShiftプローブの紹介

OpenShiftアプリケーションは、接続の一時的な喪失、設定エラー、またはアプリケーションエラーなどの問題により、正常でなくなることがあります。開発者はプローブを使用してアプリケーションを監視できます。プローブは、実行中のコンテナに対して定期的に診断を行うKubernetesのアクションです。プローブは、ocコマンドラインクライアントやOpenShift Webコンソールを使用して設定できます。
現在、管理者が使用できるプローブには2種類があります:
  • Liveness Probe(生存確認プローブ)
    • 生存確認プローブは、コンテナ内で実行中のアプリケーションが健康かどうかを判断します。もしこのプローブがアプリケーションが健康でない状態を検出した場合、OpenShiftはポッドを停止し、再デプロイを試みます。開発者はtemplate.spec.containers.livenessProbeの設定を使って生存確認プローブを設定できます。
  • Readiness Probe(準備完了プローブ)
    • 準備完了プローブは、コンテナがリクエストを処理する準備ができているかどうかを判断します。このプローブが失敗した場合、OpenShiftはそのコンテナのIPアドレスをサービスのエンドポイントから削除します。開発者はtemplate.spec.containers.readinessProbeの設定を使って準備完了プローブを設定できます。
OpenShiftでは、プローブに対していくつかのタイムアウトオプションを提供しています。これらは次の5つのオプションです:
  • initialDelaySeconds: 必須。コンテナが起動してからプローブを開始するまでの待機時間。
  • timeoutSeconds: 必須。プローブが完了するまでに待機する時間。この時間を超えると、OpenShiftはプローブが失敗したと見なします。
  • periodSeconds: 任意。プローブのチェック間隔。
  • successThreshold: 任意。プローブが失敗した後、成功と見なされるために必要な連続した成功回数。
  • failureThreshold: 任意。プローブが成功した後、失敗と見なされるために必要な連続した失敗回数。

アプリケーションのヘルスチェック方法

準備完了プローブと生存確認プローブは、3つの方法でアプリケーションのヘルスをチェックできます:
  • HTTPチェック
    • HTTPチェックを使用すると、OpenShiftはWebフックを利用してコンテナのヘルスを判断します。HTTPレスポンスコードが200〜399の範囲であれば、チェックは成功と見なされます。以下は、HTTPチェックメソッドを使用して準備完了プローブを実装する例です。
      • path: クエリするURL。
      • initialDelaySeconds: コンテナ起動後、ヘルスチェックを開始するまでの待機時間。
      • timeoutSeconds: プローブが完了するまで待機する時間。
      • 注意: HTTPチェックは、HTTPステータスコードを返すアプリケーションに最適です。
  • コンテナ実行チェック
    • コンテナ実行チェックでは、kubeletエージェントがコンテナ内でコマンドを実行します。コマンドが0のステータスで終了すると、チェックは成功と見なされます。以下は、コンテナ実行チェックを実装する例です。
      • command: 実行するコマンド。
  • TCPソケットチェック
    • TCPソケットチェックでは、kubeletエージェントがコンテナへのソケット接続を試みます。接続が確立できると、コンテナは健康と見なされます。以下は、TCPソケットチェックメソッドを使用して生存確認プローブを実装する例です。
      • port: チェックするTCPポート。

Webコンソールを使用したプローブの管理

開発者は、OpenShift Webコンソールを使用して準備完了プローブと生存確認プローブの両方を管理できます。各デプロイメントについて、プローブの管理は「アクション」ドロップダウンリストから利用できます。
各プローブタイプについて、開発者はHTTP GET、TCPソケット、またはコンテナコマンドなどのタイプを選択し、それぞれのタイプに対するパラメータを指定できます。Webコンソールは、プローブを削除するオプションも提供しています。図16.2では、準備完了プローブと生存確認プローブの管理方法が示されています。
notion image
注意
notion image
periodSecondssuccessThreshold、およびfailureThresholdは、Webコンソールから設定することはできません。
Webコンソールは、デプロイメント構成を定義するYAMLファイルを編集することもできます。プローブを作成すると、新しいエントリがデプロイメント構成の設定ファイルに追加されます。デプロイメント構成エディターを使用して、プローブを確認または編集できます。ライブエディターを使うと、periodSecondssuccessThreshold、およびfailureThresholdオプションを編集できます。以下の例は、デプロイメント構成のライブエディターを示しています。
notion image
参考資料
さらに詳しい情報は、OpenShift Container Platform Developer Guideの「Application Health」章に記載されています。
また、Kubernetesウェブサイトの「LivenessおよびReadinessプローブの設定」ページにも詳しい情報があります。
 
74- 第16章:OpenShiftの管理と監視-4:アプリケーションの監視とプローブの説明76- 第16章:OpenShiftの管理と監視-6:アプリケーションの監視とプローブの演習
Loading...
minami
minami
一个普通的干饭人🍚
Announcement

🎉 ブログへようこそ 🎉

notion image
名前:みなみ独立事務所
性別:男
国籍:China
完全独学だけで基本情報をはじめ31個の資格を仕事をしながら合格。 現在はIT会社の技術担当や、ブログの執筆や学習支援などを手掛けています。 独学で合格できる学習法、勉強法、試験対策を配信します!

📚 主な内容

💻 IT・システム開発
🏠 不動産 × 宅建士
🎓 MBA 学習記録

🔍 コンテンツの探し方

現在、サイトのデザインはシンプルなため、情報がやや探しにくいかもしれません。
気になるテーマを探す際は、タグ検索の利用をおすすめします。