5.4.5. 未変更の Health Check サンプルアプリケーションとの対話


サンプルアプリケーションをデプロイすると、MY_APP_NAME サービスが実行します。MY_APP_NAME サービスは、以下の REST エンドポイントを公開します。

/api/greeting
name パラメーター (または World をデフォルト値として) のグリーティングが含まれる JSON を返します。
/api/stop
障害をシミュレートする手段として、サービスが強制的に応答しなくなります。

以下の手順は、サービスの可用性を確認し、障害をシミュレートする方法を示しています。この利用可能なサービスの障害により、OpenShift の自己修復機能がサービスでトリガーされます。

Web インターフェイスを使用して、これらの手順を実施することもできます。

  1. curl を使用して、MY_APP_NAME サービスに対して GET 要求を実行します。これを行うには、ブラウザーを使用することもできます。

    $ curl http://MY_APP_NAME-MY_PROJECT_NAME.OPENSHIFT_HOSTNAME/api/greeting
    {"content":"Hello, World!"}
  2. /api/stop エンドポイントを呼び出して、その直後に /api/greeting エンドポイントの可用性を確認します。

    /api/stop エンドポイントを呼び出すと、内部サービス障害をシミュレートし、OpenShift の自己修復機能をトリガーします。障害のシミュレート後に /api/greeting を呼び出すと、サービスは HTTP ステータス 503 を返すはずです。

    $ curl http://MY_APP_NAME-MY_PROJECT_NAME.OPENSHIFT_HOSTNAME/api/stop
    Stopping HTTP server, Bye bye world !

    (続く)

    $ curl http://MY_APP_NAME-MY_PROJECT_NAME.OPENSHIFT_HOSTNAME/api/greeting
    Not online
  3. oc get pods -w を使用して、動作中の自己修復機能を継続的に監視します。

    サービス障害の呼び出し中に、OpenShift コンソールまたは oc クライアントツールで機能する自己修復機能を確認できます。READY 状態の Pod 数がゼロ (0/1) になり、短期間 (1 分未満) 後に 1 (1/1) に戻ることが確認できるはずです。さらに、サービスの失敗を呼び出すたびに RESTARTS カウントが増加します。

    $ oc get pods -w
    NAME                           READY     STATUS    RESTARTS   AGE
    MY_APP_NAME-1-26iy7   0/1       Running   5          18m
    MY_APP_NAME-1-26iy7   1/1       Running   5         19m
  4. 必要に応じて、Web インターフェイスを使用してサービスを呼び出します。

    端末ウィンドウを使用した対話では、サービスが提供する Web インターフェイスを使用して、異なるメソッドを起動し、サービスがライフサイクルフェーズを進めるのを監視できます。

    http://MY_APP_NAME-MY_PROJECT_NAME.OPENSHIFT_HOSTNAME
  5. 必要に応じて、Web コンソールを使用して、自己修復プロセスの各段階でアプリケーションによって生成されたログ出力を表示します。

    1. プロジェクトに移動します。
    2. サイドバーで Monitoring をクリックします。
    3. 画面右上にある Events をクリックし、ログメッセージを表示します。
    4. オプション: View Details をクリックし、Event ログの詳細なビューを表示します。

    ヘルスチェックアプリケーションは以下のメッセージを生成します。

    Expand
    メッセージStatus

    Unhealthy

    readiness プローブが失敗しました。このメッセージは想定されており、/api/greeting エンドポイントのシミュレートされた失敗が検出され、自己修復プロセスが開始することを示します。

    Killing

    サービスを実行している利用不可の Docker コンテナーは、再作成前に強制終了されています。

    Pulling

    最新バージョンの Docker イメージをダウンロードして、コンテナーを再作成します。

    Pulled

    Docker イメージが正常にダウンロードされました。

    Created

    Docker コンテナーが正常に作成されました

    Started

    Docker コンテナーが要求を処理する準備ができました。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

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

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

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

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

Legal Notice

Theme

© 2026 Red Hat
トップに戻る