Облачная платформаAdvanced

Настройка Выделенного балансировщика нагрузки для OpenSearch Кластера

Эта статья полезна?
Язык статьи: Русский
Показать оригинал
Страница переведена автоматически и может содержать неточности. Рекомендуем сверяться с английской версией.

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

Сценарии

Преимущества подключения к кластеру через выделенный балансировщик нагрузки:

  • Кластер без защиты также может использовать возможности сервиса Elastic Load Balance (ELB).
  • Можно использовать пользовательские сертификаты для двухсторонней аутентификации HTTPS.
  • Поддерживается мониторинг и настройка тревог трафика семиуровневого уровня, позволяющие постоянно отслеживать статус кластера.

Существует восемь различных форм сервиса ELB для кластеров в разных режимах безопасности, подключающихся к выделенному балансировщику нагрузки. Таблица 1 описывает возможности ELB для различных конфигураций кластера. Таблица 2 Описывает конфигурации различных форм сервиса ELB

Таблица 1 Возможности ELB для разных кластеров

Режим безопасности

Форма сервиса, предоставляемая ELB для внешних систем

Балансировка нагрузки ELB

Мониторинг трафика ELB

ELB двухсторонняя аутентификация

Режим без безопасности

Без аутентификации

Поддерживается

Поддерживается

Не поддерживается

Односторонняя аутентификация

Двухсторонняя аутентификация

Поддерживается

Поддерживается

Поддерживается

Режим безопасности + HTTP

Аутентификация по паролю

Поддерживается

Поддерживается

Не поддерживается

Односторонняя аутентификация + Аутентификация паролем

Двустроронняя аутентификация + Аутентификация паролем

Поддерживается

Поддерживается

Поддерживается

Режим безопасности + HTTPS

Односторонняя аутентификация + Аутентификация паролем

Двустроронняя аутентификация + Аутентификация паролем

Поддерживается

Поддерживается

Поддерживается

Таблица 2 Конфигурации для разных форм ELB в зависимости от кластера

Режим безопасности

Форма услуги, предоставляемая ELB для внешних систем

Прослушиватель ELB

Прослушиватель ELB

ELB Слушатель

Группа серверов бэкенда

Группа серверов бэкенда

Группа серверов бэкенда

Протокол фронтенда

Порт фронтенда

Аутентификация SSL

Протокол бэкенда

Порт проверки работоспособности

Путь проверки работоспособности

Режим без безопасности

Без аутентификации

HTTP

9200

Без аутентификации

HTTP

9200

/

Односторонняя аутентификация

HTTPS

9200

Односторонняя аутентификация

HTTP

9200

Двусторонняя аутентификация

HTTPS

9200

Двусторонняя аутентификация

HTTP

9200

Режим безопасности + HTTP

Аутентификация по паролю

HTTP

9200

Без аутентификации

HTTP

9200

/_opendistro/_security/health

Односторонняя аутентификация + Аутентификация по паролю

HTTPS

9200

Односторонняя аутентификация

HTTP

9200

Двусторонняя аутентификация + Аутентификация паролем

HTTPS

9200

Двусторонняя аутентификация

HTTP

9200

Режим безопасности + HTTPS

Односторонняя аутентификация + Аутентификация паролем

HTTPS

9200

Односторонняя аутентификация

HTTPS

9200

Двусторонняя аутентификация + Аутентификация паролем

HTTPS

9200

Двусторонняя аутентификация

HTTPS

9200

Ограничения

  • Не рекомендуется подключать балансировщик нагрузки, связанный с публичным IP-адресом, к кластеру без режима безопасности. Предоставление доступа из публичной сети через такой балансировщик нагрузки может вызвать риски безопасности, так как к кластеру без режима безопасности можно получить доступ по HTTP без аутентификации безопасности.
  • Кластеры с режимом безопасности, поддерживающие HTTPS, не поддерживают аутентификацию фронтенда на основе HTTP. Если фронтенд использует HTTP, сначала отключите режим безопасности для вашего кластера. Для получения подробностей см Изменение режима безопасности кластера OpenSearch. Прежде чем изменять режим безопасности, сначала отключите балансировку нагрузки. После изменения режима безопасности снова включите балансировку нагрузки.

Требования

  • Создан выделенный балансировщик нагрузки. Для получения подробностей см . Этот балансировщик нагрузки должен соответствовать следующим требованиям:
    • Её VPC совпадает с VPC кластера CSS. Сеть между ними соединена.
    • IP в качестве бэкенда включён. Это необходимо для подключения выделенного балансировщика нагрузки к кластеру CSS.
    • Определите, нужно ли настраивать EIP в зависимости от потребностей сервиса. Публичный IP-адрес отображается для балансировщика нагрузки, соединяющего кластер CSS, только если настроен EIP. Это позволит публичному сетевому доступу к кластеру через этот балансировщик нагрузки.
  • Если listener ELB использует HTTPS, загрузите серверный сертификат или CA‑сертификат в консоль ELB. Для подробностей см. .
    • Если используется односторонняя аутентификация, загрузите серверный сертификат.
    • Если используется двусторонняя аутентификация, загрузите серверный сертификат и CA‑сертификат.

Подключение кластера к балансировщику нагрузки

  1. Войдите в консоль управления CSS.
  2. В навигационной панели слева выберите Кластеры > OpenSearch.
  3. В списке кластеров щелкните название целевого кластера. Отобразится страница информации о кластере.
  4. Щелкните Доступ к кластеру вкладку, а затем щелкните Балансировка нагрузки вкладка. На OpenSearch вкладка, включить Балансировка нагрузки. В отображаемом диалоговом окне установите параметры.
    Таблица 3 Настройка балансировки нагрузки

    Параметр

    Описание

    Балансировщик нагрузки

    Выберите созданный ранее выделенный балансировщик нагрузки.

    Чтобы создать выделенный балансировщик нагрузки, см. .

    Агентство

    Чтобы настроить балансировщик нагрузки, вам необходимо иметь разрешение на доступ к ресурсам ELB. Настроив IAM‑агентство, вы можете предоставить CSS доступ к его ресурсам ELB через связанную учётную запись.

    • Если вы настраиваете агентство впервые, щёлкните Автоматически создать IAM‑агентство для создания css-elb-agency.
    • Если ранее автоматически создано IAM-агентство, вы можете нажать Авторизация в один клик чтобы иметь права, связанные с ELB Администратор роль или ELB FullAccess системная политика удаляется автоматически, и вместо неё автоматически добавляются следующие пользовательские политики для реализации более точного контроля прав.
      "elb:loadbalancers:list",
      "elb:loadbalancers:get",
      "elb:certificates:list",
      "elb:healthmonitors:*",
      "elb:members:*",
      "elb:pools:*",
      "elb:listeners:*"
    • Чтобы использовать Автоматически создать IAM-агентство и Авторизация в один клик, требуются следующие минимальные права:
      "iam:agencies:listAgencies",
      "iam:roles:listRoles",
      "iam:agencies:getAgency",
      "iam:agencies:createAgency",
      "iam:permissions:listRolesForAgency",
      "iam:permissions:grantRoleToAgency",
      "iam:permissions:listRolesForAgencyOnProject",
      "iam:permissions:revokeRoleFromAgency",
      "iam:roles:createRole"
    • Чтобы использовать IAM-агентство, требуются следующие минимальные права:
      "iam:agencies:listAgencies",
      "iam:agencies:getAgency",
      "iam:permissions:listRolesForAgencyOnProject",
      "iam:permissions:listRolesForAgency"

  5. Нажмите OK чтобы включить балансировку нагрузки.

    Отображается информация о балансировщике нагрузки.

  6. В Слушатель область, щелкните чтобы настроить информацию слушателя.
    Таблица 4 Конфигурация слушателя

    Параметр

    Описание

    Протокол фронтенда

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

    Выберите HTTP или HTTPS.

    Выберите этот протокол исходя из ваших требований к подключению.

    Порт фронтенда

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

    Установите этот параметр в соответствии с требованиями сайта.

    Аутентификация SSL

    Режим аутентификации клиента. Установите этот параметр только когда Протокол Frontend установлен в HTTPS.

    Поддерживается как однонаправленная, так и двунаправленная аутентификация.

    Выберите режим аутентификации, соответствующий вашим потребностям.

    Сертификат сервера

    Сертификат сервера используется для рукопожатия SSL. Содержимое сертификата и закрытый ключ должны быть указаны. Требуется только когда Протокол Frontend установлен в HTTPS.

    Выберите сертификат сервера, созданный на ELB.

    Сертификат CA

    Также называется сертификатом открытого ключа клиента CA. Он используется для проверки издателя сертификата клиента. Требуется только когда Аутентификация SSL установлен в Двусторонняя аутентификация.

    Выберите сертификат CA, созданный на ELB.

    Когда включена двусторонняя аутентификация HTTPS, установить HTTPS‑соединение можно только в том случае, если клиент может предоставить сертификат, выданный доверенным CA.

    Рисунок 1 Настройка слушателя


  7. (Optional) В Слушатель области, щелкните Настроить рядом с Контроль доступа чтобы перейти к списку слушателей балансировщика нагрузки. Нажмите "Настроить" в столбце "Контроль доступа" слушателя, чтобы настроить контроль доступа для этого слушателя. Для получения дополнительной информации см. раздел "What Is Access Control?" в Elastic Load Balance Руководство пользователя.

    Без политик контроля доступа все IP‑адреса могут получать доступ к кластеру CSS через этот балансировщик нагрузки, что может создать риски безопасности.

  8. В Health Check области, вы можете проверить результат проверки состояния для каждого IP‑адреса узла.
    Таблица 5 Описание результата проверки состояния

    Health Check Result

    Description

    Normal

    IP‑адрес узла подключен.

    Abnormal

    IP‑адрес узла отключён.

  9. Если кластер больше не нуждается в выделенном балансировщике нагрузки, отсоедините его для освобождения ресурсов.

    Выберите Load Balancing > OpenSearch, отключить Балансировка нагрузки. В отображаемом диалоговом окне нажмите OK.

    Caution

    После того как балансировщик нагрузки будет отключен, любые конфигурации слушателей или группы серверов back‑end будут удалены без возможности восстановления.

Доступ к кластеру через балансировщик нагрузки с помощью команд cURL

  1. В левой навигационной панели консоли CSS выберите Кластеры.
  2. Войдите в консоль управления CSS.
  3. В левой навигационной панели выберите Clusters > OpenSearch.
  4. В списке кластеров нажмите имя целевого кластера. Отобразится страница информации о кластере.
  5. Щелкните Доступ к кластеру вкладку и затем нажмите Балансировка нагрузки tab. На OpenSearch tab, запишите частный или публичный IP-адрес или IPv6-адрес балансировщика нагрузки, а также протокол/порт фронтенда прослушивателя.
    Caution

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

  6. Выполните следующие cURL‑команды на ECS, чтобы проверить, может ли выделенный балансировщик нагрузки подключиться к кластеру.
    Таблица 6 Команды для доступа к различным типам кластеров

    Security Mode

    Service Form Provided by ELB for External Systems

    cURL Command for Accessing a Cluster

    Режим без безопасности

    Без аутентификации

    curl http://IP:port

    Односторонняя аутентификация

    curl --cacert ./ca.crt https://IP:port

    Двухсторонняя аутентификация

    curl --cacert ./ca.crt --cert ./client.crt --key ./client.key https://IP:port

    режим безопасности + HTTP

    аутентификация по паролю

    curl http://IP:port -u user:pwd

    однонаправленная аутентификация + аутентификация по паролю

    curl --cacert ./ca.crt https://IP:port -u user:pwd

    двунаправленная аутентификация + аутентификация по паролю

    curl --cacert ./ca.crt --cert ./client.crt --key ./client.key https://IP:port -u user:pwd

    режим безопасности + HTTPS

    однонаправленная аутентификация + аутентификация по паролю

    curl --cacert ./ca.crt https://IP:port -u user:pwd

    двунаправленная аутентификация + аутентификация по паролю

    curl --cacert ./ca.crt --cert ./client.crt --key ./client.key https://IP:port -u user:pwd
    Таблица 7 Переменные

    Переменная

    Описание

    IP

    IP-адрес экземпляра балансировщика нагрузки.

    порт

    Протокол и порт фронтенда, настроенные для слушателя.

    пользователь

    Имя пользователя кластера. Этот параметр требуется только для кластера с режимом безопасности.

    пароль

    Пароль указанного выше имени пользователя. Этот параметр требуется только для кластера security-mode.

    Если информация о кластере возвращена, соединение успешно.