

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

# サービスメッシュ
<a name="meshes"></a>

**重要**  
サポート終了通知: 2026 年 9 月 30 日、 AWS はサポートを終了します AWS App Mesh。2026 年 9 月 30 日以降、 AWS App Mesh コンソールまたは AWS App Mesh リソースにアクセスできなくなります。詳細については、このブログ記事[「 から Amazon ECS Service Connect AWS App Mesh への移行](https://aws.amazon.com/blogs/containers/migrating-from-aws-app-mesh-to-amazon-ecs-service-connect)」を参照してください。

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

## サービスメッシュの作成
<a name="create-mesh"></a>

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

------
#### [ AWS マネジメントコンソール ]

**を使用してサービスメッシュを作成するには AWS マネジメントコンソール**

1. 次の App Mesh コンソールを開きます：[https://console.aws.amazon.com/appmesh/](https://console.aws.amazon.com/appmesh/)。

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

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

1. (オプション) **[外部トラフィックを許可する]** を選択します。デフォルトでは、メッシュ内のプロキシは相互間のトラフィックのみを転送します。外部トラフィックを許可する場合、メッシュ内のプロキシは、メッシュで定義されているプロキシでデプロイされていないサービスに TCP トラフィックを直接転送します。
**注記**  
`ALLOW_ALL` を使用する際、仮想化ノードでバックエンドを指定する場合は、その仮想化ノードのすべてのエグレスをバックエンドとして指定する必要があります。それ以外の場合は、その仮想化ノードでは `ALLOW_ALL` が機能しなくなります。

1. 

**[IP バージョンの設定]**

   **[デフォルトの IP バージョンの動作を上書きする]** をオンに切り替えて、メッシュ内のトラフィックに使用する IP バージョンを制御します。デフォルトでは、App Mesh はさまざまな IP バージョンを使用します。
**注記**  
メッシュは、IP 設定をメッシュ内のすべての仮想ノードと仮想ゲートウェイに適用します。この動作は、ノードを作成または編集するときに IP 設定の項目を設定することで、個々の仮想ノードで上書きできます。IPv4 と IPv6 の両方のトラフィックをリッスンできる仮想ゲートウェイの設定は、メッシュにどちらの IP 設定が設定されていても同じであるため、仮想ゲートウェイでは IP 設定を上書きすることはできません。
   + デフォルト値
     + Envoy の DNS リゾルバーは `IPv6` を優先し、`IPv4` にフォールバックします。
     + 利用可能な場合は AWS Cloud Map から返された `IPv4` アドレスを使用し、フォールバックする場合は `IPv6` アドレスを使用します。
     + ローカルアプリ用に作成されたエンドポイントは `IPv4` アドレスを使用します。
     + Envoy リスナーはすべての `IPv4` アドレスにバインドされます。
   + IPv6 優先
     + Envoy の DNS リゾルバーは `IPv6` を優先し、`IPv4` にフォールバックします。
     + 利用可能な場合は AWS Cloud Map から返された `IPv6` アドレスを使用し、フォールバックする場合は `IPv4` アドレスを使用します。
     + ローカルアプリ用に作成されたエンドポイントは `IPv6` アドレスを使用します。
     + Envoy リスナーはすべての `IPv4` および `IPv6` アドレスにバインドされます。
   + IPv4 優先
     + Envoy の DNS リゾルバーは `IPv4` を優先し、`IPv6` にフォールバックします。
     + 利用可能な場合は AWS Cloud Map から返された `IPv4` アドレスを使用し、フォールバックする場合は `IPv6` アドレスを使用します。
     + ローカルアプリ用に作成されたエンドポイントは `IPv4` アドレスを使用します。
     + Envoy リスナーはすべての `IPv4` および `IPv6` アドレスにバインドされます。
   + IPv6 のみ
     + Envoy の DNS リゾルバーは `IPv6` のみを使用します。
     +  AWS Cloud Map によって返された `IPv6` アドレスのみが使用されます。が`IPv4`アドレスを AWS Cloud Map 返す場合、IP アドレスは使用されず、空の結果が Envoy に返されます。
     + ローカルアプリ用に作成されたエンドポイントは `IPv6` アドレスを使用します。
     + Envoy リスナーはすべての `IPv4` および `IPv6` アドレスにバインドされます。
   + IPv4 のみ
     + Envoy の DNS リゾルバーは `IPv4` のみを使用します。
     +  AWS Cloud Map によって返された `IPv4` アドレスのみが使用されます。が`IPv6`アドレスを AWS Cloud Map 返す場合、IP アドレスは使用されず、空の結果が Envoy に返されます。
     + ローカルアプリ用に作成されたエンドポイントは `IPv4` アドレスを使用します。
     + Envoy リスナーはすべての `IPv4` および `IPv6` アドレスにバインドされます。

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

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

------
#### [ AWS CLI ]

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

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

1. 

   ```
   aws appmesh create-mesh --mesh-name {{meshName}}
   ```

1. 出力例:

   ```
   {
       "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"
           }
       }
   }
   ```

App Mesh AWS CLI の を使用してメッシュを作成する方法の詳細については、 AWS CLI リファレンスの [create-mesh](https://docs.aws.amazon.com/cli/latest/reference/appmesh/create-mesh.html) コマンドを参照してください。

------

## メッシュの削除
<a name="delete-mesh"></a>

------
#### [ AWS マネジメントコンソール ]

**を使用して仮想ゲートウェイを削除するには AWS マネジメントコンソール**

1. [https://console.aws.amazon.com/appmesh/](https://console.aws.amazon.com/appmesh/) で App Mesh コンソールを開きます。

1. 削除するメッシュを選択します。所有し、[共有](sharing.md)されているすべてのメッシュが一覧表示されます。

1. 確認ボックスで、「**delete**」と入力し、**[削除]** をクリックします。

------
#### [ AWS CLI ]

**を使用してメッシュを削除するには AWS CLI**

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

   ```
   aws appmesh delete-mesh \
        --mesh-name {{meshName}}
   ```

1. 出力例:

   ```
   {
       "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"
           }
       }
   }
   ```

App Mesh AWS CLI の を使用してメッシュを削除する方法の詳細については、 AWS CLI リファレンスの [delete-mesh](https://docs.aws.amazon.com/cli/latest/reference/appmesh/delete-mesh.html) コマンドを参照してください。

------