LoginSignup
4
5

More than 5 years have passed since last update.

古めのCentOS(HVM)でSR-IOVに対応させる

Last updated at Posted at 2015-04-03

手元のAWS環境で動いているCentOS 6.6をSR-IOVに対応させたかったので、先人の知恵をお借りしながら作業手順をまとめました。
環境に依存する部分も大きいかと思うので、何か問題点などあればご連絡下さい。ご指摘をいただきより正しい文書に出来れば多くの方が幸せになれると考えています。

先人の知恵

http://understeer.hatenablog.com/entry/2014/04/10/151403
http://matetsu.hatenablog.com/entry/2014/08/12/132213

作業手順

RPM作成

事前準備

カーネルのヘッダなどをインストールし、rpmbuildに備えます。
(コンパイル環境などはすでに整っているものとします)

yum install -y kernel-devel-`uname -r` kernel-headers-`uname -r`

ソースの入手

ixgbevfのソースを取得します(URLは2015/04/03現在)

curl -O http://ufpr.dl.sourceforge.net/project/e1000/ixgbevf%20stable/2.16.1/ixgbevf-2.16.1.tar.gz

RPM作成

ありがたいことに、入手したソースコードはrpmbuildに対応しているので以下1行でRPMが作成できます。

rpmbuild -tb ixgbevf-2.16.1.tar.gz

RPMをインストールします

rpm -ivh ~/rpmbuild/RPMS/x86_64/ixgbevf-2.16.1-1.x86_64.rpm

設定

ixgbevfの設定

rm /etc/udev/rules.d/70-persistent-net.rules
sed -i 's:^DRIVERS=="?*":#DRIVERS=="?*":g' /lib/udev/rules.d/75-persistent-net-generator.rules ; echo '# DRIVERS=="?*", IMPORT{program}="write_net_rules"' >> /etc/udev/rules.d/75-persistent-net-generator.rules
echo "options ixgbevf InterruptThrottleRate=1,1,1,1,1,1,1,1" > /etc/modprobe.d/ixgbevf.conf
poweroff

インスタンスへのSR-IOV設定

以下の例では東京リージョンで起動している、i-XXXXXXXXというリソースIDのついたEC2をSR-IOV対応させることが出来ます。
アトリビュート変更はインスタンス停止中のみ有効です。

aws ec2 modify-instance-attribute --instance-id i-XXXXXXXX --sriov-net-support simple --region ap-northeast-1

確認は以下のコマンドを参考にして下さい。

aws ec2 describe-instance-attribute --instance-id i-XXXXXXXX --attribute sriovNetSupport --region ap-northeast-1

起動

インスタンスを起動して下さい。

問題が起こったら

  • 状況を私宛に教えて頂ければベストエフォートで調査とこのドキュメントの修正を行います
  • とりあえず立ち上げたい場合であれば、t2.microなどSR-IOVに対応してないインスタンスタイプへ変更して起動して下さい。
4
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5