仮想サービスのルート表の更新

サービス・メッシュの仮想サービス・ルート表の名前、説明またはタグを更新します。

重要

続行する前に、仮想サービス・ルート表リソースに適切なOCIポリシーを設定する必要があります。詳細は、仮想サービス・ルート表に必要なIAMポリシーを参照してください。
    1. ナビゲーション・メニューを開き、「開発者サービス」をクリックします。「コンテナおよびアーティファクト」で、「サービス・メッシュ」をクリックします。
    2. 「サービス・メッシュ」をクリックします。
    3. 「サービス・メッシュ」ページの左側にあるコンパートメントのリストから、コンパートメントを選択します。
    4. メッシュのリストから、ルート表を更新する仮想サービスを含むメッシュをクリックします。
    5. メッシュの詳細ページで、ルート表を含む仮想サービスをクリックします。
    6. 仮想サービスの詳細ページの「リソース」で、「ルート表」を選択し、更新するルート表をクリックします。
    7. ルート表の詳細ページで、「編集」をクリックします。
    8. 「ルート表の編集」パネルで、必要な詳細を更新します。ルート表の説明および優先度を更新できます。
    9. 「変更の保存」をクリックします。
  • virtual-service-route-table updateで使用可能な操作を確認するには、次を使用します:

    oci service-mesh virtual-service-route-table update -h

    仮想サービスのルート表を更新するには、oci service-mesh virtual-service-route-table updateオプションを使用します:

    oci service-mesh virtual-service-route-table update --virtual-service-route-table-id <virtualServiceRouteTableId> --route-rules <rules> --description <description> --priority <priority>

    ここでは:

    • <virtualServiceRouteTableId>: 仮想サービス・ルート表のOCID。
    • <rules>
      • <type>: HTTPTCPおよびTLS_PASSTHROUGHプロトコルを選択します。TLS_PASSTHROUGHが選択されている場合、プロキシはTLSを管理しません。プロキシは、TLSを独自に管理するアプリケーションに、暗号化されたデータをそのまま渡します。

        HTTPオプション:

        • <path>: このルートへのパス(/mypathなど)。ルート(「/」)にデフォルト設定するパス値を指定しません。ルート値を指定せずにパスを指定すると、ルールによってルート(/)がパスの先頭に付加されます。
        • <pathType>: 指定されたパスのタイプ。デフォルトのPREFIXオプションは、パスをエンドポイントへの接頭辞として処理し、サポートされている唯一のオプションです。pathTypeが指定されていない場合、デフォルトが使用されます。
        • <isGrpc>: trueに設定すると、content-typeヘッダーにapplication/grpcまたは様々なapplication/grpc+値の1つが含まれていることがチェックされます。
      • <destinations>: このルートの仮想デプロイメントの宛先を定義します。少なくとも1つの出力先が必要です。
        • <virtualDeploymentId>リクエストがルーティングされる仮想デプロイメントのOCID。
        • <weight>: この宛先の重み。宛先が1つのみ作成されている場合、値はデフォルトで100になります。複数の宛先を作成する場合は、宛先ごとに1から100の値を指定できます。合計すると、すべての宛先の加重の合計が100になる必要があります。
        • <port>:
          1から65535の範囲のポートを選択します。このルールで許可されるポートは1つのみです。ポートを指定しない場合、ルールは仮想デプロイメントのすべてのポートをターゲットとします。
          注意

          メッシュ・リソースでは、15000、15003、15006および9901のサービス・メッシュ予約済ポートを使用しないでください。
    • <description> (オプション): 仮想サービスのルート表の説明。フィールドは変更可能です。機密情報を入力しないでください。
    • <priority> (オプション): ルート表の優先度を1から1000に設定します。デフォルトは500です。数値が小さいほど優先度が高くなります。同じ優先度で、ルート表は、最も新しいルート表が最も高い優先度で作成された時間に基づいて優先順位付けされます。

    例:

    oci service-mesh virtual-service-route-table update --virtual-service-route-table-id ocid1.meshvirtualserviceroutetable.oc1..aaa... --route-rules '[{"destinations":[{"port":443,"type":"VIRTUAL_DEPLOYMENT","virtualDeploymentId":"ocid1.meshvirtualdeployment.oc1..aaa...","weight":100}],"isGrpc":true,"path":"/service-path","pathType":"PREFIX","type":"HTTP"}]' --description "my virtual-service-route-table" --priority 10

    コマンドへの応答は次のとおりです。

    • 仮想サービス・ルート表のOCID
    • ライフサイクルの状態(ACTIVE、FAILEDなど)。
    • 仮想サービス・ルート表を更新する作業リクエストのID(作業リクエストの詳細は、完了、取消または失敗の後の7日間使用できます)。

    仮想サービスルートテーブルがアクティブになるか、リクエストが失敗するまで、コマンドが制御を返すのを待機する場合は、次のいずれかまたは両方のパラメータを含めます。

    • --wait-for-state SUCCEEDED
    • --wait-for-state FAILED

    例:

    oci service-mesh virtual-service-route-table update --virtual-service-route-table-id ocid1.meshvirtualserviceroutetable.oc1..aaa... --route-rules '[{"destinations":[{"port":443,"type":"VIRTUAL_DEPLOYMENT","virtualDeploymentId":"ocid1.meshvirtualdeployment.oc1..aaa...","weight":100}],"isGrpc":true,"path":"/service-path","pathType":"PREFIX","type":"HTTP"}]' --description "my virtual-service-route-table" --priority 10 --wait-for-state SUCCEEDED
    ヒント

    作業リクエストが正常に更新され、仮想サービスのルート表がアクティブになるまで、仮想サービスのルート表は使用できません。

    仮想サービスのルート表のステータスの確認

    仮想サービス・ルート表のステータスを表示するには、次のように入力します:

    oci service-mesh virtual-service-route-table get --virtual-service-route-table-id <virtualServiceRouteTableId>

    仮想サービス・ルート表を作成する作業リクエストのステータスを表示するには、「サービス・メッシュ作業リクエスト」を参照してください。

    JSONファイルを使用した仮想サービス・ルート表の更新

    または、更新コマンドにJSONファイルを指定して仮想サービス・ルート表を更新します。

    1. 仮想サービス・ルート表のサンプルJSONファイルを生成します:

      oci service-mesh virtual-service-route-table update --generate-full-command-json-input
    2. 前のステップで生成されたサンプル出力でJSONファイルを更新し、フィールドを適切な値で更新します。
    3. virtual-service-route-table updateコマンドにJSONファイルを指定します:

      oci service-mesh virtual-service update --from-json file:///<filename>

    CLIの使用方法の詳細は、次を参照してください:

  • UpdateVirtualServiceRouteTable操作を使用して、仮想サービス・ルート表を更新します。