このトピックでは、セカンダリプライベート IP アドレスを Elastic Network Interface (ENI) に割り当てる方法について説明します。
シナリオ
- アプリケーションの使用の最適化
ECS インスタンスが複数のアプリケーションをホストしている場合、ENI に複数のセカンダリプライベート IP アドレスを割り当てることができます。 これにより、アプリケーションは別々の IP アドレスをサービスに使用するため、ECS インスタンスの使用が最適化されます。
- サービスの中断回避
アクティブな ECS インスタンスに障害が発生した場合、このインスタンスの ENI を別のインスタンスにアタッチし、トラフィックをスタンバイインスタンスに転送することで、サービス継続性を実現します。
制限
- VPC 内の ECS インスタンスにのみ ENI をアタッチできます。 ENI とインスタンスは、同じ VPC、VSwitch、ゾーン内でなければなりません。
- 1 つの VPC セキュリティグループには、最大 2,000 個のプライベート IP アドレスを含めることができ、クォータはすべてのプライマリ ENI とセカンダリ ENI 間で共有されます。
- ENI には、最大 20 個のプライベート IP アドレスを割り当てることができます。
- ターゲット ENI のステータスが利用可能 (
Available
) の場合、ENI に最大 10 個のプライベート IP アドレスを割り当てることができます。 - ターゲット ENI のステータスが使用中 (
InUse
) の場合、ENI に割り当て可能なプライベート IP アドレス数はインスタンスタイプによって異なります。 詳細は、「インスタンスタイプファミリー」をご参照ください。
- ターゲット ENI のステータスが利用可能 (
- 複数のセカンダリプライベート IP アドレスの割り当てをサポートしているインスタンスタイプでなければなりません。 詳細は、「インスタンスタイプファミリー」を参照するか、DescribeInstanceTypes API を呼び出してください。
- プライマリ ENI に複数のセカンダリプライベート IP アドレスを割り当てる場合、プライマリ ENI がアタッチされているインスタンスのステータスは実行中 (
Running
) か停止 (Stopped
) でなければなりません。
ENI へのセカンダリプライベート IP アドレスの割り当て
- ECS コンソールにログインします。
- 左側のナビゲーションウィンドウで、 を選択します。
- 上部のナビゲーションバーで、リージョンを選択します。
- [ネットワークインタフェース] ページで、ターゲット ENI を見つけ、[オペレーション] 列の [セカンダリプライベート IP アドレスの管理] をクリックします。
- 表示されたダイアログボックスで、[新規 IP の割り当て] を 1 回クリックします。追加の IP アドレスが必要な場合は、複数回クリックします。
[IPv4 プライベート CIDR] 内のセカンダリプライベート IP アドレスを入力することもできます。 セカンダリプライベート IP アドレスを入力しないと、[IPv4 プライベート CIDR] 内の IP アドレスがランダムに割り当てられます。
- [変更] をクリックします。
- (任意)。 セカンダリプライベート IP アドレスの自動割り当てを使用している場合、[オペレーション] 列の [セカンダリプライベート IP アドレスの管理] をクリックして、割り当てられたセカンダリプライベート IP アドレスを表示し、この IP アドレスを ECS インスタンスに設定します。
- (任意)。 ターゲット ENI がアタッチされていない場合、ECS インスタンスにアタッチします。 詳細は、「インスタンス作成時の ENI のアタッチ」をご参照ください。
関連 API:AssignPrivateIpAddresses
Windows インスタンスへのセカンダリプライベート IP アドレスの割り当て
- ターゲットインスタンスに接続します。 詳細は、「概要」をご参照ください。
- [ネットワークと共有センター] を開きます。
- [アダプター設定の変更] をクリックします。
- 現在のネットワーク接続名をダブルクリックし、[プロパティ] をクリックします。
- [インターネット プロトコル バージョン 4 (TCP/IPv4)] をダブルクリックします。
- [次の IP アドレスを使う] を選択し、[詳細] をクリックします。
- [追加] をクリックし、割り当てる IP アドレスを入力し、サブネットマスクを設定します。
同じアダプターに複数の IP アドレスを追加できます。
- [OK] をクリックします。
Linux インスタンスへのセカンダリプライベート IP アドレスの割り当て
- ターゲットインスタンスに接続します。 詳細は、「概要」をご参照ください。
- インスタンスの OS に応じて以下の指示に従い、セカンダリプライベート IP アドレスを割り当てます。
次の例では、 eth0 という名前のプライマリ ENIを使用しています。 セカンダリ ENI を使用する場合、必要に応じて ENI 識別子を変更する必要があります。
- RHEL シリーズ:CentOS 6/7、Red Hat 6/7、および Aliyun Linux 17
vi /etc/sysconfig/network-scripts/ifcfg-eth0:0
コマンドを実行して、ネットワーク設定ファイルを開き、次の設定項目を追加します。
複数の IP アドレスを割り当てる場合、DEVICE=eth0:0 TYPE=Ethernet BOOTPROTO=static ONBOOT=yes IPADDR=<IPv4 address 1> NETMASK=<IPv4 mask> GATEWAY=<IPv4 gateway>
vi /etc/sysconfig/network-scripts/ifcfg-eth0:1
コマンドを実行して、ネットワーク設定ファイルを開き、次の設定項目を追加します。DEVICE=eth0:1 TYPE=Ethernet BOOTPROTO=static ONBOOT=yes IPADDR=<IPv4 address 2> NETMASK=<IPv4 mask> GATEWAY=<IPv4 gateway>
service network restart
またはsystemctl restart network
コマンドを実行して、ネットワークサービスを再起動します。
- Debian シリーズ:Ubuntu 14/16 と Debian/8/9
vi /etc/network/interfaces
コマンドを実行して、ネットワーク設定ファイルを開き、次の設定項目を追加します。auto eth0:0 iface eth0:0 inet static address <IPv4 address 1> netmask <IPv4 mask> gateway <IPv4 gateway> auto eth0:1 iface eth0:1 inet static address <IPv4 address 2> netmask <IPv4 mask> gateway <IPv4 gateway>
service networking restart
またはsystemctl restart networking
コマンドを実行して、ネットワークサービスを再起動します。
- SLES シリーズ:SUSE 11/12 と OpenSUSE 42
vi /etc/sysconfig/network/ifcfg-eth0
コマンドを実行して、ネットワーク設定ファイルを開き、次の設定項目を追加します。IPADDR_0=<IPv4 address 1> NETMASK_0=<subnet prefix length> LABEL_0='0' IPADDR_1=<IPv4 address 2> NETMASK_1=<subnet prefix length> LABEL_1='1'
service network restart
またはsystemctl restart network
コマンドを実行して、ネットワークサービスを再起動します。
- RHEL シリーズ:CentOS 6/7、Red Hat 6/7、および Aliyun Linux 17
次のステップ
セカンダリプライベート IP アドレスが不要になった場合、ターゲット ENI から 1 つ以上のセカンダリプライベート IP アドレスを取り消すことができます。 詳細は、「セカンダリプライベート IP アドレスの取り消し」をご参照ください。