您的位置 首页 linux 运维

centos 升级内核(离线版)附K8S 基础配置

centos 升级内核(离线版)

centos7升级内核(附图文超详细)_centos7升级内核版本-CSDN博客

(13 封私信 / 20 条消息) CentOS 7 升级 5.4 内核 - 知乎

Centos7离线方式升级内核_centos7 离线升级内核-CSDN博客

 

centos7默认的内核为3.10通常,linux是可以多内核共存的,因此不建议删除旧版本的内核,仅仅安装新版本内核后,grub选择新版本内核进入系统并使用即可,(谁也不敢保证新的内核就一定好用,毕竟留个旧的,以后想反悔也简单一点,对吧?)

查看当前内核版本

 

kernel-ml 安装的是主线版本,该版本比较激进,慎重选择
kernel-lt 安装的长期稳定版本,稳定可靠

这里我选择lt的版本下载选择的版本为
kernel-lt-5.4.204-1.el7.elrepo.x86_64.rpm

下载 包:

Coreix Mirrors

然后找到:

由于最新的阿里云的elrepo源已经没有了最新的包,所以yum升级内核比较麻烦,采用离线安装的方式升级

1、新建一个文件夹,并下载离线包

mkdir rpm && cd rpm
wget https://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-lt-5.4.278-1.el7.elrepo.x86_64.rpm \
&& wget https://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-lt-devel-5.4.278-1.el7.elrepo.x86_64.rpm \
&& wget https://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-lt-doc-5.4.278-1.el7.elrepo.noarch.rpm \
&& wget https://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-lt-headers-5.4.278-1.el7.elrepo.x86_64.rpm  \
&& wget https://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-lt-tools-5.4.278-1.el7.elrepo.x86_64.rpm \
&& wget https://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-lt-tools-libs-5.4.278-1.el7.elrepo.x86_64.rpm \
&& wget https://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-lt-tools-libs-devel-5.4.278-1.el7.elrepo.x86_64.rpm

下载完成后文件:

2、安装rpm包,分别执行下面命令

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
yum remove -y kernel-tools* kernel-headers*
yum install -y perl-Data-Dumper
rpm -ivh kernel-lt-5.4.278-1.el7.elrepo.x86_64.rpm
rpm -ivh kernel-lt-devel-5.4.278-1.el7.elrepo.x86_64.rpm
rpm -ivh kernel-lt-doc-5.4.278-1.el7.elrepo.noarch.rpm
rpm -ivh kernel-lt-headers-5.4.278-1.el7.elrepo.x86_64.rpm
rpm -ivh kernel-lt-tools-libs-5.4.278-1.el7.elrepo.x86_64.rpm
rpm -ivh kernel-lt-tools-5.4.278-1.el7.elrepo.x86_64.rpm
rpm -ivh kernel-lt-tools-libs-devel-5.4.278-1.el7.elrepo.x86_64.rpm

3、查看内核是否载入到grub2

#/etc/grub2.cfg文件是/boot/grub2/grub.cfg文件的软链接,grub.cfg文件是grub引导加载器的配置文件
#注意:如果服务器使用efi模式启动,那么可能没有/boot/grub2/grub.cfg文件,其对应的配置文件可能是/boot/efi/EFI/centos/grub.cfg

 

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

出现对应额版本就成功了

 

4、通过 grub2-set-default 0 命令设置或编辑 vim /etc/default/grub 文件来设置默认引导

grub2-set-default 0
vim /etc/default/grub
GRUB_DEFAULT=0		#这句改为GRUB_DEFAULT=0 意思是GRUB初始化页面的第一个内核将作为默认内核,保存退出

5、重新生成grub2引导文件

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

6、检查当前内核版本

grubby --default-kernel

7、重启服务,然后查看内核

reboot
uname -rs
#安装完成之后,会在/usr/src/kernels目录生成内核的源码包
ll /usr/src/kernels/5.4.278-1.el7.elrepo.x86_64/

 

到这里,升级内核就已经完成了!!!

要用k8s的一些功能,可以进行下面的设置

添加网桥过滤及内核转发配置文件

/etc/sysctl.d/k8s.conf中添加的内容如下:

 

vim /etc/sysctl.d/k8s.conf

 

然后:

net.bridge.bridge-nf-call-ip6tables =1
net.bridge.bridge-nf-call-iptables =1
net.ipv4.ip_forward =1
vm.swappiness =0

加载br_netfilter模块

 modprobe br_netfilter

使文件生效

sysctl -p /etc/sysctl.d/k8s.conf

查看是否加载成功

lsmod | grep br_netfilter

安装ipset及ipvsadm

yum install -y ipset ipvsadm

配置ipvsadm模块加载方式,添加需要加载的模块

cat > /etc/sysconfig/modules/ipvs.modules <<EOF
#!/bin/bash
modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wrr
modprobe -- ip_vs_sh
modprobe -- nf_conntrack
EOF

授权、运行、检查是否加载

chmod 755 /etc/sysconfig/modules/ipvs.modules && bash /etc/sysconfig/modules/ipvs.modules && lsmod | grep -e ip_vs -e nf_conntrack

关闭swap分区并重启系统

vim /etc/fstab
# 将下面行注释掉
#/dev/mapper/centos-swap swap                    swap    defaults        0 0
# 重启系统
reboot

 

欢迎来撩 : 汇总all

白眉大叔

关于白眉大叔linux云计算: 白眉大叔

热门文章