メニュー
Amazon Elastic Compute Cloud
Linux インスタンス用ユーザーガイド

VPC 内の Linux インスタンスでの拡張ネットワーキングの有効化

Amazon EC2 には、サポートされているインスタンスタイプに対してシングルルート I/O 仮想化(SR-IOV)を使用した拡張ネットワーキング機能が搭載されています。インスタンスで拡張ネットワーキング機能を有効化すると、パフォーマンス(秒あたりのパケット数)が拡張され、レイテンシーが低くなり、お客様の手間が省略されます。

インスタンスで拡張ネットワーキング機能を有効化するには、カーネルの ixgbevf モジュールがインストールされていることと、インスタンスの sriovNetSupport 属性が設定済みであることを確認する必要があります。最適なパフォーマンスを得るには、ixgbevf モジュールのバージョン 2.14.2 以上を使用することをお勧めします。

Important

最新の Amazon Linux HVM AMI では、拡張ネットワーキングに必要なモジュールがインストールされており、必要な属性も設定されています。したがって、拡張ネットワーキングがサポートされている、Amazon EBS-Backed インスタンスを最新の Amazon Linux HVM AMI を使用して起動した場合は、拡張ネットワーキングが既に有効化されています。

Windows での手順については、Microsoft Windows インスタンスの Amazon EC2 ユーザーガイドVPC 内の Windows インスタンスで拡張ネットワーキングを有効化するに説明があります。

拡張ネットワーキングをサポートするインスタンス

拡張ネットワーキングは、次のインスタンスでサポートされています。

  • C3

  • C4

  • D2

  • I2

  • M4

  • R3

インスタンスタイプの詳細については、「Amazon EC2 インスタンス」を参照してください。

要件

拡張ネットワーキングを有効にする前に、以下の点を確認してください。

  • Linux カーネルバージョン 2.6.32 以上で、HVM AMI からインスタンスを起動します。

  • サポートされているインスタンスタイプを使用して、インスタンスを起動します。詳細については、「拡張ネットワーキングをサポートするインスタンス」を参照してください。

  • VPC 内でインスタンスを起動している(インスタンスが EC2-Classic 内で動作している場合、拡張ネットワーキングを有効にできません)。

  • AWS CLI または Amazon EC2 CLI ツールを、選択した任意のコンピュータ(できればローカルのデスクトップまたはノート PC)にインストールして設定します。詳細については、「Amazon EC2 へのアクセス」を参照してください。Amazon EC2 CLI ツールを選択する場合は、バージョン 1.6.12.0 以降をインストールします。CLI ツールのバージョンを確認するには、ec2-version コマンドを使用できます。

  • インスタンスに保存しておく必要がある重要なデータがある場合は、スナップショットを作成することによって、Amazon EBS-backed インスタンスのスナップショットを作成するか、instance store-backed インスタンスの AMIを作成することによって、ここでデータをバックアップする必要があります。カーネルとカーネルモジュールを更新し、sriovNetSupport 属性を有効にすると、互換性のないインスタンスが作成されたり、オペレーティングシステムにアクセスできなくなる場合があります。最新のバックアップがあれば、このような場合でもデータは保持されます。

拡張ネットワーキングが有効化されているかどうかのテスト

拡張ネットワーキングが既に有効になっているかどうかをテストするには、ixgbevf モジュールがインスタンスにインストールされていることと、sriovNetSupport 属性が設定されていることを確認します。インスタンスがこれら 2 つの条件を満たしている場合は、ethtool -i ethn コマンドによって、ネットワークインターフェイスで使用されているモジュールが表示されます。

カーネルモジュール(ixgbevf)

ixgbevf モジュールがインストールされていることと、そのバージョン拡張ネットワーキングと互換性があることを確認するには、次のように modinfo コマンドを使用します。

[ec2-user ~]$ modinfo ixgbevf
filename:       /lib/modules/3.10.48-55.140.amzn1.x86_64/kernel/drivers/amazon/ixgbevf/ixgbevf.ko
version:        2.14.2
license:        GPL
description:    Intel(R) 82599 Virtual Function Driver
author:         Intel Corporation, <linux.nics@intel.com>
srcversion:     50CBF6F36B99FE70E56C95A
alias:          pci:v00008086d00001515sv*sd*bc*sc*i*
alias:          pci:v00008086d000010EDsv*sd*bc*sc*i*
depends:
intree:         Y
vermagic:       3.10.48-55.140.amzn1.x86_64 SMP mod_unload modversions
parm:           InterruptThrottleRate:Maximum interrupts per second, per vector, (956-488281, 0=off, 1=dynamic), default 1 (array of int)

前述の Amazon Linux の場合、ixgbevf モジュールは既にインストールされており、最小推奨バージョン(2.14.2)です。

ubuntu:~$ modinfo ixgbevf
filename:       /lib/modules/3.13.0-29-generic/kernel/drivers/net/ethernet/intel/ixgbevf/ixgbevf.ko
version:        2.11.3-k
license:        GPL
description:    Intel(R) 82599 Virtual Function Driver
author:         Intel Corporation, <linux.nics@intel.com>
srcversion:     0816EA811025C8062A9C269
alias:          pci:v00008086d00001515sv*sd*bc*sc*i*
alias:          pci:v00008086d000010EDsv*sd*bc*sc*i*
depends:
intree:         Y
vermagic:       3.13.0-29-generic SMP mod_unload modversions
signer:         Magrathea: Glacier signing key
sig_key:        66:02:CB:36:F1:31:3B:EA:01:C4:BD:A9:65:67:CF:A7:23:C9:70:D8
sig_hashalgo:   sha512
parm:           debug:Debug level (0=none,...,16=all) (int)

前述の Ubuntu インスタンスでは、モジュールはインストールされていますが、バージョンは 2.11.3-k であり、推奨されるバージョン 2.14.2 に含まれている最新のバグ修正の一部が含まれていない場合があります。この場合、ixgbevf モジュールは機能しますが、最適なエクスペリエンスのために、新しいバージョンをインスタンスにインストールしてロードすることができます。

インスタンス属性(sriovNetSupport)

インスタンスに拡張ネットワーキング属性が設定されているかどうかを確認するには、次のいずれかのコマンドを使用します。

  • describe-instance-attribute (AWS CLI)

    $ aws ec2 describe-instance-attribute --instance-id instance_id --attribute sriovNetSupport

    拡張ネットワーキング属性が設定されていない場合、SriovNetSupport は空です。そうでない場合、次のように設定されています。

    "SriovNetSupport": {
        "Value": "simple"
    },
  • ec2-describe-instance-attribute (Amazon EC2 CLI)

    $ ec2-describe-instance-attribute instance_id --sriov

    拡張ネットワーキング属性が設定されていない場合、このコマンドに対する出力はありません。そうでない場合、出力は次のようになります。

    sriovNetSupport instance_id   simple

イメージ属性(sriovNetSupport)

AMI に拡張ネットワーキング属性が既に設定されているかどうかを確認するには、次のいずれかのコマンドを使用します。

  • describe-image-attribute (AWS CLI)

    $ aws ec2 describe-image-attribute --image-id ami_id --attribute sriovNetSupport

    Note

    このコマンドは、所有しているイメージに対してのみ機能します。自分のアカウントに属していないイメージについては、AuthFailure エラーが出力される可能性があります。

    拡張ネットワーキング属性が設定されていない場合、SriovNetSupport は空です。そうでない場合、次のように設定されています。

    "SriovNetSupport": {
        "Value": "simple"
    },
  • ec2-describe-image-attribute (Amazon EC2 CLI)

    $ ec2-describe-image-attribute ami_id --sriov

    Note

    このコマンドは、所有しているイメージに対してのみ機能します。自分のアカウントに属していないイメージについては、AuthFailure エラーが出力されます。

    拡張ネットワーキング属性が設定されていない場合、このコマンドに対する出力はありません。そうでない場合、出力は次のようになります。

    sriovNetSupport ami_id        simple

ネットワークインターフェイスドライバ

モジュールが特定のインターフェイスで使用されていることを確認するには、確認するインターフェイス名に置き換えて、次のコマンドを使用します。単一のインターフェイス(デフォルト)を使用している場合は、eth0 です。

[ec2-user ~]$ ethtool -i eth0
driver: vif
version:
firmware-version:
bus-info: vif-0
supports-statistics: yes
supports-test: no
supports-eeprom-access: no
supports-register-dump: no
supports-priv-flags: no

前述の場合、リストされているドライバは ixgbevf であるため、vif モジュールはロードされていません。

[ec2-user ~]$ ethtool -i eth0
driver: ixgbevf
version: 2.14.2
firmware-version: N/A
bus-info: 0000:00:03.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: no
supports-register-dump: yes
supports-priv-flags: no

この場合、ixgbevf モジュールはロードされており、最小推奨バージョンです。このインスタンスでは、拡張ネットワーキングが適切に設定されています。

Amazon Linux での拡張ネットワーキングの有効化

最新の Amazon Linux HVM AMI では、拡張ネットワーキングに必要なモジュールがインストールされており、必要な属性も設定されています。したがって、C3、C4、R3、I2 のいずれかの Amazon EBS-Backed インスタンスを最新の Amazon Linux HVM AMI を使用して起動した場合は、拡張ネットワーキングが既にインスタンスに対して有効になっています。詳細については、「拡張ネットワーキングが有効化されているかどうかのテスト」を参照してください。

以前の Amazon Linux AMI を使用してインスタンスを起動し、まだ拡張ネットワーキングが有効になっていない場合、拡張ネットワーキングを有効にするには次の手順を実行します。

拡張ネットワーキングを有効にするには(EBS-backed インスタンス)

  1. インスタンスに接続します。

  2. インスタンスから、次のコマンドを実行して、ixgbevf を含む最新のカーネルとカーネルモジュールでインスタンスを更新します。

    [ec2-user ~]$ sudo yum update
  3. ローカルコンピュータから、Amazon EC2 コンソールまたは次のいずれかのコマンドを使用してインスタンスを再起動します。reboot-instances (AWS CLI)または ec2-reboot-instances (Amazon EC2 CLI)。

  4. インスタンスに再接続し、「ixgbevf」の modinfo コマンドを使用して、拡張ネットワーキングが有効化されているかどうかのテストixgbevf モジュールがインストールされ、最小推奨バージョンであることを確認します。

  5. ローカルコンピュータから、Amazon EC2 コンソールまたは次のいずれかのコマンドを使用してインスタンスを停止します。stop-instances (AWS CLI)または ec2-stop-instances (Amazon EC2 CLI)。インスタンスを AWS OpsWorks で管理する場合、インスタンスの状態が同期し続けるために、AWS OpsWorks コンソールでインスタンスを停止する必要があります。

    Important

    instance store-backed インスタンスを使用している場合、インスタンスを停止することはできません。代わりに、「拡張ネットワーキングを有効にするには(Instance store-backed インスタンス)」に進みます。

  6. ローカルコンピュータから、次のいずれかのコマンドを使用して拡張ネットワーキング属性を有効にします。

    Warning

    拡張ネットワーキング属性は、いったん有効にすると無効にする方法はありません。

    Warning

    拡張ネットワーキングは、HVM インスタンスでのみサポートされています。PV インスタンスで拡張ネットワーキングを有効にすると、このインスタンスに到達できなくなります。 また、適切なモジュールまたはモジュールバージョンを使用せずにこの属性を設定すると、インスタンスにアクセスできなくなる場合があります。

  7. (オプション)「Amazon EBS-Backed Linux AMI の作成」の説明に従って、インスタンスから AMI を作成します。AMI は、インスタンスから拡張ネットワーキング属性を継承します。このため、この AMI を使用することで、拡張ネットワーキングがデフォルトで有効になっている別のインスタンスを起動できます。

  8. ローカルコンピュータから、Amazon EC2 コンソールまたは次のいずれかのコマンドを使用してインスタンスを開始します。start-instances (AWS CLI)または ec2-start-instances (Amazon EC2 CLI)。インスタンスを AWS OpsWorks で管理する場合、インスタンスの状態が同期し続けるために、AWS OpsWorks コンソールでインスタンスを停止する必要があります。

  9. インスタンスに接続し、「ixgbevf」の ethtool -i ethn コマンドを使用して、拡張ネットワーキングが有効化されているかどうかのテスト モジュールがインストールされ、ネットワークインターフェイスにロードされていることを確認します。

拡張ネットワーキングを有効にするには(Instance store-backed インスタンス)

インスタンスが instance store–backed インスタンスである場合、前の手順の「Step 1」から「Step 4」までを実行し、Instance Store-Backed Linux AMI の作成」の説明に従って新しい AMI を作成します。AMI を登録するときに、必ず拡張ネットワーキング属性を有効化してください。

  • register-image (AWS CLI)

    $ aws ec2 register-image --sriov-net-support simple ...
  • ec2-register (Amazon EC2 CLI)

    $ ec2-register --sriov simple ...

Ubuntu での拡張ネットワーキングの有効化

次の手順では、Ubuntu インスタンスで拡張ネットワーキングを有効にする場合の一般的なステップを説明します。

Ubuntu で拡張ネットワーキングを有効にするには(EBS-backed インスタンス)

  1. インスタンスに接続します。

  2. パッケージキャッシュおよびパッケージを更新します。

    ubuntu:~$ sudo apt-get update && sudo apt-get upgrade -y

    Important

    更新プロセス中に grub をインストールするよう求められた場合は、 のインストール先として /dev/xvdagrub を使用し、現在のバージョンの /boot/grub/menu.lst を保持することを選択します。

  3. カーネルが更新されるたびに ixgbevf モジュールが再ビルドされるように、dkms パッケージをインストールします。

    ubuntu:~$ sudo apt-get install -y dkms
  4. Sourceforge(ixgbevfhttp://sourceforge.net/projects/e1000/files/ixgbevf%20stable/.)からインスタンスにバージョン 2.16.4 の

    Note

    モジュールのソースをダウンロードします。

    旧バージョンの ixgbevf (最小推奨バージョン 2.14.2 も含む) は、Ubuntu のバージョンによっては適切にビルドされない場合があります。Ubuntu のインスタンスには、バージョン 2.16.4 の ixgbevf を使用してください。

    ubuntu:~$ wget "sourceforge.net/projects/e1000/files/ixgbevf stable/2.16.4/ixgbevf-2.16.4.tar.gz"
  5. ixgbevf パッケージを解凍します。

    ubuntu:~$ tar -xzf ixgbevf-2.16.4.tar.gz
  6. ixgbevf パッケージを /usr/src/ ディレクトリに移動して、カーネルの更新のたびに dkms がこのパッケージを見つけてビルドできるようにします。

    ubuntu:~$ sudo mv ixgbevf-2.16.4 /usr/src/
  7. 以下の値を使用し、 の使用しているバージョンに置き換えて、dkmsixgbevf 設定ファイルを作成します。

    1. ファイルを作成します。

      ubuntu:~$ sudo touch /usr/src/ixgbevf-2.16.4/dkms.conf
    2. ファイルを編集し、次の値を追加します。

      ubuntu:~$ sudo vim /usr/src/ixgbevf-2.16.4/dkms.conf
      PACKAGE_NAME="ixgbevf"
      PACKAGE_VERSION="2.16.4"
      CLEAN="cd src/; make clean"
      MAKE="cd src/; make BUILD_KERNEL=${kernelver}"
      BUILT_MODULE_LOCATION[0]="src/"
      BUILT_MODULE_NAME[0]="ixgbevf"
      DEST_MODULE_LOCATION[0]="/updates"
      DEST_MODULE_NAME[0]="ixgbevf"
      AUTOINSTALL="yes"
  8. dkms を使用して、インスタンスで ixgbevfモジュールを追加、ビルド、およびインストールします。

    1. dkms にモジュールを追加します。

      ubuntu:~$ sudo dkms add -m ixgbevf -v 2.16.4
    2. dkms を使用してモジュールをビルドします。

      ubuntu:~$ sudo dkms build -m ixgbevf -v 2.16.4
    3. dkms を使用してモジュールをインストールします。

      ubuntu:~$ sudo dkms install -m ixgbevf -v 2.16.4
  9. 起動時に正しいモジュールがロードされるように、initramfs を再ビルドします。

    ubuntu:~$ sudo update-initramfs -c -k all
  10. ixgbevf」の modinfo コマンドを使用して、拡張ネットワーキングが有効化されているかどうかのテストixgbevf モジュールがインストールされ、最小推奨バージョンであることを確認します。

    ubuntu:~$ modinfo ixgbevf
    filename:       /lib/modules/3.13.0-74-generic/updates/dkms/ixgbevf.ko
    version:        2.16.4
    license:        GPL
    description:    Intel(R) 10 Gigabit Virtual Function Network Driver
    author:         Intel Corporation, <linux.nics@intel.com>
    srcversion:     759A432E3151C8F9F6EA882
    alias:          pci:v00008086d00001515sv*sd*bc*sc*i*
    alias:          pci:v00008086d000010EDsv*sd*bc*sc*i*
    depends:
    vermagic:       3.13.0-74-generic SMP mod_unload modversions
    parm:           InterruptThrottleRate:Maximum interrupts per second, per vector, (956-488281, 0=off, 1=dynamic), default 1 (array of int)
  11. ローカルコンピュータから、Amazon EC2 コンソールまたは次のいずれかのコマンドを使用してインスタンスを停止します。stop-instances (AWS CLI)または ec2-stop-instances (Amazon EC2 CLI)。インスタンスを AWS OpsWorks で管理する場合、インスタンスの状態が同期し続けるために、AWS OpsWorks コンソールでインスタンスを停止する必要があります。

    Important

    instance store-backed インスタンスを使用している場合、インスタンスを停止することはできません。代わりに、「Ubuntu で拡張ネットワーキングを有効にするには(Instance store-backed インスタンス)」に進みます。

  12. ローカルコンピュータから、次のいずれかのコマンドを使用して拡張ネットワーキングの属性を有効化します。このネットワーキング属性は、いったん有効化すると無効化できないことに注意してください。

    Warning

    拡張ネットワーキングは、HVM インスタンスでのみサポートされています。PV インスタンスで拡張ネットワーキングを有効にすると、このインスタンスに到達できなくなります。 また、適切なモジュールまたはモジュールバージョンを使用せずにこの属性を設定すると、インスタンスにアクセスできなくなる場合があります。

  13. (オプション)「Amazon EBS-Backed Linux AMI の作成」の説明に従って、インスタンスから AMI を作成します。AMI は、インスタンスから拡張ネットワーキング属性を継承します。このため、この AMI を使用することで、拡張ネットワーキングがデフォルトで有効になっている別のインスタンスを起動できます。

  14. ローカルコンピュータから、Amazon EC2 コンソールまたは次のいずれかのコマンドを使用してインスタンスを開始します。start-instances (AWS CLI)または ec2-start-instances (Amazon EC2 CLI)。インスタンスを AWS OpsWorks で管理する場合、インスタンスの状態が同期し続けるために、AWS OpsWorks コンソールでインスタンスを停止する必要があります。

  15. (オプション)インスタンスに接続し、モジュールがインストールされていることを確認します。

Ubuntu で拡張ネットワーキングを有効にするには(Instance store-backed インスタンス)

インスタンスが instance store–backed インスタンスである場合、前の手順の「Step 1」から「Step 10」までを実行し、「Instance Store-Backed Linux AMI の作成」の説明に従って新しい AMI を作成します。AMI を登録するときに、必ず拡張ネットワーキング属性を有効化してください。

Warning

拡張ネットワーキングは、HVM インスタンスでのみサポートされています。PV インスタンスで拡張ネットワーキングを有効にすると、このインスタンスに到達できなくなります。 また、適切なモジュールまたはモジュールバージョンを使用せずにこの属性を設定すると、インスタンスにアクセスできなくなる場合があります。

  • register-image (AWS CLI)

    $ aws ec2 register-image --sriov-net-support simple ...
  • ec2-register (Amazon EC2 CLI)

    $ ec2-register --sriov simple ...

他の Linux ディストリビューションでの拡張ネットワーキングの有効化

次の手順では、Amazon Linux または Ubuntu 以外の Linux ディストリビューションで拡張ネットワーキングを有効にする場合の一般的なステップを説明します。コマンドの詳細な構文、ファイルの場所、パッケージやツールのサポートなどの詳細については、使用する Linux ディストリビューションのドキュメントを参照してください。

Linux で拡張ネットワーキングを有効にするには(EBS-backed インスタンス)

  1. インスタンスに接続します。

  2. Sourceforge(http://sourceforge.net/projects/e1000/files/ixgbevf%20stable/)からインスタンスにバージョン 2.14.2 の ixgbevf モジュールのソースをダウンロードします。これは拡張ネットワーキングで推奨される最小バージョンです。

    Note

    旧バージョンの ixgbevf (最小推奨バージョン 2.14.2 も含む) は、一部の Linux ディストリビューション (特定のバージョンの Ubuntu など) では適切にビルドされません。ビルドエラーが表示された場合は、より新しいバージョンの 2.16.4 などを試してください (2.16.4 では該当バージョンの Ubuntu でのビルドエラーが修復されます)。

  3. インスタンスで ixgbevf モジュールをコンパイルし、インストールします。

    ディストリビューションが dkms をサポートしている場合は、システムのカーネルが更新されるたびに ixgbevf モジュールを再コンパイルするように dkms を設定することを検討してください。ディストリビューションが dkms をネイティブにサポートしていない場合、Red Hat Enterprise Linux バリアントの場合は、EPEL リポジトリ(https://fedoraproject.org/wiki/EPEL)で見つけることができます。または、http://linux.dell.com/dkms/ でこのソフトウェアをダウンロードできます。dkms の設定については、「Ubuntu で拡張ネットワーキングを有効にするには(EBS-backed インスタンス)」の「Step 6」から「Step 8」までを参照してください。

    Warning

    現在のカーネル用に ixgbevf モジュールをコンパイルし、新しいカーネル用のドライバを再ビルドしないでカーネルをアップグレードすると、次回再起動したときに、システムがディストリビューション固有の ixgbevf モジュールに戻る場合があります。ディストリビューション固有のバージョンと拡張ネットワーキングに互換性がない場合、システムにアクセスできなくなる可能性があります。

  4. sudo depmod コマンドを実行して、モジュールの依存関係を更新します。

  5. 起動時に新しいモジュールがロードされるように、インスタンスの initramfs を更新します。

  6. システムがデフォルトで予測可能なネットワークインターフェイス名を使用するかどうかを確認します。systemd または udev のバージョン 197 以上を使用するシステムの場合、イーサネットデバイスの名前を変更でき、単一ネットワークインターフェイスの名前が eth0 になることは保証されません。この動作は、インスタンスに接続する際に問題の原因となる可能性があります。予測可能なネットワークインターフェイス名の詳細、およびその他の設定オプションを確認するには、http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/ を参照してください。

    1. 次のコマンドで RPM ベースのシステムの systemd または udev のバージョンを確認できます。

      [ec2-user ~]$ rpm -qa | grep -e '^systemd-[0-9]\+\|^udev-[0-9]\+'
      systemd-208-11.el7_0.2.x86_64

      前述の Red Hat 7 の例では、systemd のバージョンは 208 であるため、予測可能なネットワークインターフェイス名を無効にする必要があります。

    2. /etc/default/grubGRUB_CMDLINE_LINUX 行に net.ifnames=0 オプションを追加することによって、予測可能なネットワークインターフェイス名を無効にします。

      [ec2-user ~]$ sudo sed -i '/^GRUB\_CMDLINE\_LINUX/s/\"$/\ net\.ifnames\=0\"/' /etc/default/grub
    3. grub の設定ファイルを再ビルドします。

      [ec2-user ~]$ sudo grub2-mkconfig -o /boot/grub2/grub.cfg
  7. ローカルコンピュータから、Amazon EC2 コンソールまたは次のいずれかのコマンドを使用してインスタンスを停止します。stop-instances (AWS CLI)または ec2-stop-instances (Amazon EC2 CLI)。インスタンスを AWS OpsWorks で管理する場合、インスタンスの状態が同期し続けるために、AWS OpsWorks コンソールでインスタンスを停止する必要があります。

    Important

    instance store-backed インスタンスを使用している場合、インスタンスを停止することはできません。代わりに、「拡張ネットワーキングを有効にするには(Instance store-backed インスタンス)」に進みます。

  8. ローカルコンピュータから、次のいずれかのコマンドを使用して拡張ネットワーキングの属性を有効化します。このネットワーキング属性は、いったん有効化すると無効化できないことに注意してください。

    Warning

    拡張ネットワーキングは、HVM インスタンスでのみサポートされています。PV インスタンスで拡張ネットワーキングを有効にすると、このインスタンスに到達できなくなります。 また、適切なモジュールまたはモジュールバージョンを使用せずにこの属性を設定すると、インスタンスにアクセスできなくなる場合があります。

  9. (オプション)「Amazon EBS-Backed Linux AMI の作成」の説明に従って、インスタンスから AMI を作成します。AMI は、インスタンスから拡張ネットワーキング属性を継承します。このため、この AMI を使用することで、拡張ネットワーキングがデフォルトで有効になっている別のインスタンスを起動できます。

    Important

    インスタンスのオペレーティングシステムに /etc/udev/rules.d/70-persistent-net.rules ファイルが含まれている場合は、そのファイルを AMI の作成前に削除する必要があります。このファイルには、元のインスタンスのイーサネットアダプターの MAC アドレスが保存されています。別のインスタンスがこのファイルを使用して起動した場合、オペレーティングシステムがそのデバイスを検出できなくなり、eth0 が失敗して、起動に関する問題が発生することがあります。このファイルは次の起動サイクルで再び生成され、AMI から起動されるインスタンスごとに独自のバージョンが作成されます。

  10. ローカルコンピュータから、Amazon EC2 コンソールまたは次のいずれかのコマンドを使用してインスタンスを開始します。start-instances (AWS CLI)または ec2-start-instances (Amazon EC2 CLI)。インスタンスを AWS OpsWorks で管理する場合、インスタンスの状態が同期し続けるために、AWS OpsWorks コンソールでインスタンスを停止する必要があります。

  11. (オプション)インスタンスに接続し、モジュールがインストールされていることを確認します。

拡張ネットワーキングを有効にするには(Instance store-backed インスタンス)

インスタンスが instance store–backed インスタンスである場合、前の手順の「Step 1」から「Step 5」までを実行し、「Instance Store-Backed Linux AMI の作成」の説明に従って新しい AMI を作成します。AMI を登録するときに、必ず拡張ネットワーキング属性を有効化してください。

Warning

拡張ネットワーキングは、HVM インスタンスでのみサポートされています。PV インスタンスで拡張ネットワーキングを有効にすると、このインスタンスに到達できなくなります。 また、適切なモジュールまたはモジュールバージョンを使用せずにこの属性を設定すると、インスタンスにアクセスできなくなる場合があります。

  • register-image (AWS CLI)

    $ aws ec2 register-image --sriov-net-support simple ...
  • ec2-register (Amazon EC2 CLI)

    $ ec2-register --sriov simple ...

接続性の問題のトラブルシューティング

拡張ネットワーキングを有効化しているときに接続が失われると、ixgbevf モジュールとカーネルの互換性が保たれない可能性があります。この場合、インスタンスの Linux ディストリビューションに含まれる ixgbevf モジュールのバージョンをインストールしてみます。

PV インスタンスまたは AMI で拡張ネットワーキングを有効にすると、お使いのインスタンスに到達できなくなります。