安装BBR教程,来加速VPS

2024-03-11 02:04
文章标签 安装 教程 加速 bbr vps

本文主要是介绍安装BBR教程,来加速VPS,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

安装BBR教程,来加速VPS

开源了其 TCP BBR 拥塞控制算法,并提交到了 Linux 内核,从 4.9 开始,Linux 内核已经用上了该算法。根据以往的传统,Google 总是先在自家的生产环境上线运用后,才会将代码开源,此次也不例外。
根据实地测试,在部署了最新版内核并开启了 TCP BBR 的机器上,网速甚至可以提升好几个数量级。

根据目前三大发行版的最新内核,一键安装最新内核并开启 TCP BBR 脚本。

个人建议最好不要使用脚本,就几行命令,手动安装不会出错,使用脚本出错概率大,当然懒人除外!

适用环境

系统支持:CentOS7.1+,Debian 7+,Ubuntu 12+

虚拟技术:OpenVZ 以外的,比如 KVM、Xen、VMware 等

内存要求:≥128M

关于脚本

1、本脚本已在 各大厂商上的 VPS 全部测试通过。

2、当脚本检测到 VPS 的虚拟方式为 OpenVZ 时,会提示错误,并自动退出安装。

3、脚本运行完重启发现开不了机的,打开 VPS 后台控制面板的 VNC, 开机卡在 grub 引导, 手动选择内核即可。

4、由于是使用最新版系统内核,最好请勿在生产环境安装,以免产生不可预测之后果。

安装方法

安装前请务必关闭 SELINUX,

使用 root 用户登录,运行以下命令

wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh && chmod +x bbr.sh && ./bbr.sh

安装完成后,脚本会提示需要重启 VPS,输入 y 并回车后重启。重启完成后,进入 VPS,验证一下是否成功安装最新内核并开启 TCP BBR,输入以下命令:

输入:

lsmod | grep bbr

返回值有 tcp_bbr 模块即说明 bbr 已启动。注意:并不是所有的 VPS 都会有此返回值,若没有也属正常。

CentOS 7.4+ 手动安装方法
安装前请务必关闭 SELINUX,

查看系统版本

cat /etc/redhat-release

输出如下(release 数值大于 7.4 即可)

CentOS Linux release 7.6.1810 (Core)

导入 elrepo 软件源的 GPG 公钥

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

更新下配置重启

reboot

导入 elrepo 软件源(该地址可以自动下载该源的最新的软件列表,无需修改地址)

rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm

在 ELRepo中有两个内核选项,一个是kernel-lt(长期支持版),一个是 kernel-ml(主线最新版本),采用长期支持版本(kernel-lt),更加稳定一些

yum -y --enablerepo=elrepo-kernel install kernel-ml //主线最新版本
yum -y --enablerepo=elrepo-kernel install kernel-lt //长期支持版

设定 Grub 默认启动新内核,查看所有的 entry:

awk -F \' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg

0 : CentOS Linux 7 Rescue be01194033634997b76c097ab3d668ed (4.20.0-1.el7.elrepo.x86_64)
1 : CentOS Linux (4.20.0-1.el7.elrepo.x86_64) 7 (Core)
2 : CentOS Linux (3.10.0-693.11.6.el7.x86_64) 7 (Core)
3 : CentOS Linux (3.10.0-693.el7.x86_64) 7 (Core)
4 : CentOS Linux (0-rescue-00a62363617944e08db8db894ba6145e) 7 (Core)

配置方法

1、通过 grub2-set-default 命令设置
查看当前 default 的 entry

grub2-editenv list
  1. saved_entry=CentOS Linux (3.10.0-693.11.6.el7.x86_64) 7 (Core)

修改为指定的 entry,指定最新内核,然后查看指定内核为:saved_entry=1

grub2-set-default 1
grub2-editenv list

2、编辑 /etc/default/grub 文件
(第一种方式无法修改内核再用这种方式修改)

设置 GRUB_DEFAULT=1,通过上面查询显示的编号为 1 的内核作为默认内核:

GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=” ( s e d ‘ s , r e l e a s e . ∗ (sed ‘s, release .* (seds,release.,g’ /etc/system-release)”
GRUB_DEFAULT=1
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL=”serial console”
GRUB_TERMINAL_OUTPUT=”serial console”
GRUB_CMDLINE_LINUX=”crashkernel=auto console=ttyS0 console=tty0 panic=5 net.ifnames=0 biosdevname=0 intel_idle.max_cstate=1 intel_pstate=disable”
GRUB_DISABLE_RECOVERY=”true”
GRUB_SERIAL_COMMAND=”serial –speed=9600 –unit=0 –word=8 –parity=no –stop=1″

生成 grub 配置文件

grub2-mkconfig -o /boot/grub2/grub.cfg

Generating grub configuration file …
Found linux image: /boot/vmlinuz-5.8.14-1.el7.elrepo.x86_64
Found initrd image: /boot/initramfs-5.8.14-1.el7.elrepo.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-1062.18.1.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-1062.18.1.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-0ea734564f9a4e2881b866b82d679dfc
Found initrd image: /boot/initramfs-0-rescue-0ea734564f9a4e2881b866b82d679dfc.img
Found linux image: /boot/vmlinuz-0-rescue-d4a7825ac1094e6a9184b6379c189521
Found initrd image: /boot/initramfs-0-rescue-d4a7825ac1094e6a9184b6379c189521.img

衔接第一、二种方式
使用新的内核重启

reboot

检查设置,删除旧的内核,查看当前系统的内核版本号

uname -r

如果输出是 4.10 以上的版本,说明安装成功。

4.20.0-1.el7.elrepo.x86_64

删除旧内核(删除旧内核的目的是为了防止 yum 更新旧版内核之后覆盖了 grub 默认启动项)

yum -y remove kernel kernel-tools

如果名称不匹配就是商家修改过内核名称,先查询一下系统已安装的内核

rpm -qa | grep kernel

然后再删除旧内核

yum remove -y 旧内核的名

开启 bbr,如果你不会用 vim 命令的话可以使用 SFTP 工具修改简单

vim /etc/sysctl.conf

添加如下内容

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

加载系统参数(正常情况下会输出我们之前加入的内容)

sysctl -p

验证 bbr 是否已经开启

sysctl net.ipv4.tcp_available_congestion_control

返回 :net.ipv4.tcp_available_congestion_control = bbr cubic reno 则成功

再验证 bbr

lsmod | grep bbr

返回形如有 bbr 即成功。

tcp_bbr 16384 1

tcp_bbr 20480 0

安装其他服务前重启下

reboot

提醒

提示如下报错:curl: (35) SSL connect error 解决方法:升级网络安全服务即可

yum update nss

这篇关于安装BBR教程,来加速VPS的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/796249

相关文章

python管理工具之conda安装部署及使用详解

《python管理工具之conda安装部署及使用详解》这篇文章详细介绍了如何安装和使用conda来管理Python环境,它涵盖了从安装部署、镜像源配置到具体的conda使用方法,包括创建、激活、安装包... 目录pytpshheraerUhon管理工具:conda部署+使用一、安装部署1、 下载2、 安装3

Window Server创建2台服务器的故障转移群集的图文教程

《WindowServer创建2台服务器的故障转移群集的图文教程》本文主要介绍了在WindowsServer系统上创建一个包含两台成员服务器的故障转移群集,文中通过图文示例介绍的非常详细,对大家的... 目录一、 准备条件二、在ServerB安装故障转移群集三、在ServerC安装故障转移群集,操作与Ser

windos server2022的配置故障转移服务的图文教程

《windosserver2022的配置故障转移服务的图文教程》本文主要介绍了windosserver2022的配置故障转移服务的图文教程,以确保服务和应用程序的连续性和可用性,文中通过图文介绍的非... 目录准备环境:步骤故障转移群集是 Windows Server 2022 中提供的一种功能,用于在多个

龙蜥操作系统Anolis OS-23.x安装配置图解教程(保姆级)

《龙蜥操作系统AnolisOS-23.x安装配置图解教程(保姆级)》:本文主要介绍了安装和配置AnolisOS23.2系统,包括分区、软件选择、设置root密码、网络配置、主机名设置和禁用SELinux的步骤,详细内容请阅读本文,希望能对你有所帮助... ‌AnolisOS‌是由阿里云推出的开源操作系统,旨

PyTorch使用教程之Tensor包详解

《PyTorch使用教程之Tensor包详解》这篇文章介绍了PyTorch中的张量(Tensor)数据结构,包括张量的数据类型、初始化、常用操作、属性等,张量是PyTorch框架中的核心数据结构,支持... 目录1、张量Tensor2、数据类型3、初始化(构造张量)4、常用操作5、常用属性5.1 存储(st

Ubuntu系统怎么安装Warp? 新一代AI 终端神器安装使用方法

《Ubuntu系统怎么安装Warp?新一代AI终端神器安装使用方法》Warp是一款使用Rust开发的现代化AI终端工具,该怎么再Ubuntu系统中安装使用呢?下面我们就来看看详细教程... Warp Terminal 是一款使用 Rust 开发的现代化「AI 终端」工具。最初它只支持 MACOS,但在 20

Java操作PDF文件实现签订电子合同详细教程

《Java操作PDF文件实现签订电子合同详细教程》:本文主要介绍如何在PDF中加入电子签章与电子签名的过程,包括编写Word文件、生成PDF、为PDF格式做表单、为表单赋值、生成文档以及上传到OB... 目录前言:先看效果:1.编写word文件1.2然后生成PDF格式进行保存1.3我这里是将文件保存到本地后

windows系统下shutdown重启关机命令超详细教程

《windows系统下shutdown重启关机命令超详细教程》shutdown命令是一个强大的工具,允许你通过命令行快速完成关机、重启或注销操作,本文将为你详细解析shutdown命令的使用方法,并提... 目录一、shutdown 命令简介二、shutdown 命令的基本用法三、远程关机与重启四、实际应用

mysql-8.0.30压缩包版安装和配置MySQL环境过程

《mysql-8.0.30压缩包版安装和配置MySQL环境过程》该文章介绍了如何在Windows系统中下载、安装和配置MySQL数据库,包括下载地址、解压文件、创建和配置my.ini文件、设置环境变量... 目录压缩包安装配置下载配置环境变量下载和初始化总结压缩包安装配置下载下载地址:https://d

python库fire使用教程

《python库fire使用教程》本文主要介绍了python库fire使用教程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录1.简介2. fire安装3. fire使用示例1.简介目前python命令行解析库用过的有:ar