Несколько сервисов на одном сервере

Для организации нескольких сервисов с разными адресами на одной машине следует прибегнуть к использованию подсети. Таким образом, у сервера с Yggdrasil появляется условно неограниченное количество адресов из диапазона 300::/64 (с учетом префикса адреса из 0200::/7), каждый из которых, например, можно присвоить новой виртуальной машине, либо просто запустить несколько сайтов на разных адресах из этого диапазона с использованием одного и того же номера порта.

Учтите физические ограничения производительности вашего сервера!

Читайте статью про назначение нескольких адресов из подсети Yggdrasil на одном устройстве.

Если по каким-то причинам вы не хотите использовать адреса из маршрутизируемой подсети, хотите, чтобы каждый сервис работал на своём адресе из диапазона 0200::/7, вам придется прибегнуть к средствам виртуализации или размещению экземпляров Yggdrasil в контейнеры. Просто запустить несколько экземпляров Yggdrasil на одном устройстве получится, но корректно работать они не будут, ввиду необходимости разделения маршрутов конкурирующих устройств в диапазоне 0200::/7 по сетевым пространствам имен (network namespaces (см. Ссылки)).

В статье Yggdrasil в контейнере LXC рассмотрена возможность запуска Yggdrasil в контейнере LXC.

В качестве другого варианта можно порекомендовать использование контейнеров Docker.

При всём этом, нужно учитывать, что каждый экземпляр Yggdrasil, как минимум требует ресурсы для шифрования передаваемого внутри сети трафика.

Ссылки

Механизмы контейнеризации: cgroups - https://habr.com/ru/company/selectel/blog/303190/
Механизмы контейнеризации: namespaces - https://selectel.ru/blog/mexanizmy-kontejnerizacii-namespaces/
Углубленное знакомство с пространствами имен Linux. Часть 1 - https://habr.com/ru/company/ruvds/blog/592057/

Только авторизованные участники могут оставлять комментарии.
yggdrasil/several_services_on_machine.txt · Последнее изменение: 2023/04/20 21:49 — 127.0.0.1
 
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki