Skip to main content

Сетевая инфраструктура

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

Сетевая топология

Сетевая топология в OpenStack Horizon – это графическое представление всех сетевых компонентов, включая сети, подсети, маршрутизаторы, и подключенные к ним инстансы. С помощью Сетевой топологии можно эффективно визуализировать структуру и понимать связи сети.

Сетевая топология находится в главном разделе меню платформы Проект-> Сеть -> Сетевая топология. На этой странице отображается автоматически сформированная схема взаимодействия компонентов сети.

Чтобы просмотреть сетевую схему, выберите вкладку Граф.

network-topology_overview-2.png

Чтобы просмотреть сетевую топологию, выберите вкладку Топология.

network-topology_overview.png

Информация о сетях и подсетях

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

Информация включает в себя диапазоны IP-адресов, статус и связанные компоненты.

Прямо на схеме можно удалить сети и подсети или перейти к редактированию свойств элементов.

network-topology_overview-3.png

Сети

Создать новую сеть

  1. В главном меню платформы выберите Проект > Сеть > Сети.

  2. Нажмите Создать сеть.

  3. Введите параметры:

    • Имя сети — ведите название сети.

    • Разрешить Admin State (опционально) — установите флажок, если нужно, чтобы сразу после создания сеть активировалась.

    • Создать подсеть (опционально) — включите это опцию, если нужно сразу создать подсеть. В этом случае в окне создания сети после нажатия на кнопку Далее нужно будет указать параметры сети. Если подсеть не требуется, то опцию нужно отключить. В этом случае будет создана только сеть. При этом подсеть можно будет создать отдельно.

    В облачной сети должна быть хотя бы одна подсеть. После удаления подсеть невозможно восстановить.

    • MTU (Опционально) — укажите максимальный размер блока передачи данных. Минимум:

      • Для подсети IPv4 — 68 байт
      • Для подсети IPv6 — 1280 байт.
    • Название подсети — введите название подсети.
    • Сетевой адрес — укажите адрес сети в диапазоне адресов 192.168.0.0/24. Например, 192.168.88.0/24.
    • Версия IP — выберите версию IP:
      • IPv4
      • IPv6
    • IP шлюза — Если не указан IP-адрес шлюза, то по умолчанию присваивается первое значение сети. Например, 192.168.88.1. Для того чтобы не использовать шлюз, включите опцию "Выключить шлюз".

      Нажмите кнопку Далее, если активирована опция Создать подсеть, и заполните параметры подсети:

      network-network-create.png
  4. Нажмите кнопку Далее.

  5. На вкладке Детали подсети заполните параметры.

При выключенном DHCP (Enable DHCP без галки) не будет работать cloud-init.

  • Выделение пулов (DHCP Pool) — укажите пул адресов, выдаваемых по DHCP в формате "начальный адрес -конечный адрес".

  • Сервера DNS — укажите адреса серверов DNS. Если их несколько, каждый адрес укажите на новой строке.

  • Маршруты узла (Host Routes) — укажите дополнительные маршруты для хостов, если они есть.

    network-network-create-2.png
  1. Нажмите Создать.

Новая сеть и подсеть созданы. Они отобразятся в списке всех сетей и на схеме Сетевой топологии.

Удалить подсеть

  1. В главном меню платформы выберите Проект > Сеть > Сети.

  2. Нажмите на название облачной сети, в которой находится подсеть.

  3. Перейдите на вкладку Подсети.

  4. Напротив нужной подсети нажмите на стрелку вниз и выберите пункт Удалить подсеть.

  5. В открывшемся окне подтвердите удаление.

В облачной сети должна быть хотя бы одна подсеть. После удаления подсеть невозможно восстановить.

Маршрутизаторы

Маршрутизаторы в OpenStack Horizon управляют передачей данных между различными сетями в вашем облачном окружении, обеспечивая связь между внутренними и внешними сетями.

Создать новый маршрутизатор

  1. В главном меню платформы выберите Проект -> Сети -> Маршрутизаторы.
  2. Нажмите Создать Маршрутизатор.
  3. Укажите параметры:
    • Подсеть — выберите ранее созданную.
    • IP Адрес — укажите адрес подсети, что бы роутер являлся шлюзом для подсети.
  4. Нажмите Создать Маршрутизатор.

Чтобы убедиться, что внутренняя и внешняя сеть имеют связь через созданный маршрутизатор, перейдите в раздел Проект-> Сеть -> Сетевая топология.

routers_router-create.png 

Добавление сетевого интерфейса к маршрутизатору

Сетевой интерфейс — это сетевой порт сервера с уникальным MAC-адресом. Создаётся автоматически на каждом сервере. Также его можно создать отдельно для нового маршрутизатора.

Подключение интерфейсов маршрутизатора к подсетям позволяет управлять маршрутизацией трафика внутри вашей сетевой инфраструктуры.

Для подключения сетевого интерфейса:

  1. В разделе Маршрутизаторы нажмите на название созданного маршрутизатора.
  2. В открывшихся сведениях о маршрутизаторе выберите вкладку Интерфейсы и нажмите Добавить интерфейс.
  3. В поле Подсеть выберите подсеть, к которой нужно подключить маршрутизатор.
  4. Нажмите Отправить.

Удалить маршрутизатор

  1. Перейдите в раздел Проект -> Сети -> Маршрутизаторы.
  2. В строке с маршрутизатором нажмите на стрелку вниз и выберите Удалить Маршрутизатор.

Убедитесь, что это не повлияет на связность внутренних сетей и доступ к внешнему интернету.

Группы безопасности

Группы безопасности в OpenStack действуют как виртуальные фаерволы, устанавливающие правила для входящего и исходящего трафика инстансов. Группу безопасности можно добавить к инстансу ВМ как на этапе создания ВМ, так и создать отдельно в разделе Сети и добавить позже.

security-groups_overview.png

Создать группу безопасности

  1. В главном меню перейдите в раздел Проект > Сети > Группы безопасности.
  2. Нажмите Создать группу безопасности.
  3. Укажите параметры:
    • Имя — название группы безопасности. Длина имени — от 1 символа. Рекомендуется использовать до 15 символов.Может содержать прописные и строчные буквы латинского алфавита, цифры, знаки препинания и специальные символы.
    • Описание — описание группы безопасности, заполняется при необходимости.
  4. Подтвердите создание, нажав Создать группу безопасности.

Группа безопасности появится в общем списке. Теперь можно настроить правила для этой группы.

Добавить правила в группу безопасности

Созданная группа безопасности не содержит правил, поэтому любой входящий и исходящий трафик запрещён.

Если группа имеет правила только для входящего трафика, сервер может только отвечать на запросы, но не создавать их.

Если группа имеет правила только для исходящего трафика, сервер может создавать запросы и получать ответы на них, но не может принимать входящие запросы.

В одном проекте можно создать максимум 200 правил. Они могут содержаться в одной группе безопасности или нескольких.

Для добавления правил безопасности:

  1. В главном меню перейдите в раздел Проект -> Сети -> Группы безопасности.

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

    security-groups_rules-managment.png
  3. Нажмите Добрать правило и введите параметры для нового правила для входящего или исходящего трафика.

  • Правило -- выберите правило для группы безопасности. От выбора значения в этом поле будет зависеть количество других полей в форме и варианты их заполнения. Есть следующие правила:

    • TCP — транспортный протокол, гарантирующий доставку данных. Его используют SSH, RDP, HTTPS;
    • UDP — транспортный протокол, не требующий установки соединения и не гарантирующий доставку данных. Его используют DNS, DHCP, SNMP;
    • ICMP — протокол межсетевых управляющих сообщений. Главным образом, используется утилитой Ping; Все — выбор всех протоколов;
  • Направление — направление трафика серверов, входящих в группу безопасности:

    • Входящее — правило относится к трафику, принимаемому серверами.
    • Исходящее — правило относится к трафику, отправляемому серверами.
  • Открыть порт — порт транспортного уровня, к которому применяется правило. Используется для всех протоколов, кроме ICMP:

    • Порт — порт, по которому принимается и отправляется трафик.
    • Диапазон Портов — диапазон портов, по которому принимается и отправляется трафик.
    • Все порты — правило применяется для всех портов.

Если нужно создать правило для разных портов или диапазонов портов, создайте отдельные правила для каждого порта или диапазона.

  • Удаленный адрес — адрес, на который распространяется правило:

    • CIDR — адрес подсети в формате IPv4 или IPv6 с указанием размера подсети.
    • Группа безопасности — существующая группа безопасности. Правило применяется для серверов, которые используют выбранную группу безопасности. Нажмите на кнопку Добавить.
  1. Проверьте параметры и нажмите Добавить.

security-groups_add-new-rule.png

Новое правило для группы безопасности создано.

Удаление правила группы безопасности

Чтобы удалить правило группы безопасности:

  1. В главном меню платформы выберите Проект -> Сети -> Группы безопасности.

  2. В строке с группой безопасности, из которой нужно удалить правило, нажмите на стрелку вниз и выберите Управление правилами.

  3. Выберите правило и нажмите Удалить правило и подтвердите это действие.

Если нужно удалить несколько правил, то проставьте галочки рядом с удаляемыми правилами и над списком нажмите на кнопку Удалить правила и затем подтвердите это действие.

Удалить группу безопасности

Нельзя удалить:
- Группу безопасности по умолчанию -- default; 
- Группу безопасности, прикрепленную к определенному сетевому интерфейсу. 

Чтобы удалить группу безопасности:

  1. В главном меню платформы выберите Проект -> Сети -> Группы безопасности.
  2. Выберите нужную группу и нажмите на стрелку вниз.
  3. Нажмите кнопку Удалить группу безопасности и подтвердите удаление.

Плавающие IP-адреса

Когда в OpenStack создаётся экземпляр, ему автоматически назначается фиксированный IP-адрес в сети, к которой он подключён. Этот адрес остаётся с экземпляром до его удаления.

Кроме фиксированного IP, к экземпляру можно привязать и плавающий IP-адрес. В отличие от фиксированного, плавающий IP можно в любой момент отвязать от одного экземпляра и привязать к другому, независимо от его состояния.

Плавающие IP – публичные статические IP-адреса, которые можно назначать инстансам проекта. Плавающие адреса предназначены для организации сетевой достижимости к инстансам проекта, используя при этом механизм SNAT («преобразование сетевых адресов»). В результате происходит замена адреса источника ( source) при прохождении пакета в одну сторону и обратной замене адреса назначения (destination) в ответном пакете.

Каждый проект содержит ограниченное количество плавающих IP-адресов, их количество регулируется квотой публичных адресов, которое определяет владелец проекта в OpenStack.

В этой инструкции описывается резервирование плавающего IP-адреса из существующего пула адресов и привязка этого адреса к конкретному экземпляру.

Выделить плавающий IP-адрес

  1. В главном меню платформы выберите Проект -> Сети -> Плавающие IP.
  2. Нажмите Выделить IP проекту.
  3. Выберите Пул, из которого IP-адреса будут выделены.
  4. Нажмите Выделить IP.

network-floating-ip.png

Новый плавающий IP-адрес появится в списке.

Если возникает ошибка при выделении плавающего IP-адреса, проверьте квоту проекта.

Привязка плавающего IP к серверу

Для назначения плавающего IP, необходимо указывать доступный публичный IP и соответствующий порт назначения инстанса.

В интерфейсе OpenStack Horizon вы можете назначить (связать) или снять ранее назначенный плавающий IP из двух точек:

  1. В главном меню платформы выберите Проект -> Сети -> Плавающие IP.
  2. В строке с созданным IP-адресом нажмите Назначить.
  3. Укажите публично доступный IP-адрес и соответствующий Порт назначения инстанса. Назначение плавающего IP допустимо только для портов инстансов, подсети которых скоммутированы с внутренним маршрутизатором проекта
  4. Нажмите Назначить, чтобы завершить привязку IP и инстанса.

network_floating-ip-mount.png

Отвязать плавающий IP-адрес

Плавающий IP-адрес можно отвязать от инстанса, если он больше не нужен. Для этого:

  1. В главном меню платформы выберите Проект -> Сети -> Плавающие IP.
  2. В строке с созданным IP-адресом нажмите Снять назначение для отвязки IP от инстанса.
  3. Освободите плавающий IP,нажав в строке с этим IP, на стрелку вниз -> Оободить плавающий IP.

network_floating-ip-release.png

Освобождение плавающего IP возвращает его в пул доступных адресов и делает его доступным для использования другими проектами или инстансами.