Поделиться через


Руководство. Мониторинг приложений Service Fabric с помощью ELK

Это руководство является частью четырех серии. В нем показано, как использовать ELK (Elasticsearch, Logstash и Kibana) для мониторинга приложений Service Fabric, работающих в Azure.

В четвертой части цикла вы узнаете, как выполнять такие задачи:

  • Настройка сервера ELK в Azure
  • Настройка Logstash для получения журналов из Центров событий
  • Визуализируйте журналы платформы и приложений в Kibana

Из этого цикла руководств вы узнаете, как выполнять следующие задачи:

Предпосылки

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

  • Если у вас еще нет подписки Azure, создайте бесплатную учетную запись.
  • Настройте приложение для отправки журналов в расположение, указанное в части 2.
  • Завершите часть третью и настройте запущенный кластер Service Fabric для отправки журналов в Центры событий.
  • Политика в Центрах событий с разрешением "Прослушивание" и соответствующим первичным ключом из третьей серии.

Скачивание примера приложения для голосования

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

git clone https://github.com/Azure-Samples/service-fabric-java-quickstart

Создание сервера ELK в Azure

Вы можете использовать предварительно настроенную среду ELK для этого руководства и, если у вас уже есть, перейдите к разделу Setup Logstash . Однако если у вас нет учетной записи, следующие действия создадут ее в Azure.

  1. Создайте сертификат ELK, сертифицированный Bitnami в Azure. Для целей данного руководства не требуется соблюдение каких-либо конкретных спецификаций для создания данного сервера.

  2. Перейдите к ресурсу на портале Azure и введите вкладку "Диагностика загрузки " в разделе "Поддержка и устранение неполадок ". Затем щелкните вкладку Последовательный журнал.

    Диагностика загрузки

  3. Выполните поиск пароля в журналах, необходимого для доступа к экземпляру Kibana. Он похож на следующий фрагмент кода:

    [   25.932766] bitnami[1496]: #########################################################################
    [   25.948656] bitnami[1496]: #                                                                       #
    [   25.962448] bitnami[1496]: #        Setting Bitnami application password to '[PASSWORD]'           #
    [   25.978137] bitnami[1496]: #        (the default application username is 'user')                   #
    [   26.004770] bitnami[1496]: #                                                                       #
    [   26.029413] bitnami[1496]: #########################################################################
    
  4. Нажмите кнопку подключения на странице обзора сервера на портале Azure, чтобы получить сведения о входе.

    Подключение к виртуальной машине

  5. Подключитесь к серверу, где размещен образ ELK, с помощью следующей команды SSH

    ssh [USERNAME]@[CONNECTION-IP-OF-SERVER]
    
    Example: ssh testaccount@104.40.63.157
    

Настройка ELK

  1. Первый шаг — загрузка среды ELK

    sudo /opt/bitnami/use_elk
    
  2. Если вы используете существующую среду, выполните следующую команду, чтобы остановить службу Logstash.

    sudo /opt/bitnami/ctlscript.sh stop logstash
    
  3. Выполните следующую команду, чтобы установить подключаемый модуль Logstash для Центров событий.

    logstash-plugin install logstash-input-azureeventhub
    
  4. Создайте или измените существующий файл конфигурации Logstash со следующим содержимым: если вы создаете файл, его необходимо создать в /opt/bitnami/logstash/conf/access-log.conf, если используется образ ELK Bitnami в Azure.

    input
    {
        azureeventhub
        {
            key => "[RECEIVER-POLICY-KEY-FOR-EVENT-HUB]"
            username => "[RECEIVER-POLICY-NAME]"
            namespace => "[EVENTHUB-NAMESPACENAME]"
            eventhub => "[EVENTHUB-NAME]"
            partitions => 4
        }
    }
    
    output {
         elasticsearch {
             hosts => [ "127.0.0.1:9200" ]
         }
     }
    
  5. Чтобы проверить конфигурацию, выполните следующую команду:

    /opt/bitnami/logstash/bin/logstash -f /opt/bitnami/logstash/conf/ --config.test_and_exit
    
  6. Запуск службы Logstash

    sudo /opt/bitnami/ctlscript.sh start logstash
    
  7. Проверьте elasticsearch, чтобы убедиться, что вы получаете данные

    curl 'localhost:9200/_cat/indices?v'
    
  8. Откройте панель мониторинга http://SERVER-IP Kibana и введите имя пользователя и пароль для Kibana. Если вы использовали образ ELK в Azure, имя пользователя по умолчанию — пользователь, а пароль — это пароль, полученный из диагностики загрузки.

    Снимок экрана: панель мониторинга Kibana для визуализации журналов платформы и приложений.

Дальнейшие действия

Из этого руководства вы узнали, как:

  • Настройте и запустите сервер ELK в Azure
  • Настройка сервера для получения диагностических сведений из кластера Service Fabric

Перейдите к следующему уроку: