Марк Шаттлворт представил Fan, механизм расширения адресного пространства
Вместо применения SDN-сетей в подобных условиях Fan основывается на идее привязывания более крупных блоков адресов (например, 10.0.0.0/8) к менее крупным блокам (например, 172.16.0.0/16). Изолированному окружению назначаются непересекающиеся с другими окружениями адреса из крупной подсети, которые привязываются к зависящим от внешнего окружения адресам меньшей подсети, с дальнейшим автоматическим туннелированием трафика.
Адреса из крупного блока назначаются с использованием алгоритмического сопоставления, что избавляет от необходимости ведения БД с таблицами связи адресов внешней и внутренней подсетей. В частности, в блоке /8 достаточно адресов для автоматического выделения подсети /24 на основе простого смещения адреса, например, если виртуальной машине выделен IP 172.16.1.2, то можно сразу сопоставить с ним подсеть 10.1.2.0, для 172.16.99.200 - это будет 10.99.200.0 и т.д. Алгоритм трансляции при такой схеме сводится к простой замене "172.16." на "10.". Таким образом, для каждого предоставленного виртуальной машине IP-адреса удаётся выделить 253 дополнительных адреса для использования в контейнерах.
Метод расширения адресного пространства достаточно прост и при этом решает многие проблемы, возникающие с назначением адресов в системах виртуализации и контейнерной изоляции. В настоящее время рабочая реализация Fan уже доступна для Ubuntu в окружении AWS. Обеспечена интеграция с системами Doker, LXD и Juju. Для управления сопоставлением адресов и туннелированием между подсетями подготовлена утилита fanctl. Для определения статической конфигурации предлагается использовать файл /etc/network/fan. В дальнейшем компания Canonical намерена подготовить RFC, описывающий подобный метод расширения адресов.
Источник: http://www.opennet.ru/opennews/art.shtml?num=42477
|
0 | Tweet | Нравится |
|