

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

# Snowball Edge のコンピューティングインスタンスのネットワーク設定
<a name="network-config-ec2"></a>

Snowball Edge でコンピューティングインスタンスを起動したら、ネットワークインターフェイスを作成して IP アドレスを指定する必要があります。Snowball Edge は、仮想ネットワークインターフェイスと直接ネットワークインターフェイスの 2 種類のネットワークインターフェイスをサポートしています。

**仮想ネットワークインターフェイス (VNI)** – 仮想ネットワークインターフェイスは、Snowball Edge の EC2-compatibleインスタンスに接続するための標準ネットワークインターフェイスです。ダイレクトネットワークインターフェイスを使用するかどうかにかかわらず、各 EC2 互換インスタンスに対して VNI を作成する必要があります。VNI を通過するトラフィックは、設定したセキュリティグループによって保護されます。VNIs、Snowball Edge の制御に使用する物理ネットワークポートにのみ関連付けることができます。

**注記**  
VNI は、Snowball Edge の管理に使用されるのと同じ物理インターフェイス (RJ45、SFP\$1、または QSFP) を使用します。デバイス管理に使用しているものとは異なる物理インターフェイスで VNI を作成すると、予期しない結果が生じる可能性があります。

**ダイレクトネットワークインターフェイス (DNI)** – ダイレクトネットワークインターフェイス (DNI) は、マルチキャストストリーム、推移的ルーティング、ロードバランシングなどのユースケースを可能にする高度なネットワーク機能です。中間変換やフィルタリングなしでインスタンスにレイヤー 2 ネットワークアクセスを提供することで、Snowball Edge のネットワーク設定に対する柔軟性を高め、ネットワークパフォーマンスを向上させることができます。DNI は VLAN タグと MAC アドレスのカスタマイズをサポートします。DNI 上のトラフィックは、セキュリティグループによって保護されません。

Snowball Edge デバイスでは、DNI を RJ45、SFP、または QSFP ポートに関連付けることができます。各物理ポートは最大 63 の DNI をサポートします。DNIs は、Snowball Edge の管理に使用するのと同じ物理ネットワークポートに関連付ける必要はありません。

**注記**  
Snowball Edge ストレージ最適化 (EC2 コンピューティング機能搭載) デバイスは DNI をサポートしません。

**Topics**
+ [Snowball Edge での DNIsまたは VNIs前提条件](#snowcone-configuration-prerequisites)
+ [Snowball Edge での仮想ネットワークインターフェイス (VNI) のセットアップ](#setup-vni)
+ [Snowball Edge での Direct Network Interface (DNI) のセットアップ](#snowcone-setup-dni)

## Snowball Edge での DNIsまたは VNIs前提条件
<a name="snowcone-configuration-prerequisites"></a>

VNI または DNI を設定する前に、次の前提条件が満たされていることを確認します。

****

1. デバイスの電源がオンになっており、物理的なネットワークインターフェイス (RJ45 ポートなど) のいずれかが IP アドレスと接続されていることを確認します。

1. Snowball Edge で使用している物理ネットワークインターフェイスに関連付けられている IP アドレスを取得します。

1. Snowball Edge クライアントを設定します。詳細については、「[Snowball Edge クライアント用プロファイルの設定](using-client-commands.md#client-configuration)」を参照してください。

1.  AWS CLIを設定します。詳細については、「 AWS Command Line Interface ユーザーガイド[」の「 の開始方法 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html)」を参照してください。

1. デバイスのロックを解除します。
   +  AWS OpsHub を使用してデバイスのロックを解除します。詳細については、[ a Snowball Edge with AWS OpsHub](https://docs.aws.amazon.com/snowball/latest/developer-guide/connect-unlock-device.html)」を参照してください。
   + Snowball Edge クライアントを使用してデバイスをロック解除します。詳細については、「[Snowball Edge のロック解除](unlockdevice.md)」を参照してください。

1. デバイス上の EC2 互換インスタンスを起動します。VNI をこのインスタンスに関連付けます。

1. Snowball Edge クライアントを使用して `describe-device` コマンドを実行します。コマンドの出力は、物理ネットワークインターフェイス ID のリストを提供します。詳細については、「[Snowball Edge のステータスの表示](using-client-commands.md#client-status)」を参照してください。

1. 使用する物理ネットワークインターフェイスの ID を特定し、これを書き留めます。

## Snowball Edge での仮想ネットワークインターフェイス (VNI) のセットアップ
<a name="setup-vni"></a>

 物理ネットワークインターフェイスの ID を確認した後、その物理インターフェイスで仮想ネットワークインターフェイス (VNI) を設定できます。次の手順に従って、VNI を設定します。VNI を作成する前に、前提条件となるタスクを実行していることを確認してください。

**VNI を作成して IP アドレスを関連付け**

1. Snowball Edge クライアントを使用して `create-virtual-network-interface` コマンドを実行します。以下の例では、このコマンドの実行に 2 つの異なる IP アドレス割り当て方法 (`DHCP`、`STATIC`) を使用しています。`DHCP` メソッドは Dynamic Host Configuration Protocol (DHCP) を使用します。

   ```
   snowballEdge create-virtual-network-interface \
   --physical-network-interface-id s.ni-abcd1234 \
   --ip-address-assignment DHCP \
   --profile profile-name
           //OR//
           
   snowballEdge create-virtual-network-interface \
   --physical-network-interface-id s.ni-abcd1234 \
   --ip-address-assignment STATIC \
   --static-ip-address-configuration IpAddress=192.0.2.0,Netmask=255.255.255.0 \
   --profile profile-name
   ```

   このコマンドによって、IP アドレスを含む JSON 構造が返ります。プロセスの後半で `ec2 associate-address` AWS CLI コマンドで使用する IP アドレスを書き留めます。

   この IP アドレスが必要な場合はいつでも、Snowball Edge Client コマンド `describe-virtual-network-interfaces` Snowball Edge クライアントコマンド、または AWS CLI コマンドを使用して`aws ec2 describe-addresses`取得できます。

1. を使用して IP アドレスを EC2-compatibleインスタンスに AWS CLI 関連付け、赤いテキストを値に置き換えます。

   ```
   aws ec2 associate-address --public-ip 192.0.2.0 --instance-id s.i-01234567890123456 --endpoint http://Snowball Edge physical IP address:8008
   ```

## Snowball Edge での Direct Network Interface (DNI) のセットアップ
<a name="snowcone-setup-dni"></a>

**注記**  
 ダイレクトネットワークインターフェイス機能は、2021 年 1 月 12 日以降に利用でき、Snowball Edge が利用可能なすべての AWS リージョン で使用できます。

### Snowball Edge での DNI の前提条件
<a name="use-snowwire-prerequisites"></a>

ダイレクトネットワークインターフェイス (DNI) を設定する前に、前提条件セクションのタスクを実行する必要があります。

1. DNI を設定する前に、前提条件となるタスクを実行します。手順については、「[Snowball Edge での DNIsまたは VNIs前提条件](#snowcone-configuration-prerequisites)」を参照してください。

1. さらに、デバイスでインスタンスを起動し、VNI を作成してインスタンスに関連付ける必要があります。手順については、「[Snowball Edge での仮想ネットワークインターフェイス (VNI) のセットアップ](#setup-vni)」を参照してください。
**注記**  
現場でソフトウェアアップデートを実行して、既存のデバイスにダイレクトネットワークを追加した場合、機能を完全に有効にするために、デバイスを2回再起動する必要があります。

**DNI を作成し、IP アドレスを関連付ける**

1. 次のコマンドを実行して、ダイレクトネットワークインターフェイスを作成し、Amazon EC2 互換インスタンスにアタッチします。次のステップでは、デバイスの MAC アドレスが必要です。

   ```
   create-direct-network-interface [--endpoint endpoint] [--instance-id instanceId] [--mac macAddress]
                                   [--physical-network-interface-id physicalNetworkInterfaceId] 
                                   [--unlock-code unlockCode] [--vlan vlanId]
   ```

   OPTIONS

   ** --endpoint <endpoint>** このリクエストを送信するエンドポイント。デバイスのエンドポイントは、`https` スキームの後に IP アドレスが続く URL です。例えば、デバイスの IP アドレスが 123.0.1.2 の場合、デバイスのエンドポイントは https://123.0.1.2 になります。

   ** --instance-id <instanceId>** インターフェイスをアタッチする EC2 互換インスタンス ID (オプション)。

   ** --mac <macAddress>** ネットワークインターフェイスの MAC アドレスを設定します (オプション)。

   **--physical-network-interface-id <physicalNetworkInterfaceId>** 新しい仮想ネットワークインターフェイスを作成する物理ネットワークインターフェイスの ID。`describe-device` コマンドを使用して、Snowball Edge で使用可能な物理ネットワークインターフェイスを決定できます。

    **--vlan <vlanId>** インターフェイスに、割り当てられた VLAN を設定します (オプション)。指定すると、インターフェイスから送信されるすべてのトラフィックは、指定した VLAN ID でタグ付けされます。着信トラフィックは、指定した VLAN ID でフィルタリングされ、インスタンスに渡される前にすべての VLAN タグが除去されます。

1. DNI を作成し、EC2 互換インスタンスに関連付けた後、Amazon EC2 互換インスタンス内で 2 つの設定変更を行う必要があります。
   + 1 つ目の変更は、EC2 互換インスタンスに関連付けられた VNI 用のパケットが eth0 を介して送信されるように設定することです。
   + 2 つ目の変更は、ブート時に DCHP または静的 IP を使用するようにダイレクトネットワークインターフェイスを設定することです。

   以下に、これらの設定変更を行う Amazon Linux 2 と CentOS Linux のシェルスクリプトの例を示します。

------
#### [ Amazon Linux 2 ]

   ```
   # Mac address of the direct network interface. 
   # You got this when you created the direct network interface.
   DNI_MAC=[MAC ADDRESS FROM CREATED DNI]
   
   # Configure routing so that packets meant for the VNI always are sent through eth0.
   PRIVATE_IP=$(curl -s http://169.254.169.254/latest/meta-data/local-ipv4)
   PRIVATE_GATEWAY=$(ip route show to match 0/0 dev eth0 | awk '{print $3}')
   ROUTE_TABLE=10001
   echo "from $PRIVATE_IP table $ROUTE_TABLE" > /etc/sysconfig/network-scripts/rule-eth0
   echo "default via $PRIVATE_GATEWAY dev eth0 table $ROUTE_TABLE" > /etc/sysconfig/network-scripts/route-eth0
   echo "169.254.169.254 dev eth0" >> /etc/sysconfig/network-scripts/route-eth0
   
   # Query the persistent DNI name, assigned by udev via ec2net helper.
   #   changable in /etc/udev/rules.d/70-persistent-net.rules
   DNI=$(ip --oneline link | grep -i $DNI_MAC | awk -F ': ' '{ print $2 }')
   
   # Configure DNI to use DHCP on boot.
   cat << EOF > /etc/sysconfig/network-scripts/ifcfg-$DNI
   DEVICE="$DNI"
   NAME="$DNI"
   HWADDR=$DNI_MAC
   ONBOOT=yes
   NOZEROCONF=yes
   BOOTPROTO=dhcp
   TYPE=Ethernet
   MAINROUTETABLE=no
   EOF
   
   # Make all changes live.
   systemctl restart network
   ```

------
#### [ CentOS Linux ]

   ```
   # Mac address of the direct network interface. You got this when you created the direct network interface.
   DNI_MAC=[MAC ADDRESS FROM CREATED DNI]
   # The name to use for the direct network interface. You can pick any name that isn't already in use.
   DNI=eth1
   
   # Configure routing so that packets meant for the VNIC always are sent through eth0 
   PRIVATE_IP=$(curl -s http://169.254.169.254/latest/meta-data/local-ipv4)
   PRIVATE_GATEWAY=$(ip route show to match 0/0 dev eth0 | awk '{print $3}')
   ROUTE_TABLE=10001
   echo from $PRIVATE_IP table $ROUTE_TABLE > /etc/sysconfig/network-scripts/rule-eth0
   echo default via $PRIVATE_GATEWAY dev eth0 table $ROUTE_TABLE > /etc/sysconfig/network-scripts/route-eth0
   
   # Configure your direct network interface to use DHCP on boot.
   cat << EOF > /etc/sysconfig/network-scripts/ifcfg-$DNI
   DEVICE="$DNI"
   NAME="$DNI"
   HWADDR="$DNI_MAC"
   ONBOOT=yes
   NOZEROCONF=yes
   BOOTPROTO=dhcp
   TYPE=Ethernet
   EOF
   
   # Rename DNI device if needed.
   CURRENT_DEVICE_NAME=$(LANG=C ip -o link | awk -F ': ' -vIGNORECASE=1 '!/link\/ieee802\.11/ && /'"$DNI_MAC"'/ { print $2 }')
   ip link set $CURRENT_DEVICE_NAME name $DNI
   
   # Make all changes live.
   systemctl restart network
   ```

------