当前位置: 首页 > Linux运维 > CentOS 6/7升级最新内核并开启Google BBR

CentOS 6/7升级最新内核并开启Google BBR

Linux运维 7条评论 2018-1-19 6,457 views

Google BBR是一款TCP加速工具,但要求Linux内核必须大于4.9,之前分享过文章《CentOS一键升级内核并开启Google BBR》,这个方法虽然方便,但是发现在Raksmart上升级失败了,于是尝试手动升级内核。

CentOS 7升级最新内核

#导入ELRepo 公钥
wget https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm --import RPM-GPG-KEY-elrepo.org
#安装ELRepo
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
#升级最新内核
yum --enablerepo=elrepo-kernel install kernel-ml -y

内核升级完成后老的内核和新的会同时存在,CentOS 7 使用grub2引导程序,需要将最新内核优先级调整最高。先输入命令cat /boot/grub2/grub.cfg|grep menuentry查找所有内核,并找出最新内核的全名,并记录下来,如下截图。

#设置最新内核(请输入上面查询到的最新内核)
grub2-set-default "CentOS Linux (4.14.14-1.el7.elrepo.x86_64) 7 (Core)"
#设置完毕后,输入下面的命令查看是否成功
grub2-editenv list
[root@test2018119 ~]# grub2-editenv list
saved_entry=CentOS Linux (4.14.14-1.el7.elrepo.x86_64) 7 (Core)
#ok,没问题重启服务器生效
reboot

CentOS 6升级最新内核

#导入ELRepo 公钥
wget https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm --import RPM-GPG-KEY-elrepo.org
#安装ELRepo
rpm -Uvh http://www.elrepo.org/elrepo-release-6-8.el6.elrepo.noarch.rpm
#升级最新内核
yum --enablerepo=elrepo-kernel install kernel-ml -y

升级完毕后修改/etc/grub.conf将default=0修改为default=1,然后reboot重启服务器。

查看内核是否升级成功

输入uname -r可查看当前内核,如果大于4.9说明已经成功了,如果操作后发现你系统网络不通了,估计是升级失败挂掉了,这种情况只能从VNC控制台进入,参照上面的方式修改为原来老的内核启动。

#内核大于4.9
[root@test2018119 ~]# uname -r
4.14.14-1.el7.elrepo.x86_64

开启BBR

直接复制下面的命令即可:

#修改配置
cat >>/etc/sysctl.conf << EOF
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
EOF
#使配置生效
sysctl -p

输入下面的命令来检测,如果看到返回的结果包含bbr 说明成功了,如下截图。

[root@test2018119 ~]# sysctl net.ipv4.tcp_available_congestion_control
net.ipv4.tcp_available_congestion_control = bbr cubic reno
[root@test2018119 ~]# lsmod | grep bbr
tcp_bbr                20480  0 

总结

优先推荐使用秋水逸冰的一键脚本升级内核《CentOS一键升级内核并开启Google BBR》,如果失败了可以尝试上述方法手动升级。此方法适用于KVM/XEN虚拟化,OpenVZ虚拟化VPS请不要操作,一般不会成功,建议不要在生产环境操作,以免出现异常。

此文部分内容参考了: ELRepo : HomePage
CentOS6.X 升级内核Kernel
Centos 7 修改内核启动顺序

7 条评论 “CentOS 6/7升级最新内核并开启Google BBR”

  1. Jayz说道:

    安装完vps自带的 centos 服务器,然后用以下命令自动更新系统
    yum update -y
    更新完毕直接执行博主的命令
    #修改配置
    cat >>/etc/sysctl.conf << EOF
    net.core.default_qdisc=fq
    net.ipv4.tcp_congestion_control=bbr
    EOF
    #使配置生效
    sysctl -p
    然后bbr就搞定了
    so easy·

  2. hans说道:

    开启这个怎么用啊 对国内的主机有用吗

    1. xiaoz说道:

      主要是针对TCP丢包有用,国内主机安装这个没有太太意义。

  3. 薅羊毛说道:

    已开 感谢

  4. thornbird说道:

    开启bbr有啥用?

    1. xiaoz说道:

      TCP单边加速,对$$很有效。

    2. 值品说道:

      翻x速度比较快

发表评论

电子邮件地址不会被公开。 必填项已用*标注