Подготовка сетевого окружения
1. DNS записи для встроенных сервисов
Важно: Подготовка DNS-записей должна быть выполнена до установки Nova Container Platform. Во избежание задержек при развертывании кластера, необходимо заранее зарезервировать и настроить DNS-имена, указывающие на infra-узлы кластера. Эти DNS-записи будут использоваться встроенными компонентами платформы.
Рекомендуемые DNS-записи для базовой установки:
-
nova-cilium-hubble.nova.mycompany.local -
nova-release-git-main.nova.mycompany.local -
nova-console.nova.mycompany.local -
nova-oauth.nova.mycompany.local -
nova-alertmanager-main.nova.mycompany.local -
nova-grafana-main.nova.mycompany.local -
nova-prometheus-main.nova.mycompany.local
Дополнительные записи при использовании модулей OpenSearch и NeuVector:
-
nova-neuvector-ui.nova.mycompany.local -
nova-neuvector-api-docs.nova.mycompany.local -
nova-logs-main.nova.mycompany.local
Дополнительные записи при использовании модуля Service Mesh:
-
nova-jaeger-main.apps.fed01.istio -
nova-kiali.apps.fed01.istio -
nova-prometheus-mesh.apps.fed01.istio -
nova-grafana-mesh.apps.fed01.istio -
apps.fed01.istio
|
Не забудьте заменить |
2. Внешние взаимодействия
В Nova Container Platform для установки кластера по умолчанию требуется доступ к сети Интернет.
В вашей инфраструктуре необходимо обеспечить доступ к следующим ресурсам:
| Ресурс | DNS-имя | Порт | IP-адреса |
|---|---|---|---|
Хранилище образов |
hub.nova-platform.io |
https/443 |
217.73.59.254/32 |
Сервис проверки лицензии |
access.nova-platform.io |
https/443 |
217.73.59.254/32 |
Сервис доставки ПО |
code.nova-platform.io |
https/443 |
217.73.59.254/32 |
Сервис настройки ПО |
sun.nova-platform.io |
https/8140 |
217.73.59.254/32 |
2.1. Закрытое сетевое окружение
Сервер управления Nova Universe поддерживает использование IP-адреса, настроенного как с помощью DHCP, так и заданного статически. Рекомендуется размещать сервер управления в отдельной от кластеров Kubernetes сети.
|
|
Требования к DNS: Для установки платформы с использованием Nova Universe требуется внутренний DNS-сервер, при этом создание записей в нем является обязательным условием. При использовании внешнего DNS-сервера, например |
2.1.1. DNS записи для сервисов Nova Universe
|
Подготовка DNS-записей должна быть выполнена до установки Nova Container Platform. Во избежание задержек при развертывании кластера, необходимо заранее зарезервировать и настроить DNS-имена, указывающие на Nova Universe. |
Необходимые DNS-записи для установки в закрытом сетевом окружении:
-
hub.universe.mycompany.local -
sun.universe.mycompany.local -
repo.universe.mycompany.local
DNS-записи необходимые для взаимодействия с сервисами Nova Universe с АРМ пользователя:
-
cluster-manager.universe.mycompany.local -
api.universe.mycompany.local -
nova-api.universe.mycompany.local -
uploads.universe.mycompany.local
|
Не забудьте заменить |
2.1.2. Требования к межсетевому экранированию
Сетевые правила для обеспечения взаимодействия Nova Universe и узлов Nova Container Platform приведены в таблице:
| Источник | Адресат | Тип трафика | Порт/Протокол | Описание |
|---|---|---|---|---|
Nova Universe |
Мастер-узлы |
Входящий |
6443/tcp |
Kubernetes API |
Nova Universe |
Мастер-узлы |
Входящий |
8200/tcp |
StarVault API |
Nova Universe |
Все узлы |
Входящий |
22/tcp |
SSH |
Nova Universe |
Инфраструктурные узлы |
Входящий |
80/tcp |
Ingress Nginx Controller HTTP |
Nova Universe |
Инфраструктурные узлы |
Входящий |
443/tcp |
Ingress Nginx Controller HTTPS |
Все узлы |
Nova Universe |
Входящий |
443/tcp |
Ingress Nginx Controller HTTPS |
Сетевые правила для обеспечения взаимодействия Nova Universe и АРМ пользователя приведены в таблице:
| Источник | Адресат | Тип трафика | Порт/Протокол | Описание |
|---|---|---|---|---|
АРМ пользователя платформы |
Nova Universe |
Входящий |
443/tcp |
Ingress Nginx Controller HTTPS |
3. Внутренние взаимодействия
В данном разделе описаны требования для развертывания Nova Container Platform в подготовленной пользователем инфраструктуре.
3.1. Требования к межсетевому экранированию
Для корректной установки и функционирования Nova Container Platform убедитесь, что в пределах сетевого сегмента (сегментов), в котором располагаются узлы платформы, настроен представленный ниже перечень сетевых правил, либо ограничения по сетевому взаимодействию узлов отсутствуют.
3.1.1. Узел nova-ctl для управления платформой
| Источник | Адресат | Тип трафика | Порт/Протокол | Описание |
|---|---|---|---|---|
Узел |
Мастер-узлы |
Входящий |
6443/tcp |
Kubernetes API |
Узел |
Мастер-узлы |
Входящий |
8200/tcp |
StarVault API |
Узел |
Все узлы |
Входящий |
22/tcp |
SSH |
Узел |
Инфраструктурные узлы |
Входящий |
80/tcp |
Ingress Nginx Controller HTTP |
Узел |
Инфраструктурные узлы |
Входящий |
443/tcp |
Ingress Nginx Controller HTTPS |
3.1.2. Мастер-узлы кластера Kubernetes
| Источник | Адресат | Тип трафика | Порт/Протокол | Описание |
|---|---|---|---|---|
Все узлы, АРМ пользователей платформы |
Мастер-узлы |
Входящий |
6443/tcp |
Kubernetes API |
Все узлы |
Мастер-узлы |
Входящий |
8200/tcp |
StarVault API |
Все узлы |
Мастер-узлы |
Входящий |
18200/tcp |
StarVault API |
Все узлы |
Мастер-узлы |
Входящий |
2379/tcp |
Etcd Client Requests |
Инфраструктурные узлы |
Мастер-узлы |
Входящий |
10259/TCP |
Kubernetes Scheduler metrics |
Инфраструктурные узлы |
Мастер-узлы |
Входящий |
10257/TCP |
Kubernetes Controller Manager metrics |
Мастер-узлы |
Мастер-узлы |
Двунаправленный |
8201/tcp |
StarVault Cluster Endpoint |
Мастер-узлы |
Мастер-узлы |
Двунаправленный |
2380/tcp |
Etcd Peer Requests |
Мастер-узлы |
Все узлы |
Исходящий |
10250/TCP |
Kubelet |
3.1.3. Инфраструктурные узлы кластера Kubernetes
| Источник | Адресат | Тип трафика | Порт/Протокол | Описание |
|---|---|---|---|---|
Все узлы, АРМ пользователей платформы |
Инфраструктурные узлы |
Входящий |
80/tcp |
Ingress Nginx Controller HTTP |
Все узлы, АРМ пользователей платформы |
Инфраструктурные узлы |
Входящий |
443/tcp |
Ingress Nginx Controller HTTPS |
Все узлы |
Инфраструктурные узлы |
Входящий |
8443/tcp |
Ingress Nginx Controller Validating webhook |
Инфраструктурные узлы |
Все узлы |
Исходящий |
9100/tcp |
Prometheus Node Exporter |
Инфраструктурные узлы |
Все узлы |
Исходящий |
9962/tcp |
Cilium Agent metrics |
Инфраструктурные узлы |
Все узлы |
Исходящий |
9963/tcp |
Cilium Operator metrics |
Инфраструктурные узлы |
Мастер-узлы |
Исходящий |
10259/TCP |
Kubernetes Scheduler metrics |
Инфраструктурные узлы |
Мастер-узлы |
Исходящий |
10257/TCP |
Kubernetes Controller Manager metrics |
Инфраструктурные узлы |
Все узлы |
Исходящий |
10250/TCP |
Kubelet |
Инфраструктурные узлы |
Инфраструктурные узлы |
Исходящий |
10249/tcp |
Kube Proxy metrics |
3.1.4. Узлы балансировки входящих запросов кластера Kubernetes (Ingress-узлы)
| Источник | Адресат | Тип трафика | Порт/Протокол | Описание |
|---|---|---|---|---|
Все узлы, АРМ пользователей платформы |
Ingress-узлы |
Входящий |
80/tcp |
Ingress Nginx Controller HTTP |
Все узлы, АРМ пользователей платформы |
Ingress-узлы |
Входящий |
443/tcp |
Ingress Nginx Controller HTTPS |
Все узлы |
Ingress-узлы |
Входящий |
8443/tcp |
Ingress Nginx Controller Validating webhook |
Инфраструктурные узлы |
Ingress-узлы |
Входящий |
10254/TCP |
Ingress Nginx Controller metrics |
|
Если в конфигурации кластера Nova Container Platform не используются выделенные Ingress-узлы, то все правила для Ingress-узлов необходимо применить к рабочим узлам (Worker). |
3.1.5. Все узлы кластера Kubernetes
| Источник | Адресат | Тип трафика | Порт/Протокол | Описание |
|---|---|---|---|---|
Все узлы |
Все узлы |
Двунаправленный |
179/tcp |
BGP |
Все узлы |
Все узлы |
Двунаправленный |
4789/udp |
VXLAN Overlay |
Все узлы |
Все узлы |
Двунаправленный |
8472/udp |
VXLAN Overlay |
Все узлы |
Все узлы |
Двунаправленный |
IPIP (4) |
IP in IP Protocol |
Все узлы |
Все узлы |
Двунаправленный |
4240/tcp |
Cilium Health Check |
Все узлы |
Все узлы |
Двунаправленный |
ICMP (8/0) |
Cilium Health Check |
Все узлы |
Все узлы |
Двунаправленный |
4244/tcp |
Cilium Hubble server |
Все узлы |
Все узлы |
Двунаправленный |
4245/tcp |
Cilium Hubble relay |
Инфраструктурные узлы |
Все узлы |
Входящий |
9100/tcp |
Prometheus Node Exporter |
Инфраструктурные узлы |
Все узлы |
Входящий |
9962/tcp |
Cilium Agent metrics |
Инфраструктурные узлы |
Все узлы |
Входящий |
9963/tcp |
Cilium Operator metrics |
Инфраструктурные узлы |
Все узлы |
Входящий |
10249/tcp |
Kube Proxy metrics |
Инфраструктурные узлы и мастер-узлы |
Все узлы |
Входящий |
10250/tcp |
Kubelet |
Все узлы |
Мастер-узлы |
Исходящий |
2379/tcp |
Etcd Client Requests |
Все узлы |
Мастер-узлы |
Исходящий |
8200/tcp |
StarVault API |
Все узлы |
Инфраструктурные узлы |
Исходящий |
80/tcp |
Ingress Nginx Controller HTTP (Internal) |
Все узлы |
Инфраструктурные узлы |
Исходящий |
443/tcp |
Ingress Nginx Controller HTTPS (Internal) |
Все узлы |
Инфраструктурные узлы, Ingress-узлы |
Исходящий |
8443/tcp |
Ingress Nginx Controller Validating webhook |
Все узлы |
Мастер-узлы |
Исходящий |
6443/tcp |
Kubernetes API |
|
Если установку Nova Container Platform планируется выполнять с использованием HTTP-прокси, необходимо добавить в список разрешающих правил доступ (исходящий трафик) к HTTP-прокси со всех узлов платформы. |
3.1.6. АРМ пользователей платформы
| Источник | Адресат | Тип трафика | Порт/Протокол | Описание |
|---|---|---|---|---|
АРМ пользователей платформы |
Ingress-узлы |
Исходящий |
80/tcp |
Ingress Nginx Controller HTTP (Public) |
АРМ пользователей платформы |
Ingress-узлы |
Исходящий |
443/tcp |
Ingress Nginx Controller HTTPS (Public) |
АРМ пользователей платформы |
Инфраструктурные узлы |
Исходящий |
80/tcp |
Ingress Nginx Controller HTTP (Internal) |
АРМ пользователей платформы |
Инфраструктурные узлы |
Исходящий |
443/tcp |
Ingress Nginx Controller HTTPS (Internal) |
АРМ пользователей платформы |
Мастер-узлы |
Исходящий |
6443/tcp |
Kubernetes API |
|
При развертывании Nova Container Platform в публичных облаках за контроль сетевого взаимодействия, как правило, отвечает как функционал списков контроля доступа (Network ACL), так и функционал групп безопасности. В данном случае убедитесь, что настроенные в инфраструктуре правила не пересекаются и не блокируют друг друга. Вы также можете добавить узлы платформы в одну общую группу безопасности, в рамках которой сетевое взаимодействие не ограничивается. |
3.2. Требования к сетевым балансировщикам
Для работы внутренних компонентов Nova Container Platform не требуется наличие внешних сетевых балансировщиков в пользовательской инфраструктуре.
Конфигурация кластера предусматривает наличие необходимых встроенных механизмов для обеспечения отказоустойчивого доступа к компонентам Kubernetes API и Ingress.
Однако, если вы хотите обеспечить внешний отказоустойчивый доступ пользователей к компонентам Kubernetes API и Ingress, следует учесть следующие требования к настройке собственных сетевых балансировщиков:
Балансировщик Kubernetes API предоставляет общую точку подключения пользователю и сервисам для работы с кластером.
-
Поддерживается только Layer-4 балансировка (Raw TCP, SSL Passthrough).
Информация
Для работы с Kubernetes API не требуется настройка сохранения сессий (персистентность).
На сетевом балансировщике должны быть настроены следующие порты:
| Порт | Backend-узлы | Внутренний доступ | Внешний доступ | Описание |
|---|---|---|---|---|
6443 |
Мастер-узлы. Для проверки доступности узла (healthcheck) необходимо настроить HTTP-проверку, используя путь |
Да |
Да |
Kubernetes API |
Балансировщики Ingress предоставляют общую точку подключения пользователям и сервисам для работы с веб-сервисами, публикуемыми через Ingress-контроллеры, а также сервисами Kubernetes, для которых используется Layer-4 балансировка средствами Ingress-контроллера.
-
Поддерживается Layer-4 балансировка (Raw TCP, Raw UDP, SSL Passthrough).
-
Поддерживается Layer-7 балансировка для доступа к публикуемым веб-сервисам.
Информация
Использование дополнительной Layer-7 балансировки для доступа к публикуемым веб-сервисам может привести к увеличению затрат на их настройку и поддержание стабильности сессий и подключений.
На сетевом балансировщике должны быть настроены следующие порты:
| Порт | Backend-узлы | Внутренний доступ | Внешний доступ | Описание |
|---|---|---|---|---|
80 |
Инфраструктурные узлы. Для проверки доступности узла (healthcheck) необходимо настроить HTTP-проверку, используя путь |
Да |
Да |
Доступ к служебным веб-сервисам Ingress по HTTP. |
443 |
Инфраструктурные узлы. Для проверки доступности узла (healthcheck) необходимо настроить HTTP-проверку, используя путь |
Да |
Да |
Доступ к служебным веб-сервисам Ingress по HTTPS. |
53 |
Инфраструктурные узлы |
Да |
Да |
Доступ к DNS-службе, если используется внутренний или гибридный режим работы DNS. |
80 |
Узлы балансировки входящего трафика (Ingress). Для проверки доступности узла (healthcheck) необходимо настроить HTTP-проверку, используя путь |
Да |
Да |
Доступ к публичным веб-сервисам Ingress по HTTP. |
443 |
Узлы балансировки входящего трафика (Ingress). Для проверки доступности узла (healthcheck) необходимо настроить HTTP-проверку, используя путь |
Да |
Да |
Доступ к публичным веб-сервисам Ingress по HTTPS. |
Указанный выше перечень портов может быть расширен при использовании собственных дополнительных правил TCP и UDP балансировки.
|
При установке Nova Container Platform в минимальной конфигурации роль узлов балансировки входящего трафика (Ingress) выполняют рабочие узлы, выделенные для пользовательских нагрузок. |
Рекомендуется к выполнению
-
После успешной настройки сетевого окружения перейдите к статье Подготовка узла nova-ctl для управления платформой