aws ec2开启eno增强联网,启用C5类型ec2.

什么eno?

aws官方介绍:

增强联网使用单个根 I/O 虚拟化 (SR-IOV) 在支持的实例类型上提供高性能的联网功能。SR-IOV 是一种设备虚拟化方法,与传统虚拟化网络接口相比,它不仅能提高 I/O 性能,还能降低 CPU 使用率。增强联网可以提高带宽,提高每秒数据包数 (PPS) 性能,并不断降低实例间的延迟。使用

增强联网不收取任何额外费用。

简单来说就是让你的ec2带宽吞吐上限达到一个可怕的高度。有多高?

以全新一代ec2 类型C5为例(新一代类型必须使用开启eno的AMI才可启动)

这里写图片描述

高达10Gps!!!

嗯,确实比以前的小水管快多了!!

废话少说,进入正题!

如何开启eno增强网络并制作支持eno AMI镜像

1.新建一台ec2作为制作ami镜像的机器(本实例以centos7.4为基础镜像)

2.初始化机器并下载安装eno安装包

1.yum update
2.下载安装epel源
3.yum install dkms (dkms必须 >= 2.5)
4.git clone https://github.com/amzn/amzn-drivers
5.cd amzn-drivers && depmod
6.dracut -f -v
执行完以上命令后再执行 modinfo 如出现以下提示则为安装成功

filename:       /lib/modules/4.4.11-23.53.amzn1.x86_64/kernel/drivers/amazon/net/ena/ena.ko
version:        0.6.6
license:        GPL
description:    Elastic Network Adapter (ENA)
author:         Amazon.com, Inc. or its affiliates
srcversion:     3141E47566402C79D6B8284
alias:          pci:v00001D0Fd0000EC21sv*sd*bc*sc*i*
alias:          pci:v00001D0Fd0000EC20sv*sd*bc*sc*i*
alias:          pci:v00001D0Fd00001EC2sv*sd*bc*sc*i*
alias:          pci:v00001D0Fd00000EC2sv*sd*bc*sc*i*
depends:
intree:         Y
vermagic:       4.4.11-23.53.amzn1.x86_64 SMP mod_unload modversions
parm:           debug:Debug level (0=none,...,16=all) (int)
parm:           push_mode:Descriptor / header push mode (0=automatic,1=disable,3=enable)
              0 - Automatically choose according to device capability (default)
              1 - Don't push anything to device memory
              3 - Push descriptors and header buffer to device memory (int)
parm:           enable_wd:Enable keepalive watchdog (0=disable,1=enable,default=1) (int)
parm:           enable_missing_tx_detection:Enable missing Tx completions. (default=1) (int)
parm:           numa_node_override_array:Numa node override map
 (array of int)
parm:           numa_node_override:Enable/Disable numa node override (0=disable)
 (int)

4.stop ec2

3.在另外一台机器上下载安装awscli在命令行中开启eno(可以是已经有的ec2 也可以新建)

yum install python-pip
pip install awscli
aws configure (根据提示输入AK,SK,region)
aws ec2 modify-instance-attribute --instance-id instance_id(在aws控制台上找到刚才新建的用来制作eno镜像的ec2机器的instance_id并填入) --ena-support

aws ec2 describe-instances --instance-ids instance_id(在aws控制台上找到刚才新建的用来制作eno镜像的ec2机器的instance_id并填入)  --query 'Reservations[].Instances[].EnaSupport' 确认实例是否开启eno

接着就可以直接在aws控制台上选择我们刚才已经开启eno的EC2来制作AMI镜像啦。

制作好的镜像可以通过以下命令查看是否支持eno

aws ec2 describe-images --image-id ami_id(ami的id) --query 'Images[].EnaSupport'

返回为true则为成功。至此你就可以用这个新建的支持eno的ami去创建c5,m5这些原生支持eno的ec2啦~

猜你喜欢

转载自blog.csdn.net/Dearmark/article/details/80228755