一时兴起想配一台 openSUSE 的服务器,在配置 LXC 容器的时候翻车了,几经摸索终于开上了康庄大道。现在就来写一下驾驶实录吧。
基本环境配置
-
首先安装 LXC
1
# zypper in LXC
-
加载 LXC 容器的 apparmor profile
1
# apparmor_parser /etc/apparmor.d/lxc-containers
新建容器
-
编写 LXC 容器配置文件
1 2 3
# mkdir lxc # cd lxc # vim ubuntu.conf
内容如下
1 2 3 4 5 6 7
lxc.network.type = veth lxc.network.link = br0 lxc.network.flags = up lxc.network.ipv4 = 10.0.6.25/24 lxc.network.name = eth0 lxc.network.ipv4.gateway = 10.0.6.1 lxc.aa_allow_incomplete = 1 // 在 apparmor 保护下启动容器
-
创建容器
1
# lxc-create -n ubuntu -f /root/lxc/ubuntu.conf -t download -- d ubuntu -r trusty -a amd64
-
启动容器
1
# lxc-start -n ubuntu
-
进入容器
1
# lxc-attach -ubuntu
网络设置
配置网桥
-
在 YaST 中打开 System–Network Settings 新建网桥 br0 并配置如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
Network Card Setup ┌General──Address──Bridged Devices──────────────────────────────────────────────────────────────────────────┐ │ Device Type Configuration Name │ │ Bridge▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒↓ br0▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ │ │( ) No Link and IP Setup (Bonding Slaves) │ │( ) Dynamic Address DHCP▒▒▒▒▒▒▒▒▒▒↓ DHCP both version 4 and 6▒↓ │ │(x) Statically Assigned IP Address │ │IP Address Subnet Mask Hostname │ │10.0.6.1▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ /24▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ xxx.xxxxxxxxxxxxx.suse▒▒▒▒▒ │ │┌Additional Addresses─────────────────────────────────────────────────────────────────────────────────────┐│ ││ ┌─────────────────────────────────────────────────────────────────────────────────────────────────┐ ││ ││ │IPv4 Address Label│IP Address│Netmask │ ││ ││ │ │ ││ ││ │ │ ││ ││ │ │ ││ ││ │ │ ││ ││ │ │ ││ ││ │ │ ││ ││ │ │ ││ ││ └─────────────────────────────────────────────────────────────────────────────────────────────────┘ ││ ││ [Add][Edit][Delete] ││ │└─────────────────────────────────────────────────────────────────────────────────────────────────────────┘│ └───────────────────────────────────────────────────────────────────────────────────────────────────────────┘ [Help] [Back] [Cancel] [Next] F1 Help F3 Add F9 Cancel F10 Next
-
在 Network Settings 中打开 Routing 标签,确保
[x] Enable IPv4 Forwarding
为选中状态
防火墙配置
-
打开
/etc/sysconfig/SuSEfirewall2
修改配置如下1 2 3 4 5
FW_DEV_EXT="eth0" FW_DEV_INT="br0" FW_ROUTE="yes" FW_MASQUERADE="yes" FW_MASQ_NETS="10.0.6.0/24"