Spec-Zone.ru › Elasticsearch 8
›Elasticsearch Guide [8.17] ›Мониторинг кластера

Мониторинг в производственной среде

В производственной среде данные мониторинга следует отправлять в отдельный мониторинговый кластер, чтобы исторические данные были доступны даже когда узлы, которые вы мониторите, недоступны.

Elastic Agent и Metricbeat — рекомендуемые методы сбора и отправки данных мониторинга в мониторинговый кластер.

Если вы ранее настраивали методы сбора устаревшего типа, следует перейти на использование Elastic Agent или Metricbeat. Не используйте методы устаревшего сбора вместе с другими методами сбора.

Если у вас есть хотя бы подписка Gold, использование выделенного мониторингового кластера также позволяет мониторить несколько кластеров из централизованного места.

Чтобы хранить данные мониторинга в отдельном кластере:

  1. Настройте кластер Elasticsearch, который вы хотите использовать в качестве мониторингового кластера. Например, вы можете настроить кластер из двух узлов с узлами es-mon-1 и es-mon-2.

    • В идеале мониторинговый и производственный кластеры работают на одном и том же релизе Elastic Stack. Однако мониторинговый кластер последней версии 8.x также работает с производственными кластерами, использующими ту же основную версию. Мониторинговые кластеры, использующие 8.x, также работают с производственными кластерами, использующими последнюю версию 7.x.
    • В мониторинговом кластере должен быть хотя бы один узел ingest; он не обязательно должен быть выделенным узлом ingest.
    1. (Необязательно) Убедитесь, что сбор данных мониторинга отключён в мониторинговом кластере. По умолчанию значение параметра xpack.monitoring.collection.enabled равно false.

      Например, вы можете использовать следующие API для проверки и изменения этого параметра:

      resp = client.cluster.get_settings()
      print(resp)
      
      resp1 = client.cluster.put_settings(
          persistent={
              "xpack.monitoring.collection.enabled": False
          },
      )
      print(resp1)
      response = client.cluster.get_settings
      puts response
      
      response = client.cluster.put_settings(
        body: {
          persistent: {
            'xpack.monitoring.collection.enabled' => false
          }
        }
      )
      puts response
      const response = await client.cluster.getSettings();
      console.log(response);
      
      const response1 = await client.cluster.putSettings({
        persistent: {
          "xpack.monitoring.collection.enabled": false,
        },
      });
      console.log(response1);
      GET _cluster/settings
      
      PUT _cluster/settings
      {
        "persistent": {
          "xpack.monitoring.collection.enabled": false
        }
      }
    2. Если в мониторинговом кластере включены функции безопасности Elasticsearch, создайте пользователей, которые могут отправлять и получать данные мониторинга:

      Если вы планируете использовать Kibana для просмотра данных мониторинга, учетные данные пользователя и пароля должны быть действительными как на сервере Kibana, так и на мониторинговом кластере.

      • Если вы планируете использовать Elastic Agent, создайте пользователя, у которого есть роль remote_monitoring_collector встроенная роль, и убедитесь, что соответствующие интеграционные модули установлены на удалённом мониторинговом кластере.
      • Если вы планируете использовать Metricbeat, создайте пользователя, у которого есть встроенная роль remote_monitoring_collector, и пользователя, у которого есть встроенная роль remote_monitoring_agent встроенная роль. В качестве альтернативы используйте встроенного пользователя remote_monitoring_user встроенный пользователь.
      • Если вы планируете использовать HTTP-экспортеры для маршрутизации данных через ваш производственный кластер, создайте пользователя, у которого есть встроенная роль remote_monitoring_agent встроенная роль.

        Например, следующий запрос создаёт пользователя remote_monitor, у которого есть роль remote_monitoring_agent:

        resp = client.security.put_user(
            username="remote_monitor",
            password="changeme",
            roles=[
                "remote_monitoring_agent"
            ],
            full_name="Internal Agent For Remote Monitoring",
        )
        print(resp)
        const response = await client.security.putUser({
          username: "remote_monitor",
          password: "changeme",
          roles: ["remote_monitoring_agent"],
          full_name: "Internal Agent For Remote Monitoring",
        });
        console.log(response);
        POST /_security/user/remote_monitor
        {
          "password" : "changeme",
          "roles" : [ "remote_monitoring_agent"],
          "full_name" : "Internal Agent For Remote Monitoring"
        }

        В качестве альтернативы используйте встроенного пользователя remote_monitoring_user встроенный пользователь.

  2. Настройте свой производственный кластер для сбора данных и отправки их в мониторинговый кластер:

    • Методы сбора Elastic Agent
    • Методы сбора Metricbeat
    • Методы устаревшего сбора
  3. (Необязательно) Настройка Logstash для сбора данных и отправки их в мониторинговый кластер.
  4. (Необязательно) Настройка мониторинга Enterprise Search.
  5. (Необязательно) Настройте Beats для сбора данных и отправки их в мониторинговый кластер. Пропустите этот шаг для Beats, управляемых Elastic Agent.

    • Auditbeat
    • Filebeat
    • Heartbeat
    • Metricbeat
    • Packetbeat
    • Winlogbeat
  6. (Необязательно) Настройка мониторинга APM Server
  7. (Необязательно) Настройте Kibana для сбора данных и отправки их в мониторинговый кластер:

    • Методы сбора Elastic Agent
    • Методы сбора Metricbeat
    • Методы устаревшего сбора
  8. (Необязательно) Создайте отдельный экземпляр Kibana для мониторинга, вместо использования одного экземпляра Kibana для доступа к производственному и мониторинговому кластерам.

    Если вы вошли в Kibana с использованием SAML, Kerberos, PKI, OpenID Connect или поставщиков аутентификации токенов, необходим отдельный экземпляр Kibana. Токены безопасности, используемые в этих случаях, специфичны для кластера; поэтому вы не можете использовать один экземпляр Kibana для подключения к производственному и мониторинговому кластерам.

    1. (Необязательно) Отключить сбор данных мониторинга в этом экземпляре Kibana. Установите параметр xpack.monitoring.kibana.collection.enabled в значение false в файле kibana.yml. Дополнительную информацию об этом параметре см. в Настройках мониторинга в Kibana.
  9. Настройка Kibana для получения и отображения данных мониторинга.

© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/8.17/monitoring-production.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API