Я пытаюсь настроить контейнеры LXC поверх Amazon. Я очень новичок в Amazon и VPC особенно. На самом деле создан VPC впервые экспериментировать lxc.
Моя цель: Моя цель - иметь контейнеры lxc на экземплярах Amazon и размещать их в сети мостового типа. Это означает, что я должен иметь возможность назначать публичные ips или частные ips, доступные для других контейнеров amazon instances/lxc, как в физической локальной сети. Для этого я пробовал virsh(libvirt) с сетевым мостом. При этом я так и не смог добиться того, чего хотел.
Что я сделал: я создал VPC с одной подсетью (общедоступной). Запустил в нем экземпляр Debian. Установил LXC и смог успешно добиться режима nat и режима маршрута. Но это дало мне 192.168.122.0 (по умолчанию lxc) IP-адреса. Но я смог получить интернет в контейнерах с некоторыми приемлемыми правилами. После попытки с libvirt вручную создать мост с помощью bridge-utils не повезло в назначении IP-адреса для контейнера. Я предполагаю, что контейнер должен получить аренду DHCP от службы DHCP Amazon. Наконец, я связал другой Elastic IP с экземпляром debian и запомнил его собственный приватный ip. После этого создал простой мост и добавил eth0 к мосту на хосте. Затем создал простую сеть host-bridge, используя libvirt. И в конфиге lxc жестко закодирован нативный ip, который я запомнил. Затем я запустил контейнер lxc. Контейнер может получить nated ip на нем. Я мог бы SSH к нему с хоста. Но я не получаю интернет в этом контейнере.
/etc/network/interfaces(host) auto lo iface lo inet loopback auto eth0 iface eth0 inet manual
auto br0
iface br0 inet dhcp
bridge_ports eth0
bridge_fd 0
bridge_maxwait 0
virsh net-dumpxml host-bridge
<network>
<name>host-bridge</name>
<uuid>7c41e4ce-311c-c78f-5ea3-a03a224e4a3c</uuid>
<forward mode='bridge'/>
<bridge name='br0' />
</network>
LXC файл конфигурации
lxc.network.type = veth
lxc.network.flags = up
lxc.network.link = br0
#lxc.network.name = eth0
lxc.network.ipv4 = 10.0.0.207/24(natted memorized ip)
файл интерфейсов контейнера auto lo iface lo inet loopback
auto eth0
iface eth0 inet static
address 10.0.0.207
netmask 255.255.255.0
gateway 10.0.0.1
Мои вопросы:
- Какой VPC я должен выбрать для этого сценария?
- Какой сетевой режим облегчает мою работу?
- По крайней мере, с тем, чего я достиг, как я могу получить интернет в контейнер?
- Без Elastic IP, не могу ли я иметь частный IP в той же подсети, которая доступна для других экземпляров и контейнеров?