- 首先是查看当前服务器的内核版本
uname -sr
# BBR内核要求是4.9+,通常来说你通过上面这个命令出来的内核版本是在3.几
2. 启用 ELRepo 仓库
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
yum install https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
3. 安装新版的稳定版内核
yum --enablerepo=elrepo-kernel install kernel-ml -y
4. 安装完毕后使用下面的命令查看是否安装成功
rpm -qa | grep kernel
kernel-3.10.0-1127.el7.x86_64
kernel-tools-3.10.0-1127.13.1.el7.x86_64
kernel-3.10.0-1127.13.1.el7.x86_64
kernel-headers-3.10.0-1127.18.2.el7.x86_64
kernel-tools-libs-3.10.0-1127.13.1.el7.x86_64
kernel-ml-5.9.12-1.el7.elrepo.x86_64
## 里面kernel-ml-5.9.12-1.el7.elrepo.x86_64就是安装的新版版本内核(可能内核版本有变化)
5. 要设置系统启动顺序
sudo egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d \'
## 排在第一的就是下次要启动的内核,从第一行为0依次数,0、1、2、3这样,看你的新内核是第几。
## 设置启动顺序
sudo grub2-set-default 0
6. 重启
reboot
7. 重启后,查看内核版本
uname -r
5.9.12-1.el7.elrepo.x86_64
## 显示为新版本内核
8. 重建内核配置
grub2-mkconfig -o /boot/grub2/grub.cfg
9. 重启
reboot
10. 在新安装好的CentOS7上面启用新内核,只需要复制下面的代码执行
echo 'net.core.default_qdisc=fq' | sudo tee -a /etc/sysctl.conf
echo 'net.ipv4.tcp_congestion_control=bbr' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
11. 然后输入下面的命令查看是否开启BBR成功
sudo sysctl net.ipv4.tcp_available_congestion_control
## 成功的话输出以下信息
net.ipv4.tcp_available_congestion_control = bbr cubic reno
## 继续验证 输入一下代码
sudo sysctl -n net.ipv4.tcp_congestion_control
## 正常输出
bbr
### 最后看内核模块是否加载
lsmod | grep bbr
## 正常输出
tcp_bbr 20480 22