优质VPS推荐
VPS优惠 评测

Linux内核Centos7系统如何安装BBR教程

什么是Google BBR

Google BBR就是谷歌公司提出的一个开源TCP拥塞控制的算法,通俗来讲就是对Linux内核TCP协议的优化从而达到提速的目的。但是注意的是,但是bbr不能改变地理位置的限制,也就是说他不会改变网络的线路;安装和开启bbr往往要更新内核,因此对于VPS而言,推荐选择KVM构架。本文讲bbr在CentOS 7下的安装和启用的方法.

1,如何在Centos7上安装BBR

1、yum系统更新
输入 yum update
下载更新内容后,按 Y 确认更新
2、查看系统版本
cat /etc/redhat-release
输出如下则表示已升级到7.7 或更新版本
CentOS Linux release 7.7.1908 (Core)

3、Centos7 安装elrepo并升级内核:

centos7

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 -y

centos8.0

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh https://www.elrepo.org/elrepo-release-8.0-2.el8.elrepo.noarch.rpm

启用 ELRepo 源仓库:
`yum --disablerepo="*" --enablerepo="elrepo-kernel" list available`
`yum -y --enablerepo=elrepo-kernel install kernel-ml kernel-ml-devel`

正常情况下将输出如下信息:

Transaction Summary
===================================================================================
Install  1 Package

Total download size: 46 M
Installed size: 205 M
Downloading packages:
kernel-ml-5.4.1-1.el7.elrepo.x86_64.rpm                                           |  46 MB  00:00:19
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Warning: RPMDB altered outside of yum.
  Installing : kernel-ml-5.4.1-1.el7.elrepo.x86_64                                               1/1
  Verifying  : kernel-ml-5.4.1-1.el7.elrepo.x86_64                                               1/1

Installed:
  kernel-ml-5.4.1-1.el7.elrepo.x86_64

Complete!

表示更新内核成功.

使用下面命令查看当前有哪些内核
rpm -qa |grep kernel
举例内核列表 排位0~5个

0 kernel-devel-3.10.0-1062.el7.x86_64
1 kernel-ml-devel-5.4.1-1.el7.elrepo.x86_64
2 kernel-tools-libs-3.10.0-1062.el7.x86_64
3 kernel-3.10.0-1062.el7.x86_64
4 kernel-tools-3.10.0-1062.el7.x86_64
5 kernel-ml-5.4.1-1.el7.elrepo.x86_64

可以看到,一般自带的是 3.XX版 ,新增加了 5.XX版本
比如我们要把CentOS Linux (ml-5.4.1-1.el7.elrepo.x86_64)内核设置为默认
顺便说一下内核版本的含义:ml-5.4.1-1.el7.elrepo.x86_64
ml:mainline 代表主线 5主版本 4代表修订版本 1表示错误修正次数 EL7代表Enterprise Linux 最高支持7G内存 elrepo是国外一个开源库名称 X86_64代表64位系统

选择排位5的最新内核 (你要自己看是排位几)
grub2-set-default 5

查看当前默认内核启动项:
grub2-editenv list
确认已更改成需要的内核后
然后重启

reboot

重新链接后最后
uname -r
返回 以下内容表示内核升级到了最新

5.4.1-1.el7.elrepo.x86_64

然后我们开始设置BBR(注意: 如果重启后发现内核还是旧版本,请先看本文第二段的方法启用新内核.,再回来此步往下)

编辑sysctl.conf

vi /etc/sysctl.conf

在sysctl.conf里面添加如下内容

net.core.default_qdisc = fq
net.ipv4.tcp_congestion_control = bbr

输入下面的代码加载参数使其生效
sysctl -p

不懂XSHELL下如何编辑看教程:
https://www.pigji.com/158.html

正常情况下会输出我们之前加入的内容:显示

net.core.default_qdisc = fq
net.ipv4.tcp_congestion_control = bbr

好了,现在开始可以验证bbr是否已经开启

如果输入
sysctl net.ipv4.tcp_available_congestion_control
返回以下内容

net.ipv4.tcp_available_congestion_control = reno cubic bbr

如果输入
sysctl net.ipv4.tcp_congestion_control
返回以下内容

net.ipv4.tcp_congestion_control = bbr

则表示内核已开启BBR
如果输入
lsmod | grep bbr
返回以下内容,表示BBR启动成功

tcp_bbr                20480  2

如何关闭BBR插件

sed -i '/net\.core\.default_qdisc=fq/d' /etc/sysctl.conf
sed -i '/net\.ipv4\.tcp_congestion_control=bbr/d' /etc/sysctl.conf
sysctl -p

好了,BBR的安装教程结束.
Linux内核版本一直更新.如果版本出现新的与本文有出入自行判断.

2,修改 grub 配置使用新内核版本启动

查看当前默认启动内核:
dnf install grubby
grubby --default-kernel

当前最新版本 5.7.10,一般安装完就会以最新内核启动,回返回信息:
/boot/vmlinuz-5.7.10-1.el8.elrepo.x86_64

如不是最新内核,显示查看所有内核:
grubby --info=ALL

列表大概如下图: 排列是从0开始的

index=0
kernel="/boot/vmlinuz-5.7.10-1.el8.elrepo.x86_64"
args="ro crashkernel=auto biosdevname=0 net.ifnames=0 rhgb quiet $tuned_params"
root="UUID=fb06df01-a38e-4da4-beed-12f052e55eb2"
initrd="/boot/initramfs-5.7.10-1.el8.elrepo.x86_64.img $tuned_initrd"
title="Red Hat Enterprise Linux (5.7.10-1.el8.elrepo.x86_64) 8.2 (Ootpa)"
id="2f77be462c964e7eba380ecec932f095-5.7.10-1.el8.elrepo.x86_64"
index=1
kernel="/boot/vmlinuz-4.18.0-193.6.3.el8_2.x86_64"
args="ro crashkernel=auto biosdevname=0 net.ifnames=0 rhgb quiet $tuned_params"
root="UUID=fb06df01-a38e-4da4-beed-12f052e55eb2"
initrd="/boot/initramfs-4.18.0-193.6.3.el8_2.x86_64.img $tuned_initrd"
title="CentOS Linux (4.18.0-193.6.3.el8_2.x86_64) 8 (Core)"
id="2f77be462c964e7eba380ecec932f095-4.18.0-193.6.3.el8_2.x86_64"
index=2
kernel="/boot/vmlinuz-0-rescue-2f77be462c964e7eba380ecec932f095"
args="ro crashkernel=auto biosdevname=0 net.ifnames=0 rhgb quiet"
root="UUID=fb06df01-a38e-4da4-beed-12f052e55eb2"
initrd="/boot/initramfs-0-rescue-2f77be462c964e7eba380ecec932f095.img"
title="CentOS Linux (0-rescue-2f77be462c964e7eba380ecec932f095) 8 (Core)"
id="2f77be462c964e7eba380ecec932f095-0-rescue"

然后指定最新的内核就行
grubby --set-default /boot/vmlinuz-5.7.10-1.el8.elrepo.x86_64

3,一键启用BBR 安装脚本

上面的觉得麻烦,繁琐看不懂?
直接懒人脚本 一键安装BBR脚本
wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh && chmod +x bbr.sh && ./bbr.sh
安装完成重启
reboot
自行检查内核是否已经是最新
uname -r
输入
sysctl net.ipv4.tcp_available_congestion_control
如显示以下内容表示BBR内核已启动

net.ipv4.tcp_available_congestion_control = reno cubic bbr

输入 lsmod | grep bbr
返回以下内容,表示BBR启动成功

tcp_bbr                20480  2

懒人脚本非常方便,快速启用BBR。

赞(0) 打赏
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《Linux内核Centos7系统如何安装BBR教程》
文章链接:https://www.tianyanjie.com/951.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。

评论 抢沙发

评论前必须登录!

 

登录

找回密码

注册