1、背景:
由于现有内核存在多项安全漏洞及与K8S集群的兼容性问题,如:CPU DBUS 、MEM OOM、DISK IOS彪高等等,
为了解决以上问题和性能优化,现将所有x86_64 Linux内核统一升至kernel-lt-5.4.251
2、操作步骤
1、查看现有内核版本是否是3.10.X
#--打印内核版本
uname -rs
#--显示所有信息
uname -a
2、离线安装内核安装包
#上传软件包到linux主机,软件包见文章顶部
rpm -ivh kernel-lt-5.4.251-1.el7.elrepo.x86_64.rpm
3、设置GRUB启动顺序
sed -i s/GRUB_DEFAULT=saved/GRUB_DEFAULT=0/g /etc/default/grub
#手动检查GRUB_DEFAULT参数配置项值是否已经替换为0
cat /etc/default/grub
4、生成新的GRUB启动配置
grub2-mkconfig -o /boot/grub2/grub.cfg
kernel_edition=`grep -E "^menuentry" /boot/grub2/grub.cfg | cut -d "'" -f2|grep "5.4.251"|head -n 1`
grub2-set-default "${kernel_edition}"
5、重启主机
init 6 或者 reboot
6、再次核查主机内核版本号是否更新为【5.4.251】
uname -rs
7、回退内核版本
awk -F\' '$1=="menuentry " {print i++" : " $2}' /etc/grub2.cfg
0 : CentOS Linux (5.4.251-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (3.10.0-1160.el7.x86_64) 7 (Core)
2 : CentOS Linux (0-rescue-1caefa67ba0d4c758d6742dfc455d487) 7 (Core)
sed -i 's/GRUB_DEFAULT=0/GRUB_DEFAULT=1/g' /etc/default/grub
grub2-mkconfig -o /boot/grub2/grub.cfg