Descrição Geral do EventStore
Nota
A partir da versão 6.4 do Service Fabric. as APIs eventStore só estão disponíveis para clusters do Windows em execução apenas no Azure. Estamos a trabalhar na migração desta funcionalidade para o Linux, bem como para os nossos clusters autónomos.
Descrição Geral
Introduzido na versão 6.2, o serviço EventStore é uma opção de monitorização no Service Fabric. O EventStore fornece uma forma de compreender o estado do cluster ou das cargas de trabalho num determinado momento. O EventStore é um serviço do Service Fabric com estado que mantém os eventos do cluster. O evento é exposto através do Service Fabric Explorer, REST e APIs. EventStore consulta o cluster diretamente para obter dados de diagnóstico em qualquer entidade no cluster e deve ser utilizado para ajudar:
- Diagnosticar problemas de desenvolvimento ou teste ou onde poderá estar a utilizar um pipeline de monitorização
- Confirme que as ações de gestão que está a tomar no cluster estão a ser processadas corretamente
- Obter um "instantâneo" de como o Service Fabric está a interagir com uma determinada entidade
Para ver uma lista completa dos eventos disponíveis na EventStore, veja Eventos do Service Fabric.
Nota
A partir da versão 6.4 do Service Fabric. As APIs eventStore e o UX estão geralmente disponíveis para clusters do Windows do Azure. Estamos a trabalhar na migração desta funcionalidade para o Linux, bem como para os nossos clusters autónomos.
O serviço EventStore pode ser consultado para eventos disponíveis para cada entidade e tipo de entidade no cluster. Isto significa que pode consultar eventos nos seguintes níveis:
- Cluster: eventos específicos do próprio cluster (por exemplo, atualização do cluster)
- Nós: todos os eventos ao nível do nó
- Nó: eventos específicos de um nó, identificados por
nodeName
- Aplicações: todos os eventos ao nível da aplicação
- Aplicação: eventos específicos de uma aplicação identificada por
applicationId
- Serviços: eventos de todos os serviços nos clusters
- Serviço: eventos de um serviço específico identificados por
serviceId
- Partições: eventos de todas as partições
- Partição: eventos de uma partição específica identificada por
partitionId
- Réplicas de Partição: eventos de todas as réplicas/instâncias numa partição específica identificada por
partitionId
- Réplica de Partição: eventos de uma réplica/instância específica identificada por
replicaId
epartitionId
Para saber mais sobre a API, consulte a referência da API EventStore.
O serviço EventStore também tem a capacidade de correlacionar eventos no cluster. Ao analisar eventos que foram escritos ao mesmo tempo de diferentes entidades que podem ter afetado entre si, o serviço EventStore consegue ligar estes eventos para ajudar a identificar as causas das atividades no seu cluster. Por exemplo, se uma das suas aplicações ficar em mau estado de funcionamento sem alterações induzidas, a EventStore também analisará outros eventos expostos pela plataforma e poderá correlacioná-lo com um Error
evento ou Warning
. Isto ajuda na deteção de falhas mais rápida e na análise de causas raiz.
Ativar o EventStore no cluster
Local Cluster
Em fabricSettings.json no cluster, adicione EventStoreService como uma funcionalidade addOn e execute uma atualização do cluster.
"addOnFeatures": [
"EventStoreService"
],
Versão 6.5+ do cluster do Azure
Se o cluster do Azure for atualizado para a versão 6.5 ou superior, o EventStore será ativado automaticamente no cluster. Para optar ativamente por não participar, tem de atualizar o modelo de cluster com o seguinte:
- Utilizar uma versão da API de
2019-03-01
ou mais recente - Adicionar o seguinte código à secção de propriedades no cluster
"fabricSettings": [ … ], "eventStoreServiceEnabled": false
Versão 6.4 do cluster do Azure
Se estiver a utilizar a versão 6.4, pode editar o modelo do Azure Resource Manager para ativar o serviço EventStore. Isto é feito ao efetuar uma atualização de configuração de cluster e adicionar o seguinte código, pode utilizar PlacementConstraints para colocar as réplicas do serviço EventStore num NodeType específico, por exemplo, um NodeType dedicado para os serviços de sistema. A upgradeDescription
secção configura a atualização de configuração para acionar um reinício nos nós. Pode remover a secção noutra atualização.
"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
}
}
Passos seguintes
- Introdução à API EventStore – Utilizar as APIs eventStore em clusters do Azure Service Fabric
- Saiba mais sobre a lista de eventos oferecidos pela EventStore – Eventos do Service Fabric
- Descrição geral da monitorização e diagnósticos no Service Fabric – Monitorização e Diagnóstico do Service Fabric
- Ver a lista completa de chamadas à API – Referência da API REST eventStore
- Saiba mais sobre como monitorizar o cluster – Monitorizar o cluster e a plataforma.