

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

# ゲートウェイの作成 (AWS CLI)
<a name="gateway-create-cli"></a>

AWS CLI を使用してゲートウェイを作成するには、以下の手順を参照してください。

**Topics**
+ [ゲートウェイの作成 (AWS CLI)](#gateway-create-gateway-cli)
+ [インスタンスの登録 (AWS CLI)](#gateway-create-instance-cli)
+ [ブリッジの作成 (AWS CLI)](#gateway-create-bridge-cli)
+ [ゲートウェイとそのコンポーネントの削除 (AWS CLI)](#gateway-cleanup-cli)

## ゲートウェイの作成 (AWS CLI)
<a name="gateway-create-gateway-cli"></a>

ゲートウェイは、インスタンスとブリッジを論理的にグループ化したものです。各ゲートウェイは、データセンターと AWS クラウド 間の通信にユーザー定義の IP 情報を活用します。

AWS CLI を使用してゲートウェイを作成する前に、作成するゲートウェイの名前、エグレス CIDR IP 情報、およびネットワーク情報が必要です。この情報は、AWS CLI を実行するコンピュータの JSON ファイルに保存します。JSON ファイルには、`gateway.json` という名前を付ける必要があります。次の例は、JSON ファイルの正しいセクションと形式を示しています。

```
{
    "Name": "{{gateway}}",
    "EgressCidrBlocks": [
        "{{10.20.30.0/24}}"
    ],
    "Networks": [
        {
            "Name": "{{blue}}",
            "CidrBlock": "{{172.31.48.0/20}}",
        }
    ]
}
```

**AWS CLI を使用して ゲートウェイを作成するには**

1. 次のコマンドを AWS CLI インターフェイスに入力します。`<yourprofile>` および `<region>` の値を目的のプロファイルと AWS リージョン に置き換えます。

   ```
   aws --profile {{<yourprofile>}} --region {{<region>}} mediaconnect create-gateway
         --cli-input-json file://gateway.json
   ```

1. AWS CLI コマンドでは次のようなレスポンスが返されます。

   ```
       "Gateway": {
           "EgressCidrBlocks": [
               "10.20.30.0/24"
           ],
           "GatewayArn": "arn:aws:mediaconnect:us-west-2:111122223333:gateway:1-23aBC45dEF67hiJ8-12AbC34DE5fG:gateway",
           "GatewayState": "CREATING",
           "Name": "gateway",
           "Networks": [
               {
                   "CidrBlock": "172.31.48.0/20",
                   "Name": "blue"
               }
           ]
       }
   }
   ```

1. MediaConnect Gateway が作成されました。

## インスタンスの登録 (AWS CLI)
<a name="gateway-create-instance-cli"></a>

ゲートウェイを作成したら、そのゲートウェイにインスタンスを登録できます。インスタンスは、データセンター内の機器上で実行され、MediaConnect によって管理されるコンピューティングリソースです。このインスタンスは MediaConnect サービスのオンプレミス実装であり、ゲートウェイ内に含まれています。インスタンスはブリッジを使用してデータセンターと AWS クラウド の間で通信します。インスタンスは、オンプレミスサーバーにソフトウェアをインストールすることによって作成されます。

AWS CLI を使用したインスタンスの登録は、現在サポートされていません。[インスタンスの登録 (コンソール)](gateway-create-console.md#gateway-create-instance-console) のコンソールの指示に従い、AWS コンソールを使用してインスタンスを登録します。

## ブリッジの作成 (AWS CLI)
<a name="gateway-create-bridge-cli"></a>

少なくとも 1 つのインスタンスをゲートウェイコンポーネントに登録したら、ブリッジを作成できます。ブリッジはインスタンスと AWS クラウド をつなぐものです。

AWS CLI を使用してブリッジを作成する前に、作成するブリッジの詳細を収集する必要があります。これらの詳細は、AWS CLI を実行しているコンピュータの JSON ファイルに保存されます。JSON ファイルには、`bridge.json` という名前を付ける必要があります。次の例は、JSON ファイルの正しいセクションと形式を示しています。

```
{
    "Name": "bridge",
    "PlacementArn": "{{arn:aws:mediaconnect:us-west-2:111122223333:gateway:1-23aBC45dEF67hiJ8-12AbC34DE5fG:gateway}}",
    "EgressGatewayBridge": {
        "MaxBitrate": {{100000000}}
    },
    "SourceFailoverConfig": {
        "FailoverMode": "{{FAILOVER}}",
        "State": "{{ACTIVE}}"
    },
    "Sources": [
        {
            "FlowSource": {
                "Name": "{{Source0}}",
                "FlowArn": "{{arn:aws:mediaconnect:us-west-2:111122223333:flow:1-UAECXlABCQJeVwMB-95ec11ac6059:gatewayFlow}}",
                "NetworkName": "{{blue}}"
            }
        },
        {
            "FlowSource": {
                "Name": "{{Source1}}",
                "FlowArn": "{{arn:aws:mediaconnect:us-west-2:111122223333:flow:1-ECRZVGADYMGtPGTM-c1iPQ5FNL7Qn:gatewayFlow}}",
                "NetworkName": "{{blue}}",
                "FlowVpcInterfaceAttachment": {
                    "VpcInterfaceName": "{{VPCIF}}"
                }
            }
        }
    ],
    "Outputs": [
        {
            "NetworkOutput": {
                "Name": "{{Output0}}",
                "NetworkName": "{{blue}}",
                "IpAddress": "{{225.1.2.3}}",
                "Port": {{5010}},
                "Protocol": "{{rtp-fec}}",
                "Ttl": {{8}}
            }
        },
        {
            "NetworkOutput": {
                "Name": "{{Output1}}",
                "NetworkName": "{{blue}}",
                "IpAddress": "{{225.1.2.4}}",
                "Port": {{6010}},
                "Protocol": "{{rtp}}",
                "Ttl": {{250}}
            }
        }
    ]
}
```

**AWS CLI を使用してブリッジを作成するには**

1. 次のコマンドを AWS CLI インターフェイスに入力します。`<yourprofile>` および `<region>` の値を目的のプロファイルと AWS リージョン に置き換えます。

   ```
   aws --profile {{<yourprofile>}} --region {{<region>}} mediaconnect create-bridge
         --cli-input-json file://bridge.json
   ```

1. AWS CLI コマンドでは次のようなレスポンスが返されます。

   ```
   {
       "Bridge": {
           "BridgeArn": "arn:aws:mediaconnect:us-west-2:111122223333:bridge:1-GLxlBRLrHzzvpwyb-1dd820
   66b207:bridge",
           "BridgeMessages": [],
           "BridgeState": "STANDBY",
           "EgressGatewayBridge": {
               "MaxBitrate": 100000000
           },
           "Name": "bridge",
           "Outputs": [
               {
                   "NetworkOutput": {
                       "IpAddress": "225.1.2.3",
                       "Name": "Output0",
                       "NetworkName": "blue",
                       "Port": 5010,
                       "Protocol": "rtp-fec",
                       "Ttl": 8
                   }
               },
               {
                   "NetworkOutput": {
                       "IpAddress": "225.1.2.4",
                       "Name": "Output1",
                       "NetworkName": "blue",
                       "Port": 6010,
                       "Protocol": "rtp",
                       "Ttl": 250
                   }
               }
           ],
           "PlacementArn": "arn:aws:mediaconnect:us-west-2:111122223333:gateway:1-23aBC45dEF67hiJ8-12AbC34DE5fG:gateway",
           "SourceFailoverConfig": {
               "FailoverMode": "FAILOVER",
               "State": "ENABLED"
           },
           "Sources": [
               {
                   "FlowSource": {
                       "FlowArn": "arn:aws:mediaconnect:us-west-2:111122223333:flow:1-UAECXlABCQJeVwMB-95ec11ac6059:gatewayFlow",
                       "Name": "Source0",
                       "NetworkName": "blue"
                   }
               },
               {
                   "FlowSource": {
                       "FlowArn": "arn:aws:mediaconnect:us-west-2:111122223333:flow:1-ECRZVGADYMGtPGTM-c1iPQ5FNL7Qn:gatewayFlow",
                       "Name": "Source1",
                       "NetworkName": "blue",
                       "FlowVpcInterfaceAttachment": {
                           "VpcInterfaceName": "VPCIF"
                       }
                   }
               }
           ]
       }
   }
   ```

1. ブリッジが作成されました。

## ゲートウェイとそのコンポーネントの削除 (AWS CLI)
<a name="gateway-cleanup-cli"></a>

ゲートウェイを削除するには、まずネットワーク、インスタンス、ブリッジなどのコンポーネントをすべて削除する必要があります。AWS Command Line Interface (AWS CLI) を使用してゲートウェイとそのコンポーネントを削除するプロセスを以下に示します。

**AWS CLI を使用してゲートウェイを削除するには**

1. 次のコマンドを実行して、ブリッジを削除します。

   ```
   aws --profile {{<Profile>}} --region {{<Region>}} mediaconnect delete-bridge --bridge-arn {{<BridgeArn>}}
   ```

1. 次のコマンドを実行して、インスタンスを登録解除します。

   ```
   aws --profile {{<Profile>}} --region {{<Region>}} mediaconnect deregister-gateway-instance --gateway-instance-arn {{<GatewayArn>}}
   ```
**注記**  
**オプション**：インスタンスを Amazon ECS Anywhere または別のAWS Elemental MediaConnect Gatewayのインスタンスとして再利用する場合は、次のステップを完了する必要があります。そうでない場合は、ステップ 3 に進みます。

   1. 再利用するインスタンスの `InstanceState` が `DEREGISTERED` であることを確認してください。次の例に示す `describe-gateway-instance` コマンドを使用して確認できます。

      ```
      aws --profile {{<Profile>}} --region {{<Region>}} mediaconnect describe-gateway-instance
            --gateway-instance-arn {{<GatewayInstanceArn>}}
      ```

   1. アクセス権を持つコンピューターから、SSH を使用してインスタンスに接続します。

   1. 次の各コマンドを順番に実行します。

      ```
      sudo docker stop $(sudo docker ps -f "name=MediaConnectGatewayAgent" -q); \
      sudo docker stop ecs-agent; \
      sudo systemctl stop ecs amazon-ssm-agent; \
      sudo yum remove -y amazon-ecs-init amazon-ssm-agent;  `# or apt or snap as needed` \
      sudo rm /var/lib/ecs /etc/ecs /var/lib/amazon/ssm /var/log/ecs /var/log/amazon/ssm -rf; \
      sudo docker rm -f ecs-agent ssm-agent; \
      sudo docker container rm -f $(sudo docker ps -a -f "name=MediaConnectGatewayAgent" -q); \
      sudo docker volume rm -f ecsdata docker run; \
      sudo pkill -f -KILL network_bootstra[p]; \
      sudo pkill -KILL mcproxy;
      ```

1. ゲートウェイを削除します。これにより、ゲートウェイに関連するすべてのネットワークが削除されます。

   ```
   aws --profile {{<Profile>}} --region {{<Region>}} mediaconnect delete-gateway --gateway-arn {{<GatewayArn>}}
   ```