• Русский
  • Как взаимодействовать с внешними кластерами ES Storage

    Вы можете взаимодействовать с внешними кластерами Elasticsearch или Kafka, создавая YAML-конфигурации. В зависимости от ваших бизнес-требований, вы можете выбрать взаимодействие только с внешним кластером Elasticsearch (при этом Kafka устанавливается в текущем кластере), либо взаимодействовать одновременно с внешними кластерами Elasticsearch и Kafka.

    TIP

    Поддерживаемые версии для взаимодействия с внешним Elasticsearch следующие:

    • Elasticsearch 6.x поддерживает версии 6.6 - 6.8;
    • Elasticsearch 7.x поддерживает версии 7.0 - 7.10.2, рекомендуется использовать 7.10.2.

    Содержание

    Подготовка ресурсов

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

    1. В левой навигационной панели нажмите Cluster Management > Resource Management, затем переключитесь на кластер, в котором необходимо установить плагин.

    2. Нажмите Create Resource Object и заполните поле кода, изменив параметры согласно комментариям в коде.

    • Учетные данные, необходимые для взаимодействия с внешним Elasticsearch:

      apiVersion: v1
      type: Opaque
      data:
        password: dEdWQVduSX5kUW1mc21acg==  # Должно быть закодировано в base64. Команда для справки: echo -n <password_value>| base64
        username: YWRtaW4=                  # Должно быть закодировано в base64. Команда для справки: echo -n <username_value>| base64
      kind: Secret
      metadata:
        name: elasticsearch-basic-auth      # Имя учетных данных. Убедитесь, что значение elasticsearch.basicAuthSecretName в YAML лог-хранилища совпадает с этим параметром.
        namespace: cpaas-system             # Пространство имён, в котором расположен компонент Elasticsearch, обычно cpaas-system.
    • Если необходимо использовать внешний кластер Kafka, также нужно создать учетные данные для взаимодействия с внешним Kafka:

      apiVersion: v1
      type: Opaque
      data:
        password: dEdWQVduSX5kUW1mc21acg==  # Должно быть закодировано в base64. Команда для справки: echo -n <password_value>| base64
        username: YWRtaW4=                  # Должно быть закодировано в base64. Команда для справки: echo -n <username_value>| base64
      kind: Secret
      metadata:
        name: kafka-basic-auth              # Имя учетных данных. Убедитесь, что значение kafka.basicAuthSecretName в YAML лог-хранилища совпадает с этим параметром.
        namespace: cpaas-system             # Пространство имён, в котором расположен компонент Kafka, обычно cpaas-system.
    1. Нажмите Create.

    Порядок действий

    1. В левой навигационной панели нажмите App Store > Plugin Management.

    2. В верхней навигации выберите Cluster Name, в котором хотите установить плагин ACP Log Storage с Elasticsearch.

    3. Нажмите кнопку действий справа от ACP Log Storage with Elasticsearch > Install.

    4. Включите переключатель Interface with External Elasticsearch, настройте YAML-файл, пример взаимодействия и описание параметров приведены ниже:

    • Взаимодействие с внешним кластером Elasticsearch при установке Kafka в текущем кластере:

      elasticsearch:
        install: false
        address: http://fake:9200                # Адрес доступа к внешнему ES, например, http://192.168.143.252:11780/es_proxy
        basicAuthSecretName: elasticsearch-basic-auth # Учетные данные для взаимодействия с внешним Elasticsearch, созданные на этапе подготовки.
      storageClassConfig:
        type: "LocalVolume"   # По умолчанию LocalVolume. Варианты: "LocalVolume" или "StorageClass".
      kafka:
        auth: true                               # Включена ли аутентификация.
        k8sNodes:
        - log1                                   # Имя узла, полученное командой kubectl get nodes.
        - log2
        - log3
        storageSize: 10                          # Размер хранилища в Gi, по умолчанию 10 Gi.
    • Взаимодействие с внешними кластерами Elasticsearch и Kafka одновременно:

      elasticsearch:
        install: false
        address: http://fake:9200                # Адрес доступа к внешнему ES, например, http://192.168.143.252:11780/es_proxy
        basicAuthSecretName: elasticsearch-basic-auth # Учетные данные для взаимодействия с внешним Elasticsearch, созданные на этапе подготовки.
      kafka:
        auth: true                               # Включена ли аутентификация.
        install: false
        basicAuthSecretName: kafka-basic-auth  # Учетные данные для взаимодействия с внешним Kafka, созданные на этапе подготовки.
        address: 192.168.130.169:9092,192.168.130.187:9092,192.168.130.193:9092     # Адреса доступа к Kafka, разделённые запятыми.