Перейти к содержанию

Параметры IPAM и сетей

Управление IP-адресами (IPAM) — это интегрированный набор средств для комплексного планирования, развертывания, управления и мониторинга инфраструктуры IP-адресов с широкими возможностями взаимодействия с пользователем. IPAM автоматически определяет серверы инфраструктуры IP-адресов и DNS-серверы в сети и позволяет управлять ими из центрального интерфейса.

В статье описаны:

  1. Настройка базовой сетевой конфигурации:

    • глобальные параметры IPAM для всего кластера;
    • диапазоны VID и зарезервированные сети;
    • настройки мостов и MTU для виртуальных коммутаторов.
  2. Настройка виртуальных сетей двух типов:

    • VLAN-сети. Классической сегментации трафика с поддержкой ACL.
    • VXLAN-сети. Для overlay-сетей. Без поддержки ACL.
  3. Принцип работы со специализированной инфраструктурой:

    • OpenFlow-контроллер;
    • Автоматическое распределение IP-адресов.

Рекомендуемый порядок работы:

  1. Начальная настройка. Задание глобальных параметров IPAM.
  2. Создание сетей. Определение VLAN или VXLAN.
  3. Настройка сервиса взаимодействия с OFC-контроллером.
  4. Оперативное управление сетями. Мониторинг и изменение параметров.

IPAM

Первоначально задайте параметры IPAM, которые определяют базовые настройки.

  1. В Sharx Base в командной строке введите

    ipam param add --mac_prefix <MAC_PREFIX>
                   --allocated_vlans <ALLOCATED_VLANS>
                   --reserved_vlans <RESERVED_VLANS>
                   --bridge <BRIDGE>
                  [--reserved_v4_nets <RESERVED_V4_NETS>]
                  [--mtu <MTU>]
                  [--vtep_if <VTEP_IF>]
                  [--vxlan_vid_range <VXLAN_VID_RANGE>]         
    

    где

    • mac_prefix — префикс MAC-адреса, который будет присваиваться виртуальным машинам;
    • allocated_vlans — диапазон VID, используемых системой для создания виртуальных сетей;
    • reserved_vlans — зарезервированные VID, недоступные для создания виртуальных сетей;
    • bridge — имя бридж-моста для подключения виртуальных сетей;
    • reserved_v4_nets — зарезервированные IPv4-подсети для системных нужд;
    • mtu — максимальный размер пакета в байтах, который может быть отправлен единовременно без фрагментации. Указывается числом без единиц измерения. Рекомендуемое значение — 1500;
    • vtep_if — имя VTEP-интерфейса;
    • vxlan_vid_range — список выделенных ID для VXLAN-сетей.
  2. Чтобы посмотреть созданные настройки, введите команду

    ipam param show
    

  3. Обновить параметры

    ipam param update [--mac_prefix <MAC_PREFIX>]
                      [--allocated_vlans <ALLOCATED_VLANS>]
                      [--reserved_vlans <RESERVED_VLANS>]
                      [--reserved_v4_nets <RESERVED_V4_NETS>]
                      [--v4_gw <V4_GW>]
                      [--mtu <MTU>]
                      [--bridge <BRIDGE>]
                      [--vtep_if <VTEP_IF>]
                      [--vxlan_vid_range <VXLAN_VID_RANGE>]
    
    где

    • mac_prefix — префикс MAC-адреса, который будет присваиваться виртуальным машинам;
    • allocated_vlans — диапазон VID, используемых системой для создания виртуальных сетей;
    • reserved_vlans — зарезервированные VID, недоступные для создания виртуальных сетей;
    • reserved_v4_nets — зарезервированные IPv4-подсети для системных нужд;
    • v4_gw — адрес шлюза по умолчанию для протокола сети IPv4;
    • mtu — максимальный размер пакета в байтах, который может быть отправлен единовременно без фрагментации. Указывается числом без единиц измерения. Рекомендуемое значение — 1500;
    • bridge — имя бридж-моста для подключения виртуальных сетей;
    • vtep_if — имя VTEP-интерфейса;
    • vxlan_vid_range — список выделенных ID для VXLAN-сетей.

Определить сети

  1. Чтобы определить сеть, в командной строке введите

    ipam network add --name <NAME>
                     --ipv <IPV>
                     --vlan <VLAN>
                     --v4_net <V4_NET>
                    [--ns <NS>]
                    [--mtu <MTU>]
                    [--v4_pref <V4_PREF>]
                    [--v4_mask <V4_MASK>]
                    [--v4_start <V4_START>]
                    [--v4_end <V4_END>]
                    [--v4_gw <V4_GW>]
                    [--v4_dns1 <V4_DNS1>]
                    [--v4_dns2 <V4_DNS2>]
                    [--descr <DESCR>]           
    

    где

    • name — имя сети;
    • ipv — версия протокола IP-сети. Возможное значение: 4 — IPv4;
    • vlan — идентификатор виртуальной локальной сети;
    • v4_net — адрес IPv4-сети. Например, X.X.X.X;
    • ns — имя ВЦОД. Обязательно для network, необязательно для vxlan;
    • mtu — максимальный размер пакета в байтах, который может быть отправлен единовременно без фрагментации. Указывается числом без единиц измерения. Рекомендуемое значение — 1500;
    • v4_pref — префикс подсети IPv4 в формате CIDR;
    • v4_mask — маска подсети IPv4 в формате CIDR;
    • v4_start — первый адрес IPv4 для назначения ВМ;
    • v4_end — последний адрес IPv4 для назначения ВМ;
    • v4_gw — адрес шлюза по умолчанию для протокола сети IPv4;
    • v4_dns1 — первичный DNS-сервер сети IPv4;
    • v4_dns2 — вторичный DNS-сервер сети IPv4
    • descr — описание сети.
  2. Посмотреть список созданных сетей

    ipam network list [--show_acl <yes|no>]
    

    где show_acl — показать правила списков контроля доступа для каждой сети. Значение по умолчанию — no. Возможные значения: yes, no.

  3. Посмотреть подробную информацию о конкретной сети

    ipam network show --net_uuid <NET_UUID> 
                      [--show_acl <yes|no>]
    

    где

    • net_uuid — идентификатор сети;
    • show_acl — показать правила списков контроля доступа для каждой сети. Значение по умолчанию — no. Возможные значения: yes, no.
  4. Обновить параметры сети

    ipam network update --net_uuid <NET_UUID>
                       [--name <NAME>]
                       [--ns <NS>]
                       [--mtu <MTU>]
                       [--v4_gw <V4_GW>]
                       [--descr <DESCR>]
                       [--v4_start <V4_START>]
                       [--v4_end <V4_END>]
                       [--v4_dns1 <V4_DNS1>]
                       [--v4_dns2 <V4_DNS2>]
    

    где

    • net_uuid — идентификатор сети;
    • name — имя сети;
    • ns — имя ВЦОД. Обязательно для network, необязательно для vxlan;
    • mtu — максимальный размер пакета в байтах, который может быть отправлен единовременно без фрагментации. Указывается числом без единиц измерения. Рекомендуемое значение — 1500;
    • v4_gw — адрес шлюза по умолчанию для протокола сети IPv4;
    • descr — описание сети;
    • v4_start — первый адрес IPv4 для назначения ВМ;
    • v4_end — последний адрес IPv4 для назначения ВМ;
    • v4_dns1 — первичный DNS-сервер сети IPv4;
    • v4_dns2 — вторичный DNS-сервер сети IPv4.

VXLAN

VXLAN — это технология виртуализации сетей, которая расширяет возможности обычных виртуальных локальных сетей. VXLAN позволяет создавать изолированные виртуальные сегменты поверх существующей сетевой инфраструктуры.

Важно

Перед созданием инфраструктуры VXLAN необходимо задать базовые параметры плагина IPAM


Настроить базовые параметры плагина для работы с VXLAN

Чтобы задать или изменить базовые параметры плагина, введите

ipam param update --vtep_if <VTEP_IF>
                  --vxlan_vid_range <VXLAN_VID_RANGE>

где

  • vtep_if — имя VTEP-интерфейса;
  • vxlan_vid_range — диапазон ID (VID), из которого будут выделяться идентификаторы подсети VXLAN.

Важно

Значение vxlan_vid_range используется всеми VXLAN-сетями кластера.
vxlan_vid_range не может пересекаться с диапазонами allocated_vlans и reserved_vlans

Пример
ipam param update --vtep_if <vtep_if_name> --vxlan_vid_range 1000-4094

Каждой VXLAN-подсети при создании автоматически будет назначаться уникальный VID из указанного диапазона


VXLAN-сети

Особенности VXLAN-сетей:

  • VXLAN-сеть выступает контейнером для изолированных подсетей с автоматической маршрутизацией между ними;
  • для работы требуется предварительная настройка VTEP-интерфейса;
  • каждому ВЦОД может быть назначена только одна VXLAN-сеть;
  • нельзя изменить привязку к ВЦОД, если во VXLAN-сети уже созданы подсети;
  • VXLAN-сеть нельзя удалить, если внутри нее созданы VXLAN-подсети.

Действия с VXLAN-сетями:

  1. Чтобы создать VXLAN-сеть, введите в командной строке

    ipam vxlan network add --name <NAME>
                          [--ns <NS>]
                          [--descr <DESCR>]  
    

    где

    • name — имя VXLAN-сети;
    • ns — имя ВЦОД. ВЦОД может быть привязан только к одной VXLAN-сети;
    • descr — описание VXLAN-сети.
    Пример
    ipam vxlan network add --name vx-1 --ns vcod-1 --descr "vxlan network"
    
  2. Просмотреть список VXLAN-сетей кластера

    ipam vxlan network list
    

  3. Изменить ВЦОД для VXLAN-сети

    Внимание

    Нельзя изменить привязку к ВЦОД, если во VXLAN-сети уже созданы подсети

    ipam vxlan network update --vxlan_uuid <VXLAN_UUID>
                             [--name <NAME>]
                             [--ns <NS>]
                             [--descr <DESCR>]
    

    где

    • vxlan_uuid — идентификатор VXLAN-сети;
    • name — имя VXLAN-сети;
    • ns — имя ВЦОД;
    • descr — описание VXLAN-сети.
    Пример
    ipam vxlan network update --vxlan_uuid 4ab2646c-1109-42ad-a3a3-506cb708c87c 
                              --ns vcod-2
    
  4. Удалить VXLAN-сеть

    Внимание

    Нельзя удалить VXLAN-сеть, если в ней есть подсети

    ipam vxlan network del --vxlan_uuid <VXLAN_UUID>
    
    где vxlan_uuid — идентификатор VXLAN-сети.

    Пример
    ipam vxlan network del --vxlan_uuid 4ab2646c-1109-42ad-a3a3-506cb708c87c
    
  5. Просмотреть сетевые интерфейсы

    ipam iface list [--net_uuid <NET_UUID>]
                    [--vxlan_uuid <VXLAN_UUID>]
                    [--show_acl <yes|no>]
    

    где

    • net_uuid — идентификатор сети;
    • vxlan_uuid — идентификатор VXLAN-сети;
    • show_acl — показать правила списков контроля доступа для каждой сети. Значение по умолчанию — no. Возможные значения: yes, no.
    Пример
    ipam iface list --vxlan_uuid 4ab2646c-1109-42ad-a3a3-506cb708c87c
    

    Просмотреть сетевые интерфейсы конкретной подсети VXLAN


Автоматическое управление сетевыми интерфейсами

Sharx Base автоматически управляет сетевыми интерфейсами:

  • При создании ВМ в VXLAN-подсети система автоматически создает сетевой интерфейс.
  • Для каждого интерфейса генерируются уникальные MAC и IP-адреса.
  • При удалении ВМ все связанные сетевые интерфейсы освобождаются автоматически.
  • Освобожденные IP-адреса могут быть назначены новым ВМ.

Также сетевыми интерфейсами можно управлять вручную.

Дополнительные действия с сетевыми параметрами выполняет Администратор ВЦОД см. Руководство пользователя.


Взаимодействие с OFC-контроллером

Для взаимодействия с точками конфигурации OpenFlow в Sharx Base используется сервис для запуска, перезапуска или остановки системных сервисов на узлах виртуализации кластера.

Чтобы включить контроль за сервисом, используйте команду

services global systemd add --name faucet 
                            --code VIP 
                            --state start
                           [--descr <DESCR>] 

где

  • name — имя сервиса;
  • code — стратегия работы сервиса. Возможные значения: VIP — сервис работает на VIP-узлах, ALL — сервис работает на всех узлах;
  • state — состояние сервиса. Значение по умолчанию — start. Возможные значения: start — запуск сервиса, stop — остановка сервиса;
  • descr — описание сервиса.

После выполнения команды на узлах кластера запускается сервис faucet, который обновляет описание OpenFlow-контроллера.


Удаление сетей и сетевых параметров

  1. Чтобы удалить сеть, введите команду

    ipam network del --net_uuid <NET_UUID>
    

    где net_uuid— идентификатор сети.

  2. Удалить параметры сети

    ipam param del
    

Примечание

Дополнительные действия с сетевыми параметрами выполняет Администратор ВЦОД см. Руководство пользователя


Термины и определения содержатся в статьях: