有台舊的 CentOS 7 要從 c3.large 換到 c5.large
切換時發現需要有 ENA(AWS Elastic Network Adapter),不然網路會罷工
所以找了方法
步驟大概是:
1.先以 yum 將系統更新到最新版
2.按照 方法 逐步操作,首先去 git 拉檔案下來,然後再去 EPEL 裝 dkms,接這在 這裡 的步驟 5 至 7 進行 dkms 的配置,配置好了之後回到原先的 方法 繼續進行下一步,結束之後關機換 instance type 就 OK 啦!
詳細步驟
1. 更新系統 yum update
2. 拉 ENA 檔案 git clone https://github.com/amzn/amzn-drivers
3. 安裝 kernel-devel yum install "kernel-devel-uname-r == $(uname -r)" <---這個是等下 dkms 會用到的,一般預設好像都不會安裝
4. 進行 dkms 配置(需 EPEL,安裝請參考這裡)
4c.
7. 關閉可預測的網路端口名稱
8. 重新構建 grub 配置文件
9. 以 awscli 檢查 instance 的 ena 狀態,因為有些舊的 instance ena 會沒開,指令如下
aws ec2 describe-instances --instance-ids instance-id --query 'Reservations[].Instances[].EnaSupport' --region ap-northeast-1
如果檢查的結果沒有顯示 true 的話,請執行
aws ec2 modify-instance-attribute --instance-id instance-id --ena-support --region ap-northeast-1
來開啟;這邊要注意 instance-id 是你要調整的 instance 的 id,而參數 --region 是指你的 instance 所在的 region,我的是在東京,所以是 ap-northeast-1
10. 關機調整 instance type 為 c5 後重新開機即可
備註:
1.紅色字
2.aws cli 的權限部分我是用 rule,所以不加 --region 會不給跑
切換時發現需要有 ENA(AWS Elastic Network Adapter),不然網路會罷工
所以找了方法
步驟大概是:
1.先以 yum 將系統更新到最新版
2.按照 方法 逐步操作,首先去 git 拉檔案下來,然後再去 EPEL 裝 dkms,接這在 這裡 的步驟 5 至 7 進行 dkms 的配置,配置好了之後回到原先的 方法 繼續進行下一步,結束之後關機換 instance type 就 OK 啦!
詳細步驟
1. 更新系統 yum update
2. 拉 ENA 檔案 git clone https://github.com/amzn/amzn-drivers
3. 安裝 kernel-devel yum install "kernel-devel-uname-r == $(uname -r)" <---這個是等下 dkms 會用到的,一般預設好像都不會安裝
4. 進行 dkms 配置(需 EPEL,安裝請參考這裡)
4a.
mv amzn-drivers /usr/src/amzn-drivers-1.5.2
4b.
touch /usr/src/amzn-drivers-1.5.2
/dkms.conf
4c.
vim /usr/src/amzn-drivers-1.5.2
/dkms.conf
编辑文件 dkms.conf 并添加以下值。
PACKAGE_NAME="ena"
PACKAGE_VERSION="1.5.2
"
CLEAN="make -C kernel/linux/ena clean"
MAKE="make -C kernel/linux/ena/ BUILD_KERNEL=${kernelver}"
BUILT_MODULE_NAME[0]="ena"
BUILT_MODULE_LOCATION="kernel/linux/ena"
DEST_MODULE_LOCATION[0]="/updates"
DEST_MODULE_NAME[0]="ena"
AUTOINSTALL="yes"
4d.
dkms add -m amzn-drivers -v 1.5.2
4e.
dkms build -m amzn-drivers -v 1.5.2
4f.
dkms install -m amzn-drivers -v 1.5.2
5. 執行
depmod 以更新模組倚賴項
6.
dracut -f -v7. 關閉可預測的網路端口名稱
sed -i '/^GRUB\_CMDLINE\_LINUX/s/\"$/\ net\.ifnames\=0\"/' /etc/default/grub
8. 重新構建 grub 配置文件
grub2-mkconfig -o /boot/grub2/grub.cfg
9. 以 awscli 檢查 instance 的 ena 狀態,因為有些舊的 instance ena 會沒開,指令如下
aws ec2 describe-instances --instance-ids instance-id --query 'Reservations[].Instances[].EnaSupport' --region ap-northeast-1
如果檢查的結果沒有顯示 true 的話,請執行
aws ec2 modify-instance-attribute --instance-id instance-id --ena-support --region ap-northeast-1
來開啟;這邊要注意 instance-id 是你要調整的 instance 的 id,而參數 --region 是指你的 instance 所在的 region,我的是在東京,所以是 ap-northeast-1
10. 關機調整 instance type 為 c5 後重新開機即可
備註:
1.紅色字
1.5.2
是我當時抓的版本號,請參考當時原始碼版號2.aws cli 的權限部分我是用 rule,所以不加 --region 會不給跑
留言
張貼留言