Создание вычислительного кластера
Ограничения
-
В вычислительном кластере должно быть как минимум три сервера, чтобы пользователи в режиме самообслуживания могли включить высокую доступность для мастер-серверов Kubernetes.
-
Поверх сети инфраструктуры можно создать только одну нетегированную сеть.
Предварительные требования
-
В кластере хранилища данных есть один или более дисков с ролью Хранилище.
Чтобы создать вычислительный кластер
Панель администратора
- Откройте экран Вычисления и нажмите Создать вычислительный кластер.
-
На шаге Серверы добавьте серверы в вычислительный кластер:
- Выберите серверы для добавления в вычислительный кластер. Можно выбрать только серверы с состоянием сети Настроено. Серверы в кластере высокой доступности сервера управления автоматически выбираются для присоединения к вычислительному кластеру.
-
Если сетевые интерфейсы серверов не настроены, щелкните по значку шестерни, выберите необходимые сети и нажмите Применить.
- Нажмите кнопку Далее.
-
На шаге Физическая сеть выполните следующие действия:
-
Включите или отключите управление IP-адресами:
- Если управление IP-адресами включено, встроенный DHCP-сервер автоматически назначит ВМ, подключенным к сети, IP-адреса из пулов IP-адресов, а также задаст для ВМ настраиваемые DNS-серверы. Кроме того, по умолчанию для всех сетевых портов ВМ будет включена защита от спуфинга. Каждый сетевой интерфейс ВМ сможет принимать и отправлять IP-пакеты, только если ему назначены IP- и MAC-адреса. При необходимости защиту от спуфинга для интерфейса ВМ можно отключить вручную.
- Если управление IP-адресами отключено, то ВМ, подключенные к сети, получат IP-адреса от DHCP-серверов в этой сети (при их наличии). Кроме того, защита от спуфинга будет отключена для всех сетевых портов ВМ, и ее нельзя будет включить вручную. Это означает, что каждый сетевой интерфейс ВМ с назначенными IP- и MAC-адресами или без них сможет принимать и отправлять IP-пакеты.
В любом случае можно будет вручную назначить статические IP-адреса изнутри виртуальных машин.
-
Укажите необходимые сведения для физической сети:
- Выберите сеть инфраструктуры, к которой будет подключена физическая сеть.
- Выберите тип физической сети: выберите VLAN и укажите идентификатор VLAN для создания сети на базе VLAN либо выберите Untagged (Без тега) для создания плоской физической сети.
- Если вы включили управление IP-адресами, диапазон IP-адресов подсети в формате CIDR будет заполнен автоматически. При необходимости можно указать шлюз. Если оставить поле Шлюз пустым, то шлюз будет исключен из сетевых параметров.
- Нажмите кнопку Далее.
Выбранная физическая сеть появится в списке вычислительных сетей на вкладке Сеть вычислительного кластера. По умолчанию она будет совместно использоваться всеми будущими проектами. Доступ к сети можно позже отключить на правой панели сети.
-
-
Если вы включили управление IP-адресами, вы будете перенаправлены на шаг DHCP и DNS, где можно настроить сетевые параметры для управления IP-адресами.
-
Включите или отключите встроенный DHCP-сервер:
- Если DHCP-сервер включен, сетевым интерфейсам ВМ будут автоматически назначены IP-адреса: либо из пулов IP-адресов, либо при отсутствии пулов из всего диапазона IP-адресов сети. DHCP-сервер получит первые два IP-адреса из пула IP-адресов. Например:
В подсети 192.168.128.0/24 без шлюза DHCP-серверу будут назначены IP-адреса 192.168.128.1 и 192.168.128.2.
В подсети 192.168.128.0/24, в которой шлюзу назначен IP-адрес 192.168.128.1, DHCP-серверу будут назначены IP-адреса 192.168.128.2 и 192.168.128.3.
- Если DHCP-сервер отключен, сетевые интерфейсы ВМ все равно получат IP-адреса, но их нужно будет назначить вручную внутри виртуальных машин.
Виртуальный DHCP-сервер будет работать только внутри текущей сети и не будет виден из других сетей.
- Если DHCP-сервер включен, сетевым интерфейсам ВМ будут автоматически назначены IP-адреса: либо из пулов IP-адресов, либо при отсутствии пулов из всего диапазона IP-адресов сети. DHCP-сервер получит первые два IP-адреса из пула IP-адресов. Например:
- Укажите один или несколько пулов IP-адресов (диапазоны IP-адресов, которые будут автоматически назначаться виртуальным машинам).
- Укажите DNS-серверы, которые будут использоваться виртуальными машинами. Эти серверы могут предоставляться виртуальным машинам посредством встроенного DHCP-сервера либо с помощью сетевой конфигурации cloud-init (если пакет cloud-init установлен в ВМ).
- Нажмите Добавить.
-
-
На шаге Дополнительные сервисы включите сервисы, которые будут установлены во время развертывания вычислительного кластера. Эти сервисы также можно установить позже. Затем нажмите кнопку Далее.
-
При установке Kubernetes также автоматически устанавливается сервис балансировщика нагрузки.
-
Для автономной установки Kubernetes и сервиса балансировщика нагрузки в среде без доступа к Интернету (в закрытом контуре) необходимо заранее установить на узлы пакеты hci-k8saas-files и amphora-x64-haproxy.qcow2.
-
- На шаге Сводка просмотрите конфигурацию и нажмите Создать кластер.
Отслеживать развертывание вычислительного кластера можно на экране Вычисления.
Интерфейс командной строки
Используйте следующую команду:
vinfra service compute create [--public-network <network>] [--subnet cidr=CIDR[,key=value,…]]
[--force] [--enable-k8saas] [--enable-lbaas] [--enable-metering] [--notification-forwarding <transport-url>]
[--disable-notification-forwarding] [--vlan-id <vlan-id>] --nodes <nodes>
--public-network <network>- Инфраструктурная сеть для подключения к ней физической вычислительной сети. Должна включать тип трафика «ВМ внешн.».
--subnet cidr=CIDR[,key=value,…]-
Подсеть для управления IP-адресами в физической вычислительной сети (требуется параметр
--public-network):cidr: маска подсети в нотации CIDR;- разделенные запятыми пары
key=valueс ключами (необязательно):gateway: IP-адрес шлюза.dhcp: включение/отключение виртуального DHCP-сервера.allocation-pool: пул IP-адресов из CIDR в форматеip1-ip2, гдеip1иip2— начальный и конечный IP-адреса. Укажите ключ несколько раз, чтобы создать несколько пулов IP-адресов.dns-server: IP-адрес сервера DNS; укажите несколько раз, чтобы задать несколько DNS-серверов.
Пример:
--subnet cidr=192.168.5.0/24,dhcp=enable --force- Пропустить проверку минимальных требований к оборудованию.
--enable-k8saas- Включение сервиса «Kubernetes как услуга».
--enable-lbaas- Включение сервиса «Балансировка нагрузки как услуга».
--enable-metering- Включение сервисов учета.
--notification-forwarding <transport-url>-
Включение перенаправления уведомлений через указанный транспортный URL в формате
driver://[user:pass@]host:port[,[userN:passN@]hostN:portN]?query, где:driver— поддерживаемый транспортный драйвер (kafka);user:pass— имя пользователя и пароль, используемые для аутентификации в брокере сообщений;host:portуказывает имя хоста или IP-адрес и номер порта брокера сообщений;query— параметры, которые переопределяют указанные в файле конфигурации брокера:topicуказывает имя топика;driver— драйвер сообщений:messaging,messagingv2,routing,log,test,noop.
Пример:
kafka://10.10.10.10:9092?topic=notifications --disable-notification-forwarding- Отключение перенаправления уведомлений
--vlan-id <vlan-id>- Создание физической сети на базе VLAN по указанному идентификатору VLAN.
--nodes <nodes>- Список имен хостов или идентификаторов серверов через запятую.
Например, чтобы создать состоящий из пяти серверов вычислительный кластер, который будет использовать инфраструктурную сеть Public и пул IP-адресов 10.94.129.64-10.94.129.79 для назначения виртуальным машинам IP-адресов, выполните:
# vinfra service compute create --nodes node001,node002,node003,node004,node005 \ --public-network Public --subnet cidr=10.94.0.0/16,dhcp=enable,gateway=10.94.0.1,\ allocation-pool=10.94.129.64-10.94.129.79,dns-server=10.30.0.27
Просмотреть сведения о вычислительном кластере можно в выводе команды vinfra service compute show:
# vinfra service compute show +--------------+-----------------------------------------------------------------------------------------------------------------+ | Field | Value | +--------------+-----------------------------------------------------------------------------------------------------------------+ | capabilities | cpu_models: | | | - EPYC-IBPB | | | - Nehalem | | | - Nehalem-IBRS | | | - SandyBridge | | | - SandyBridge-IBRS | | | - IvyBridge | | | - IvyBridge-IBRS | | | - Haswell | | | - Haswell-IBRS | | | - Haswell-noTSX | | | - Haswell-noTSX-IBRS | | | - Broadwell | | | - Broadwell-IBRS | | | - Broadwell-noTSX | | | - Broadwell-noTSX-IBRS | | | - Skylake-Client | | | - Skylake-Client-IBRS | | | - Skylake-Server | | | - Skylake-Server-IBRS | | | - HostPassthrough | | | k8saas_capabilities: | | | v1.18.6: | | | features: | | | - nodegroups | | | release: v1.18 | | | upgrade: | | | - v1.19.9 | | | v1.19.9: | | | features: | | | - nodegroups | | | links: | | | deprecation: https://v1-19.docs.kubernetes.io/docs/setup/release/notes/#deprecation | | | release: v1.19 | | | upgrade: | | | - v1.20.7 | | | v1.20.7: | | | features: | | | - nodegroups | | | links: | | | deprecation: https://v1-20.docs.kubernetes.io/docs/setup/release/notes/#deprecation | | | release: v1.20 | | | upgrade: | | | - v1.21.3 | | | v1.21.3: | | | features: | | | - nodegroups | | | links: | | | deprecation: https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.21.md#deprecation | | | release: v1.21 | | | upgrade: [] | | | v1.22.2: | | | features: | | | - nodegroups | | | links: | | | deprecation: https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.22.md#deprecation | | | release: v1.22 | | | upgrade: [] | | | k8saas_versions: | | | - v1.22.2 | | | - v1.21.3 | | | - v1.20.7 | | | os_distributions: | | | - id: linux | | | os_type: linux | | | title: Generic Linux | | | - id: rockylinux8 | | | os_type: linux | | | title: Rocky Linux 8 | | | - id: almalinux8 | | | os_type: linux | | | title: Alma Linux 8 | | | - id: centos8 | | | os_type: linux | | | title: CentOS 8 | | | - id: centos7 | | | os_type: linux | | | title: CentOS 7 | | | - id: centos6 | | | os_type: linux | | | title: CentOS 6 | | | - id: rhel8 | | | os_type: linux | | | title: Red Hat Enterprise Linux 8 | | | - id: rhel7 | | | os_type: linux | | | title: Red Hat Enterprise Linux 7 | | | - id: ubuntu20.04 | | | os_type: linux | | | title: Ubuntu 20.04 | | | - id: ubuntu18.04 | | | os_type: linux | | | title: Ubuntu 18.04 | | | - id: ubuntu16.04 | | | os_type: linux | | | title: Ubuntu 16.04 | | | - id: debian10 | | | os_type: linux | | | title: Debian 10 | | | - id: debian9 | | | os_type: linux | | | title: Debian 9 | | | - id: windows | | | os_type: windows | | | title: Generic Windows | | | - id: win2k22 | | | os_type: windows | | | title: Windows Server 2022 | | | - id: win2k19 | | | os_type: windows | | | title: Windows Server 2019 | | | - id: win2k16 | | | os_type: windows | | | title: Windows Server 2016 | | | - id: win2k12r2 | | | os_type: windows | | | title: Windows Server 2012 R2 | | | - id: win2k12 | | | os_type: windows | | | title: Windows Server 2012 | | | - id: win2k8r2 | | | os_type: windows | | | title: Windows Server 2008 R2 | | | - id: win2k8 | | | os_type: windows | | | title: Windows Server 2008 | | | - id: win10 | | | os_type: windows | | | title: Windows 10 | | | - id: win8.1 | | | os_type: windows | | | title: Windows 8.1 | | | - id: win7 | | | os_type: windows | | | title: Windows 7 | | features | [] | | options | cpu_model: '' | | | custom_params: [] | | | notification_forwarding: disabled | | status | active | +--------------+-----------------------------------------------------------------------------------------------------------------+