作者利用lxc进行了大规模集群的部署,在昨天的测试过程中发生了一个不大不小的问题:lxc网络无法启动。
具体表现为:
- 重启设备后,lxcbr0网桥消失,ifconfig命令和brctl命令均无法返回有效结果;
- 利用 service lxc-net restart 命令无法重启网络,由于作者比较懒惰,忘记了截图,模糊记得具体表现为提示重启lxc网络失败,并提示执行 systemctl status lxc-net.service(加班太晚,脑子浆糊了,不一定完全准确,但是大概是这么个意思);
- 输入提示要求的命令 systemctl status lxc-net.service(...大概吧...),返回结果显示 restart failed ,执行记录执行到读取dnsmasq.conf文件的第34行,然后后面就时 code exit 了。
仔细梳理一下,显然当前问题是服务器重启后lxc重新启动lxc网络服务,即为lxc配置网络,具体的来说就是配置一个名为lxcbr0的网桥,启动的lxc容器都将虚拟网卡接到lxcbr0网桥上。而目前通过ifconfig和brctl查询得到的返回结果来看,lxcbr0网桥并没有成功启动。
再来讲讲这个dnsmasq.conf文件,重启lxc网络失败,failed前执行的最后一个动作是读取dnsmasq.conf文件,这个文件路径为 /etc/lxc/dnsmasq.conf ,dnsmasq能够缓存外