centos升级内核版本以支持overlay2
2023-02-18 16:44:51 时间
搬瓦工新入的KVM架构的机器,默认内核版本是4.10.4
,如果是本地用ISO安装的系统,默认内核版本可能更低,比如3.10.0
,如果我们想要获取到最新的Linux特性,那么就必须升级内核版本到最新,我们可以用很简单的几个命令就可做到。
PS.用下面的命令查看当前系统的内核版本,多个平台适用
uname -sr
# 老高的不同的机器返回的不同结果
# Linux 4.10.4-1.el7.elrepo.x86_64
# Linux 3.10.0-327.el7.x86_64
# Darwin 17.2.0
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 clean all \
&& yum --enablerepo=elrepo-kernel install kernel-ml -y \
&& grub2-set-default 0
至此,我们重启系统就已经完成了内核的升级,内核升级是完成了,我们就可以使用一些新特性了,比如在此老高以docker的新文件驱动overlay2
为例,使用一下Linux kernel 4.0以后才支持的overlay2(Linux kernel 3.18以后才支持的叫overlayFS)。同时请确保docker的服务端版本不低于1.12,否则无法支持。
需要注意的是,更换驱动后之前保存镜像和容器的目录地址会变化,之前所有镜像和容器将变的不可见!(比如
/var/lib/docker/devicemapper
将会变为/var/lib/docker/overlay2
,但是前者不会被删除,是否意味着可以恢复?)
# 我们可以先检查Linux是否加载了overlay模块
lsmod|grep over
# 如果有返回则说明已经加载
# 如果确定内核是最新那么可以执行
modinfo overlay
# 此处应该有类似/lib/modules/4.10.4-1.el7.elrepo.x86_64/kernel/fs/overlayfs/overlay.ko
# 最后我们添加overlay模块即可
modprobe overlay
# 如果是新装的系统,那么在重启前把selinux关闭是个明智的选择
setenforce 0 && sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux
vi /etc/docker/daemon.json
在daemon.json
文件中添加如下配置,如果之前有配置,请将二者合并。
{
"storage-driver": "overlay2",
"storage-opts": [
"overlay2.override_kernel_check=true"
]
}
重启docker服务
systemctl restart docker
docker info
Server Version: 1.12.6
Storage Driver: overlay2
Backing Filesystem: extfs
Logging Driver: journald
至此我们成功了启用了overlay文件驱动。更多信息可以访问Use the OverlayFS storage driver已了解更多。
目前overlay2已经是最新版docker的默认文件驱动,取代了之前的AUFS和devicemapper的地位。
相关文章
- Freemarker-数字默认格式化问题
- Chrome扩展插件的开发--获取网页Cookies
- 【以解决】项目使用feign时候提示bean不能注入feign
- Docker设置容器开机自启
- 常用的淘汰算法
- 分布式事务seata,TCC,最大努力通知,最终一致性解决方案——总结三!
- java分布式事务——最终一致性,最大努力通知总结!
- java分布式事务——seata,tcc解决方案总结!
- 分布式系统–拜占庭将军问题(The Byzantine Generals Problem)
- idea中启动SSM项目
- 【编程】给定一个部门,变量出当前部门的所有父部门包含当前部门
- 【解疑】ConcurrentHashMap 在JDK1.7时候put或get时候,怎么定位到数据的?
- Spring的BeanFactoryPostProcessor
- spring注解开发AnnotationConfigApplicationContext的使用
- 匿名内部类方式实现线程的创建
- spring异常:No runnable methods 解决方法
- 基础IO的理解与操作 - fd
- 【图文教程】Centos 7下安装Hadoop-管杀管埋的
- 【Flink教程-已解决】在idea中测试flink的时候,提示读取文件时候错误,提示文件不存在解决方案
- frp 服务器端 frps 一键安装卸载脚本