Linode定制内核不能开BBR,自己装的内核默认不能加载,记录下CentOS7升级内核、加装grub2、配置启动的过程:
装elrepo编译好的最新内核和grub2
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
yum --enablerepo=elrepo-kernel install kernel-ml grub2
修改 /etc/default/grub
# vim /etc/default/grub
GRUB_TIMEOUT=2
GRUB_CMDLINE_LINUX="console=ttyS0,19200n8"
GRUB_DISABLE_LINUX_UUID=true
GRUB_SERIAL_COMMAND="serial --speed=19200 --unit=0 --word=8 --parity=no --stop=1"
GRUB_TERMINAL=serial
生成grub配置文件
grub2-mkconfig -o /boot/grub2/grub.cfg
ln -s /boot/grub2/grub.cfg /boot/grub/grub.cfg
访问 https://manager.linode.com/linodes 进入相关Linode,点击 Edit
Kernel 选择 “GRUB 2”
在 Dashboard 中重启。
如果要通过 Lish via SSH 查看启动状态,需要访问 https://manager.linode.com/profile/lish 在 Lish Keys 添加一个SSH Key 。
顺利重启的话就可以继续开启BBR了:
su 到 root 用户
# echo fq > /proc/sys/net/core/default_qdisc
# echo bbr > /proc/sys/net/ipv4/tcp_congestion_control
至此已开启了BBR,可以使用以下命令关闭 BBR 查看效果。
# echo cubic >/proc/sys/net/ipv4/tcp_congestion_control
觉得满意的话编辑 /etc/sysctl.d/99-sysctl.conf 在最后添加两行固化新的内核参数:
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
不测试直接编辑 /etc/sysctl.d/99-sysctl.conf 后执行
sysctl -p
也可以。