EventStore-overzicht

Notitie

Vanaf Service Fabric versie 6.4. de EventStore-API's zijn alleen beschikbaar voor Windows-clusters die alleen in Azure worden uitgevoerd. We werken aan het overzetten van deze functionaliteit naar Linux en naar onze zelfstandige clusters.

Overzicht

De EventStore-service is geïntroduceerd in versie 6.2 en is een bewakingsoptie in Service Fabric. EventStore biedt een manier om op elk moment meer inzicht te krijgen in de status van uw cluster of workloads. EventStore is een stateful Service Fabric-service die gebeurtenissen van het cluster bijhoudt. De gebeurtenissen worden weergegeven via Service Fabric Explorer, REST en API's. EventStore voert rechtstreeks een query uit op het cluster om diagnostische gegevens op te halen uit een entiteit in uw cluster en moet worden gebruikt voor het volgende:

  • Het vaststellen van problemen tijdens de ontwikkeling of het testen, of waar u een bewakingspijplijn zou kunnen gebruiken
  • Bevestigen dat beheeracties die u op het cluster uitvoert correct worden verwerkt
  • Een 'momentopname' verkrijgen van hoe Service Fabric met een bepaalde entiteit interactie aangaat

Schermopname van het tabblad GEBEURTENISSEN van het deelvenster Knooppunten verschillende gebeurtenissen, waaronder een NodeDown-gebeurtenis.

Zie Service Fabric-gebeurtenissen voor een volledige lijst met gebeurtenissen die beschikbaar zijn in de EventStore.

Notitie

Vanaf Service Fabric versie 6.4. de EventStore-API's en UX zijn algemeen beschikbaar voor Azure Windows-clusters. We werken aan het overzetten van deze functionaliteit naar Linux en naar onze zelfstandige clusters.

De EventStore-service kan worden opgevraagd voor gebeurtenissen die beschikbaar zijn voor elke entiteit en entiteitstype in uw cluster. Dit betekent dat u een query kunt uitvoeren op gebeurtenissen op de volgende niveaus:

  • Cluster: gebeurtenissen die specifiek zijn voor het cluster zelf (bijvoorbeeld clusterupgrade)
  • Knooppunten: alle gebeurtenissen op knooppuntniveau
  • Knooppunt: gebeurtenissen die specifiek zijn voor één knooppunt, geïdentificeerd door nodeName
  • Toepassingen: alle gebeurtenissen op toepassingsniveau
  • Toepassing: gebeurtenissen die specifiek zijn voor één toepassing die zijn geïdentificeerd door applicationId
  • Services: gebeurtenissen van alle services in uw clusters
  • Service: gebeurtenissen van een specifieke service die wordt geïdentificeerd door serviceId
  • Partities: gebeurtenissen van alle partities
  • Partitie: gebeurtenissen van een specifieke partitie geïdentificeerd door partitionId
  • Partitiereplica's: gebeurtenissen van alle replica's/exemplaren binnen een specifieke partitie die door partitionId
  • Partitiereplica: gebeurtenissen van een specifieke replica/instantie geïdentificeerd door replicaId en partitionId

Raadpleeg de Naslaginformatie over de EventStore-API voor meer informatie over de API.

De EventStore-service heeft ook de mogelijkheid om gebeurtenissen in uw cluster te correleren. Door te kijken naar gebeurtenissen die tegelijkertijd zijn geschreven vanuit verschillende entiteiten die elkaar mogelijk hebben beïnvloed, kan de EventStore-service deze gebeurtenissen koppelen om te helpen bij het identificeren van oorzaken voor activiteiten in uw cluster. Als een van uw toepassingen bijvoorbeeld beschadigd raakt zonder dat er wijzigingen zijn aangebracht, kijkt de EventStore ook naar andere gebeurtenissen die door het platform worden weergegeven en kan dit worden gecorreleerd met een Error of-gebeurtenis Warning . Dit helpt bij snellere foutdetectie en analyse van hoofdoorzaken.

EventStore inschakelen op uw cluster

Lokaal cluster

Voeg in fabricSettings.json in uw cluster EventStoreService toe als addOn-functie en voer een clusterupgrade uit.

    "addOnFeatures": [
        "EventStoreService"
    ],

Azure-clusterversie 6.5+

Als uw Azure-cluster wordt bijgewerkt naar versie 6.5 of hoger, wordt EventStore automatisch ingeschakeld op uw cluster. Als u zich wilt afmelden, moet u uw clustersjabloon bijwerken met het volgende:

  • Een API-versie van 2019-03-01 of nieuwer gebruiken
  • Voeg de volgende code toe aan de sectie Eigenschappen in uw cluster
      "fabricSettings": [
        …
      ],
      "eventStoreServiceEnabled": false
    

Azure-clusterversie 6.4

Als u versie 6.4 gebruikt, kunt u uw Azure Resource Manager-sjabloon bewerken om de EventStore-service in te schakelen. Dit wordt gedaan door een clusterconfiguratie-upgrade uit te voeren en de volgende code toe te voegen. U kunt PlacementConstraints gebruiken om de replica's van de EventStore-service op een specifiek knooppunttype te plaatsen, bijvoorbeeld een knooppunttype dat is toegewezen voor de systeemservices. In upgradeDescription de sectie wordt de configuratie-upgrade geconfigureerd om opnieuw opstarten op de knooppunten te activeren. U kunt de sectie in een andere update verwijderen.

    "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
          }
        }

Volgende stappen