Порты
Порт — это виртуальная сетевая карта, на которую из подсети назначается связка MAC-адреса и приватного IP-адреса. IP-адрес назначается на порт в рамках подсети, в которой находится порт.
Порты используются для подключения устройств к приватным подсетям, подсетям глобального роутера и публичным подсетям. Если от устройства отключить порт, оно будет отключено и от подсети. Приватную подсеть нельзя удалить, если в ней есть хотя бы один порт.
Работать с портами можно в панели управления, с помощью OpenStack CLI или Terraform.
В облачных сетях автоматически создаются служебные порты, управление ими недоступно:
- два DHCP-порта в приватной подсети. Создаются при включении DHCP в подсети, удаляются при отключении DHCP;
- три служебных порта в подсети глобального роутера для сетевого оборудования. Создаются при подключении приватной сети к глобальному роутеру, удаляются при отключении приватной сети от глобального роутера или при удалении глобального роутера;
- VRRP-порты и downlinks (порты для резервирования) в приватных подсетях, в которых находится балансировщик нагрузки. Количество служебных портов зависит от типа балансировщика, подробнее о портах балансировщика нагрузки;
- порт в приватной подсети, в которой находится файловое хранилище. Создается вместе с подсетью для файлового хранилища, можно удалить только с хранилищем.
Добавить порт в подсеть
Порт можно добавить в приватную подсеть, подсеть глобального роутера или публичную подсеть.
Панель управления
OpenStack CLI
-
В панели управления перейдите в раздел Облачная платформа → Сеть.
-
Откройте вкладку в зависимости от того, в какую подсеть нужно добавить порт:
- для приватной подсети или подсети глобального роутера — Приватные сети;
- для публичной подсети — Публичные сети.
-
Откройте карточку подсети → вкладка Порты.
-
Нажмите Добавить порт.
-
Выберите подсеть.
-
Введите IP-адрес порта.
-
Нажмите Добавить порт.
-
Создайте порт в подсети:
openstack port create \
--network <network> \
--fixed-ip subnet=<subnet>,ip-address=<port_ip_address> \
<port_name>Укажите:
<network>
— ID или имя приватной сети, сети глобального роутера, можно посмотреть с помощью командыopenstack network list
. Для публичной подсети совпадает с параметром<subnet>
;<subnet>
— ID или имя подсети, можно посмотреть с помощью командыopenstack subnet list
;<port_ip_address>
— IP-адрес порта;<port_name>
— имя порта.
Добавить облачный сервер или ноду кластера Managed Kubernetes в подсеть через порт
Облачный сервер после создания сервера можно добавить в приватную подсеть, подсеть глобального роутера или публичную подсеть. Ноду кластера Managed Kubernetes можно добавить в приватную по дсеть или подсеть глобального роутера.
Для этого нужно добавить к серверу или ноде порт.
Панель управления
OpenStack CLI
- В панели управления перейдите в раздел Облачная платформа → Серверы.
- Откройте страницу сервера → вкладка Порты.
- Нажмите Добавить порт.
- Выберите приватную подсеть, подсеть глобального роутера или публичную подсеть.
- Введите IP-адрес порта.
- Нажмите Добавить порт.
-
Создайте порт в подсети:
openstack port create \
--network <network> \
--fixed-ip subnet=<subnet>,ip-address=<port_ip_address> \
<port_name>Укажите:
<network>
— ID или имя приватной подсети, подсети глобального роутера или публичной подсети, можно посмотреть с помощью командыopenstack network list
. Для публичной подсети совпадает с параметром<subnet>
;<subnet>
— ID или имя подсети, можно посмотреть с помощью командыopenstack subnet list
;<port_ip_address>
— IP-адрес порта;<port_name>
— имя порта.
-
Добавьте порт к облачному серверу:
openstack server add port <server> <port>
Укажите:
<server>
— ID или имя облачного сервера, можно посмотреть с помощью командыopenstack server list
;<port>
— ID или имя порта, можно посмотреть с помощью командыopenstack port list
Подключить публичный IP-адрес к порту в приватной подсети
Если к порту в приватной подсети подключен облачный сервер или балансировщик нагрузки, к порту можно подключить публичный IP-адрес.
Для подключения публичного IP-адреса в разделах устройств в панели управления используйте инструкцию Публичные IP-адреса.
Панель управления
OpenStack CLI
- Убедитесь, что устройство находится в подсети, которая соответствует требованиям. Для подготовки подсети используйте инструкцию Подготовить приватную подсеть для подключения публичного IP-адреса.
- В панели управления перейдите в раздел Облачная платформа → Сеть.
- Откройте вкладку Приватные сети.
- Откройте страницу сети → вкладка Порты.
- В строке порта облачного сервера или балансировщика нагрузки в столбце Публичный IP нажмите Подключить.
- Выберите публичный IP-адрес.
-
Подключите публичный IP-адрес к порту:
openstack floating ip set --port <port> <public_ip_address>
Укажите:
<port>
— ID порта облачного сервера или балансировщика нагрузки, можно посмотреть с помощью командыopenstack port list
;<public_ip_address>
— ID или публичный IP-адрес, можно посмотреть с помощью командыopenstack floating ip list
Отключить публичный IP-адрес от порта в приватной подсети
Для отключения публичного IP-адреса в разделах устройств в панели управления используйте инструкцию Публичные IP-адреса.
Панель управления
OpenStack CLI
- Убедитесь, что устройство находится в подсети, которая соответствует требованиям. Для подготовки подсети используйте инструкцию Подготовить приватную подсеть для подключения публичного IP-адреса.
- В панели управления перейдите в раздел Облачная платформа → Сеть.
- Откройте вкладку Приватные сети.
- Откройте страницу сети → вкладка Порты.
- В строке порта облачного сервера или балансировщика нагрузки в столбце Публичный IP в меню публичного IP-адреса выберите Отключить публичный IP.
- Выберите публичный IP-адрес.
-
Отключите публичный IP-адрес от порта:
openstack floating ip unset --port <public_ip_address>
Укажите
<public_ip_address>
— ID или публичный IP-адрес, можно посмотреть с помощью командыopenstack floating ip list
Включить порт
Панель управления
OpenStack CLI
-
В панели управления перейдите в раздел Облачная платформа → Сеть.
-
Откройте вкладку в зависимости от того, для какой подсети нужно включить порт:
- для приватной подсети или подсети глобального роутера — Приватные сети;
- для публичной подсети — Публичные сети.
-
Откройте карточку подсети → вкладка Порты.
-
В строке порта включите порт.
-
Посмотрите список портов в подсети и скопируйте ID или имя нужного порта:
openstack port list --fixed-ip subnet=<subnet>
Укажите
<subnet>
— ID или имя подсети, можно посмотреть с помощью командыopenstack subnet list
-
Включите порт:
openstack port set --enable <port>
Укажите
<port>
— ID или имя порта, которое вы скопировали на шаге 2.
Отключить порт
Панель управления
OpenStack CLI
-
В панели управления перейдите в раздел Облачная платформа → Сеть.
-
Откройте вкладку в зависимости от того, для какой подсети нужно отключить порт:
- для приватной подсети или подсети глобального роутера — Приватные сети;
- для публичной подсети — Публичные сети.
-
Откройте карточку подсети → вкладка Порты.
-
В строке порта отключите порт.
-
Посмотрите список портов в подсети и скопируйте ID или имя нужного порта:
openstack port list --fixed-ip subnet=<subnet>
Укажите
<subnet>
— ID или имя подсети, можно посмотреть с помощью командыopenstack subnet list
-
Отключите порт:
openstack port set --disable <port>
Укажите
<port>
— ID или имя порта, которое вы скопировали на шаге 2.
Удалить порт
Панель управления
OpenStack CLI
-
В панели управления перейдите в раздел Облачная платформа → Сеть.
-
Откройте вкладку в зависимости от того, порт из какой подсети нужно удалить:
- для приватной подсети или подсети глобального роутера — Приватные сети;
- для публичной подсети — Публичные сети.
-
Откройте карточку подсети → вкладка Порты.
-
В строке порта нажмите .
-
Если это порт приватной подсети и кнопка неактивна, к порту подключено устройство, запрещающее удаление. Удалите это устройство и вернитесь на шаг 1.
Для удаления устройства используйте инструкции:
-
Посмотрите список портов в подсети и скопируйте ID или имя нужного порта:
openstack port list --fixed-ip subnet=<subnet>
Укажите
<subnet>
— ID или имя подсети, можно посмотреть с помощью командыopenstack subnet list
-
Удалите порт:
openstack port delete <port>
Укажите
<port>
— ID или имя порта, которое вы скопировали на шаге 2.