Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Примечание.
Начиная с версии Service Fabric 6.4 интерфейсы API EventStore доступны только для кластеров Windows, работающих в Azure. Мы работаем над переносом этих функциональных возможностей в Linux, а также в изолированные кластеры.
Обзор
Введенная в версии 6.2, служба EventStore является вариантом мониторинга в Service Fabric. EventStore предоставляет способ для оценки состояния кластера или рабочих нагрузок в определенный момент времени. Служба EventStore — это управляемая состоянием служба Service Fabric, которая сохраняет события из кластера. События предоставляются через Service Fabric Explorer, REST и API. EventStore отправляет запросы непосредственно к кластеру, чтобы получить данные диагностики по любой сущности в кластере. Их следует использовать, чтобы:
- Диагностировать проблемы при разработке, тестировании или во время использования конвейера для мониторинга.
- Убедитесь, что действия управления, выполняемые в кластере, обрабатываются правильно
- Получить снимок состояния взаимодействия Service Fabric с конкретной сущностью.
На снимке экрана показана вкладка "События" в панели "Узлы" с несколькими событиями, включая событие "NodeDown".
Полный список событий, доступных в EventStore, см. в разделе "События Service Fabric".
Примечание.
Начиная с версии Service Fabric 6.4 Программные и пользовательские интерфейсы EventStore предоставляются в общедоступной версии для кластеров Azure Windows. Мы работаем над переносом этих функциональных возможностей в Linux, а также в изолированные кластеры.
Службу EventStore можно запрашивать для событий, доступных для каждой сущности и типа сущности в кластере. Это означает, что вы можете запрашивать события на следующих уровнях:
- Кластер. События, относящиеся к кластеру (например, обновление кластера).
- Узлы. Все события уровня узла.
- Узел. События, относящиеся к одному узлу, которые идентифицируются на основе
nodeName
. - Приложения. Все события уровня приложения.
- Приложение: события для одного приложения, идентифицированные с помощью
applicationId
. - Службы: события из всех служб в ваших кластерах.
- Служба: события от определенной службы, идентифицируемые на основе
serviceId
. - Разделы. События из всех разделов.
- Партиция: события из определенной партиции, идентифицируемые по
partitionId
. - Реплики раздела: события из всех реплик или экземпляров в определенном разделе, идентифицируемых на основе
partitionId
. - Реплика раздела: события из конкретной реплики или экземпляра, идентифицированные по
replicaId
иpartitionId
.
Дополнительные сведения об API см. в ссылке на API EventStore.
Служба EventStore также имеет возможность корреляции событий в кластере. Анализ событий, написанных одновременно различными сущностями, которые могли повлиять друг на друга, позволяет службе EventStore связать события для выявления причин действий в вашем кластере. Например, если одно из приложений становится неработоспособным без принудительных изменений, EventStore будет также рассматривать другие события, предоставляемые платформой, и сопоставлять их с событием Error
или Warning
. Это позволяет быстрее обнаружить сбой и выполнить анализ первопричин.
Включите EventStore в вашем кластере
Локальный кластер
В файл fabricSettings.json в своем кластере добавьте EventStoreService в качестве дополнительной функции и выполните обновление кластера.
"addOnFeatures": [
"EventStoreService"
],
Версия кластера Azure 6.5 и выше
Если кластер Azure обновляется до версии 6.5 или выше, EventStore автоматически включается в кластере. Чтобы отказаться от ее использования, обновите шаблон кластера, изменив в нем следующее:
- укажите версию API
2019-03-01
или более новую; - Добавьте следующий код в раздел свойств в кластере
"fabricSettings": [ … ], "eventStoreServiceEnabled": false
Версия кластера Azure 6.4
Если вы используете версию 6.4, вы можете изменить шаблон Azure Resource Manager, чтобы включить службу EventStore. Это делается путем обновления конфигурации кластера и добавления следующего кода, с помощью PlacementConstraints можно поместить реплики службы EventStore в определенный NodeType, например NodeType, выделенный для системных служб. Раздел upgradeDescription
настраивает обновление конфигурации, чтобы активировать перезапуск узлов. Раздел можно удалить в другом обновлении.
"fabricSettings": [
…
…
…,
{
"name": "EventStoreService",
"parameters": [
{
"name": "TargetReplicaSetSize",
"value": "3"
},
{
"name": "MinReplicaSetSize",
"value": "1"
},
{
"name": "PlacementConstraints",
"value": "(NodeType==<node_type_name_here>)"
}
]
}
],
"upgradeDescription": {
"forceRestart": true,
"upgradeReplicaSetCheckTimeout": "10675199.02:48:05.4775807",
"healthCheckWaitDuration": "00:01:00",
"healthCheckStableDuration": "00:01:00",
"healthCheckRetryTimeout": "00:5:00",
"upgradeTimeout": "1:00:00",
"upgradeDomainTimeout": "00:10:00",
"healthPolicy": {
"maxPercentUnhealthyNodes": 100,
"maxPercentUnhealthyApplications": 100
},
"deltaHealthPolicy": {
"maxPercentDeltaUnhealthyNodes": 0,
"maxPercentUpgradeDomainDeltaUnhealthyNodes": 0,
"maxPercentDeltaUnhealthyApplications": 0
}
}
Дальнейшие действия
- Сведения о начале работы с API EventStore см. в статье Выполнение запросов к интерфейсам API EventStore для получения событий кластера.
- Дополнительные сведения о списке событий, предоставляемых EventStore, см. в статье о событиях Service Fabric.
- Обзор мониторинга и диагностики в Service Fabric — Мониторинг и диагностика Service Fabric
- Полный список вызовов API можно просмотреть в справочнике по REST API EventStore.
- Подробнее о мониторинге вашего кластера см. в разделе Мониторинг кластера и платформы.