更新内核的原因
想要更新内核的原因,是要开启BBR。在使用Google BBR之前,我们首先要了解它是什么。了解计算机网络的人都知道,在TCP连接中,由于需要维持连接的可靠性,引入了拥塞控制和流量管理的方法。Google BBR就是谷歌公司提出的一个开源TCP拥塞控制的算法。在最新的linux 4.9及以上的内核版本中已被采用。对于该算法的分析,ss不经过其它的任何的优化就能轻松的跑满带宽。
升级的方法
升级Centos7的内核有两种,一种是使用bbr脚本直接更新内核,另一种是手动升级。
使用bbr脚本升级
(1)使用root用户登录;
(2)下载执行bbr脚本:
wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh && chmod +x bbr.sh && ./bbr.sh
安装完成后,脚本会提示需要重启 VPS,输入 y 并回车后重启。
重启完成后,进入 VPS,验证一下是否成功安装最新内核并开启 TCP BBR,输入uname -r 查看内核版本
![](https://img.haomeiwen.com/i6839275/8cac9fbd64503ee2.png)
手动升级
首先找了一台没有升级内核的服务器
![](https://img.haomeiwen.com/i6839275/960ef068837fedd9.png)
计划使用yum升级内核。
首先打开elrepo
![](https://img.haomeiwen.com/i6839275/fcb9ac287f3687da.png)
导入public key: rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
![](https://img.haomeiwen.com/i6839275/61d89649fd0efcab.png)
执行 yum install https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
![](https://img.haomeiwen.com/i6839275/24687fc68cb7e6b5.png)
接着安装kernel,也就是内核:
yum --enablerepo=elrepo-kernel install kernel-ml-devel kernel-ml -y
需要注意的是kernel-ml中的ml是最新版的,需要更新长期维护的稳定版的换成lt
![](https://img.haomeiwen.com/i6839275/5045494c069f9ef5.png)
![](https://img.haomeiwen.com/i6839275/dbab44df9e959798.png)
这里,选择更新ml版本的
![](https://img.haomeiwen.com/i6839275/fecc1dea566c57e0.png)
安装完成之后kernel还没有修改,执行rpm -qa | grep kernel可以看到安装了新的kernel
![](https://img.haomeiwen.com/i6839275/736027850dfbcf2e.png)
kernel-ml-5.0.8-1.el7.elrepo.x86_64就是新安装的kernek。
设置kernel默认启动项
grub2-set-default "kernel-ml-5.0.8-1"
查看默认启动项 grub2-editenv list
![](https://img.haomeiwen.com/i6839275/19109383c40d10bd.png)
reboot,重启完成之后重新执行uname -r,内核已经换成新版本的了
![](https://img.haomeiwen.com/i6839275/3a7f678fb8e5b82c.png)
总结
其实bbr脚本的更新原理跟手动更新是一样的
![](https://img.haomeiwen.com/i6839275/6e81578168114d44.png)
有轮子了就不要再自己造轮子了。
网友评论