Низкая производительность с вложенным мостовым интерфейсом
На моем микросервере HP Proliant gen 8 box у меня установлена ОС Ubuntu 18.04. Первоначально я планировал настроить одну производственную виртуальную машину (vm-prod) с несколькими службами внутри контейнеров lxd (vm-prod-lxd-01, vm-prod-lxd-02 и т. Д.) Внутри. Другая виртуальная машина (vm-dev) будет иметь такую же структуру (vm-dev-lxd-01, 02 и т. Д.), Но будет использоваться в качестве промежуточной среды для тестирования объектов перед их развертыванием в новых контейнерах prod. Я также планировал развернуть еще несколько виртуальных машин, чтобы протестировать совершенно новые архитектуры.
Когда я развернул производственную ВМ, все прошло нормально, и я получил приемлемую производительность. Но когда я настраивал вторую (dev) виртуальную машину, снижение производительности было настолько серьезным, что даже сессии ssh в терминале на всех машинах отставали. Я подозреваю, что это может быть связано с моей конкретной настройкой сети. Поскольку все системы (хост, ВМ, контейнер) являются Ubuntu 18.04, я вставляю настройки netplan ниже:
ХОСТ ОС
network:
version: 2
renderer: networkd
ethernets:
eno1:
dhcp4: no
dhcp6: no
bridges:
br0:
interfaces:
- eno1
dhcp4: no
dhcp6: no
addresses: [192.168.1.100/24]
gateway4: 192.168.1.200
nameservers:
addresses: [192.168.1.200]
VM:
network:
version: 2
renderer: networkd
ethernets:
ens3:
dhcp4: no
dhcp6: no
bridges:
br0:
interfaces:
- ens3
dhcp4: no
dhcp6: no
addresses: [192.168.1.110/24]
gateway4: 192.168.1.200
nameservers:
addresses: [192.168.1.200]
контейнер (ы):
network:
ethernets:
eth0:
addresses:
- 192.168.1.120/24
dhcp4: false
gateway4: 192.168.1.200
nameservers:
addresses:
- 192.168.1.200
version: 2
Я решил использовать мостовую сеть, чтобы иметь разные IP-адреса в одной подсети для всех машин. Почти все сервисы находятся внутри контейнеров prod VM lxd и являются, за исключением одного сервера xmpp, веб-приложениями.
Вопрос в том:
- Был ли выбор вложенного мостового интерфейса плохим с точки зрения ввода / вывода? Если нет, что может вызвать проблемы с производительностью? Какой инструмент я должен использовать, чтобы измерить это?
- Если мостовой интерфейс не является хорошим с точки зрения производительности, какой тип конфигурации я должен использовать вместо этого? IP таблицы с переадресацией портов? Переадресация LXD-порта?
- На сервере есть две сетевые карты - решение использует другой мостовой интерфейс для других виртуальных машин?