您的当前位置:首页正文

Docker修改内核参数

2024-12-01 来源:个人技术集锦

        上回书说到已经安装了docker,这会需要修改一下docker的内核参数来开启转发功能;

一、为什么要开启转发功能呢?

        首先是br_netfilter,它的作用是将桥接的流量转发至iptables链,如果没有br_netfilter,则会出现同一node内前后pod间通讯的问题;此时,前后pod间的通讯会通过桥接形式传递导致数据没有返回,而配置net.bridge.bridge-nf-call-iptables=1,则是将桥接的通讯也去调用iptables策略;net.ipv4.ip_forward = 1的命令允许接口与接口间的转发,该配置是 Linux 内核将流量从容器路由到外部所必须的;

二、开启转发功能;
modprobe br_netfilter

此时可以看一下br_netfilter状态;

lsmod |grep br_netfilter
vim /etc/sysctl.d/docker.conf

:wq保持以后,使配置生效:

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

四、设置开机自启动;
vim /etc/rc.sysinit

#! /bin/bash
for file in /etc/sysconfig/modules/*.modules ; do
[-x $file] && $file
done

创建 br_netfilter.modules文件

vim /etc/sysconfig/modules/br_netfilter.modules

modprobe br_netfilter

重启一下看看,是生效的;

五、重启容器;
systemctl daemon-reload && sudo systemctl restart docker

        我是chililopp,正在学习k8s,之后如果有新的总结或者体验也会发出来,如果有说的不对的地方,还请指点,十分感谢阅读!

显示全文