Overlay配置文件的路径取决于具体的应用场景(如文件系统叠加、Docker存储、Kubernetes网络等),以下是常见场景的详细说明:
Ubuntu系统中,overlayroot(用于将系统根文件系统叠加为可写层)的配置文件主要为/etc/overlayroot.conf。该文件包含以下关键参数:
enabled:是否启用overlayroot(设为yes则开启);upperdir:上层可写目录(如/home/username);workdir:工作目录(用于Overlay操作,如/var/lib/overlayroot/work);lowerdir:下层只读目录(如系统根文件系统/mnt/rootfs);mergedir:合并后的目录(如/var/lib/overlayroot/merged)。/etc/fstab文件也可通过添加overlay挂载项(如overlay /merged overlay defaults,lowerdir=/lower,upperdir=/upper,workdir=/work 0 0)调整挂载选项。Docker使用OverlayFS作为存储驱动时,配置文件位于/etc/docker/daemon.json。需添加或修改以下内容以启用overlay2驱动(推荐):
{
"storage-driver": "overlay2",
"storage-opts": ["overlay2.override_kernel_check=true"]
}
若文件不存在,可手动创建。修改后需重启Docker服务(sudo systemctl restart docker)使配置生效。
Kubernetes中,Overlay网络(如Flannel的VXLAN模式)的配置通常通过CNI插件配置文件实现,路径为/etc/cni/net.d/(如10-flannel.conflist)。该文件由Flannel DaemonSet挂载,包含网络名称(如cbr0)、CNI版本、插件类型(如flannel+portmap)等信息。
此外,Flannel的网络配置(如Pod CIDR、后端类型)存储在ConfigMap中(如kube-flannel-cfg),可通过kubectl get configmap -n kube-system kube-flannel-cfg -o yaml查看。
嵌入式系统中,设备树Overlay用于动态修改硬件配置(如启用GPIO、I2C),配置文件路径为/boot/dtb/overlay/(如Armbian的.dtbo文件)。需通过修改/boot/armbianEnv.txt添加user_overlays参数(如user_overlays=my-led-overlay)加载自定义Overlay。
/etc/overlayroot.conf、/etc/fstab;/etc/docker/daemon.json;/etc/cni/net.d/、ConfigMap;/boot/dtb/overlay/、/boot/armbianEnv.txt。修改配置文件前需备份原始文件,避免误操作导致系统或服务异常。