13.5.2. HTTP readiness プローブの定義

仮想マシンインスタンス(VMI)設定の spec.readinessProbe.httpGet フィールドを設定して HTTP readiness プローブを定義します。

手順

  1. VMI 設定ファイルに readiness プローブの詳細を追加します。

    HTTP GET テストを使用した readiness プローブの例

    # ...
    spec:
      readinessProbe:
        httpGet: 1
          port: 1500 2
          path: /healthz 3
          httpHeaders:
          - name: Custom-Header
            value: Awesome
        initialDelaySeconds: 120 4
        periodSeconds: 20 5
        timeoutSeconds: 10 6
        failureThreshold: 3 7
        successThreshold: 3 8
    # ...

    1
    VMI への接続に使用する HTTP GET 要求。
    2
    プローブがクエリーする VMI のポート。上記の例では、プローブはポート 1500 をクエリーします。
    3
    HTTP サーバーでアクセスするパス。上記の例では、サーバーの /healthz パスのハンドラーが成功コードを返す場合に、VMI は正常であるとみなされます。ハンドラーが失敗コードを返すと、VMI は利用可能なエンドポイントの一覧から削除されます。
    4
    VMI が起動してから readiness プローブが開始されるまでの時間(秒単位)。
    5
    プローブの実行間の遅延(秒単位)。デフォルトの遅延は 10 秒です。この値は timeoutSeconds よりも大きくなければなりません。
    6
    プローブがタイムアウトし、VMI が失敗したと想定されてから非アクティブになるまでの時間 (秒数)。デフォルト値は 1 です。この値は periodSeconds 未満である必要があります。
    7
    プローブが失敗できる回数。デフォルトは 3 です。指定された試行回数になると、Pod には Unready というマークが付けられます。
    8
    成功とみなされるまでにプローブが失敗後に成功を報告する必要のある回数。デフォルトでは 1 回です。
  2. 以下のコマンドを実行して VMI を作成します。

    $ oc create -f <file_name>.yaml