サービスメッシュ - AWS App Mesh

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

サービスメッシュ

サービスメッシュは、サービス間のネットワークトラフィックの論理的な境界であり、サービスはその中に存在します。サービスメッシュを作成したら、仮想サービス、仮想ノード、仮想ルーター、およびルートを作成して、メッシュ内のアプリケーション間でトラフィックを分散させることができます。

サービスメッシュの作成

注記

メッシュを作成するときは、ネームスペースセレクタを追加する必要があります。名前空間セレクタが空の場合、すべての名前空間が選択されます。名前空間を制限するには、ラベルを使用して App Mesh リソースを作成したメッシュに関連付けます。

AWS Management Console
AWS Management Console を使用してサービスメッシュを作成するには
  1. 次の App Mesh コンソールを開きます:https://console.aws.amazon.com/appmesh/

  2. [メッシュを作成] を選択します。

  3. [メッシュ名] に、サービスメッシュの名前を指定します。

  4. (オプション) [外部トラフィックを許可する] を選択します。デフォルトでは、メッシュ内のプロキシは相互間のトラフィックのみを転送します。外部トラフィックを許可する場合、メッシュ内のプロキシは、メッシュで定義されているプロキシでデプロイされていないサービスに TCP トラフィックを直接転送します。

    注記

    ALLOW_ALL を使用する際、仮想化ノードでバックエンドを指定する場合は、その仮想化ノードのすべてのエグレスをバックエンドとして指定する必要があります。それ以外の場合は、その仮想化ノードでは ALLOW_ALL が機能しなくなります。

  5. IP バージョン優先設定

    メッシュ内のトラフィックにどの IP バージョンを使用するかを制御するには、[デフォルトの IP バージョンの動作をオーバーライド] をオンに切り替えます。デフォルトでは、App Mesh はさまざまな IP バージョンを使用します。

    注記

    メッシュは、メッシュ内のすべての仮想ノードと仮想ゲートウェイに IP 優先を適用します。この動作は、ノードを作成または編集するときに IP プリファレンスを設定することで、個々の仮想ノードで無効にできます。IPv4トラフィックとIPv6トラフィックの両方を受信できる仮想ゲートウェイの構成は、メッシュでどちらのプリファレンスが設定されているかに関係なく同じであるため、仮想ゲートウェイではIPプリファレンスを上書きできません。

    • デフォルト

      • IPv6IPv4EnvoyのDNSリゾルバーは優先してフォールバックします。

      • AWS Cloud Map可能な場合は、IPv4返されたアドレスを使用し、IPv6そのアドレスに戻ります。

      • IPv4ローカルアプリ用に作成されたエンドポイントはアドレスを使用します。

      • EnvoyIPv4 リスナーはすべてのアドレスにバインドされます。

    • IPv6 が優先されます

      • IPv6IPv4EnvoyのDNSリゾルバーは優先してフォールバックします。

      • IPv6AWS Cloud Map返されたアドレスが利用可能な場合はそのアドレスが使用され、IPv4そのアドレスを使用するようになります。

      • IPv6ローカルアプリ用に作成されたエンドポイントはアドレスを使用します。

      • EnvoyIPv4IPv6 リスナーはすべてのアドレスにバインドされます。

    • IPv4 が優先されます

      • IPv4IPv6EnvoyのDNSリゾルバーは優先してフォールバックします。

      • AWS Cloud Map可能な場合は、IPv4返されたアドレスを使用し、IPv6そのアドレスに戻ります。

      • IPv4ローカルアプリ用に作成されたエンドポイントはアドレスを使用します。

      • EnvoyIPv4IPv6 リスナーはすべてのアドレスにバインドされます。

    • IPv6 のみ

      • EnvoyのDNSリゾルバーはのみを使用しますIPv6

      • IPv6AWS Cloud Map返されたアドレスのみが使用されます。AWS Cloud MapIPv4アドレスを返す場合、IP アドレスは使用されず、空の結果が Envoy に返されます。

      • IPv6ローカルアプリ用に作成されたエンドポイントはアドレスを使用します。

      • EnvoyIPv4IPv6 リスナーはすべてのアドレスにバインドされます。

    • IPv4 のみ

      • EnvoyのDNSリゾルバーはのみを使用しますIPv4

      • IPv4AWS Cloud Map返されたアドレスのみが使用されます。AWS Cloud MapIPv6アドレスを返す場合、IP アドレスは使用されず、空の結果が Envoy に返されます。

      • IPv4ローカルアプリ用に作成されたエンドポイントはアドレスを使用します。

      • EnvoyIPv4IPv6 リスナーはすべてのアドレスにバインドされます。

  6. [メッシュを作成] を選択して終了します。

  7. (オプション) メッシュを他のアカウントと共有します。共有メッシュを使用すると、異なるアカウントで作成されたリソースが同じメッシュ内で相互に通信できるようになります。詳細については、「共有メッシュの使用」を参照してください。

AWS CLI

を使用してメッシュを作成するにはAWS CLI。

以下のコマンドを使用してサービスメッシュを作成します (赤色の値を独自の値に置き換えてください)。

  1. aws appmesh create-mesh --mesh-name meshName
  2. 出力例:

    { "mesh":{ "meshName":"meshName", "metadata":{ "arn":"arn:aws:appmesh:us-west-2:123456789012:mesh/meshName", "createdAt":"2022-04-06T08:45:50.072000-05:00", "lastUpdatedAt":"2022-04-06T08:45:50.072000-05:00", "meshOwner": "123456789012", "resourceOwner": "123456789012", "uid":"a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version":1 }, "spec":{}, "status":{ "status":"ACTIVE" } } }

AWS CLIfor App Mesh を使用してメッシュを作成する方法の詳細については、AWS CLIリファレンスの create-mesh コマンドを参照してください。

メッシュを削除する

AWS Management Console
AWS Management Console CLI を使用してト仮想ートウェイを削除するには
  1. App Mesh コンソールを https://console.aws.amazon.com/appmesh/ で開きます。

  2. 削除するメッシュを選択します。所有し、共有されているすべてのメッシュが一覧表示されます。

  3. 確認画面で、「削除」delete と入力し、「削除」をクリックします。

AWS CLI
を使用してメッシュを削除するにはAWS CLI
  1. 以下のコマンドを使用してメッシュを削除します (赤い値を自分の値に置き換えてください)。

    aws appmesh delete-mesh \ --mesh-name meshName
  2. 出力例:

    { "mesh": { "meshName": "meshName", "metadata": { "arn":"arn:aws:appmesh:us-west-2:123456789012:mesh/meshName", "createdAt": "2022-04-06T08:45:50.072000-05:00", "lastUpdatedAt": "2022-04-07T11:06:32.795000-05:00", "meshOwner": "123456789012", "resourceOwner": "123456789012", "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 1 }, "spec": {}, "status": { "status": "DELETED" } } }

AWS CLIfor App Mesh を使用してメッシュを削除する方法の詳細については、AWS CLIリファレンスの delete-mesh コマンドを参照してください。