Delen via


Zelfstudie: Windows-containers bewaken in Service Fabric met behulp van Azure Monitor-logboeken

Dit is deel drie van een zelfstudie. U wordt begeleid bij het configureren van Azure Monitor-logboeken voor het bewaken van uw Windows-containers die in Service Fabric worden georganiseerd.

In deze zelfstudie leert u het volgende:

  • Azure Monitor logboeken configureren voor uw Service Fabric-cluster
  • Een Log Analytics-werkruimte gebruiken om logboeken te bekijken en te doorzoeken vanuit uw containers en knooppunten
  • De Log Analytics-agent configureren om metrische gegevens uit containers en knooppunten te halen

Vereisten

Voordat u aan deze zelfstudie begint, dient u eerst:

Azure Monitor logboeken voor uw cluster instellen in de Resource Manager-sjabloon

Als u in het eerste deel van deze zelfstudie de opgegeven sjabloon hebt gebruikt, dient deze de volgende aanvullingen voor een generieke Service Fabric Azure Resource Manager-sjabloon te bevatten. Als u een eigen cluster hebt dat u wilt instellen voor het bewaken van containers met Azure Monitor-logboeken:

  • Breng de volgende wijzigingen in de Resource Manager-sjabloon aan.
  • Implementeer de sjabloon met PowerShell om uw cluster bij te werken door de sjabloon te implementeren. Azure Resource Manager weet dat de resource bestaat, zodat de resource als een upgrade wordt uitgebracht.

Azure Monitor-logboeken toevoegen aan uw cluster sjabloon

Breng de volgende wijzigingen in template.json aan:

  1. Voeg de locatie en de naam van de Log Analytics-werkruimte toe aan de sectie parameters:

    "omsWorkspacename": {
      "type": "string",
      "defaultValue": "[toLower(concat('sf',uniqueString(resourceGroup().id)))]",
      "metadata": {
        "description": "Name of your Log Analytics Workspace"
      }
    },
    "omsRegion": {
      "type": "string",
      "defaultValue": "East US",
      "allowedValues": [
        "West Europe",
        "East US",
        "Southeast Asia"
      ],
      "metadata": {
        "description": "Specify the Azure Region for your Log Analytics workspace"
      }
    }
    

    Als u de waarde die voor een van beide is gebruikt, wilt wijzigen, voegt u dezelfde parameters toe aan template.parameters.json en wijzigt u de waarden die u daar hebt gebruikt.

  2. Voeg de naam van de oplossing en de oplossing toe aan variables:

    "omsSolutionName": "[Concat('ServiceFabric', '(', parameters('omsWorkspacename'), ')')]",
    "omsSolution": "ServiceFabric"
    
  3. Voeg de MMA toe als een extensie van de virtuele machine. Zoek de resource voor virtuele-machineschaalsets: resources>"apiVersion": "[variables('vmssApiVersion')]". Voeg onder properties>virtualMachineProfile>extensionProfile>extensions de volgende beschrijving van de extensie toe onder de extensie ServiceFabricNode:

    {
        "name": "[concat(variables('vmNodeType0Name'),'OMS')]",
        "properties": {
            "publisher": "Microsoft.EnterpriseCloud.Monitoring",
            "type": "MicrosoftMonitoringAgent",
            "typeHandlerVersion": "1.0",
            "autoUpgradeMinorVersion": true,
            "settings": {
                "workspaceId": "[reference(resourceId('Microsoft.OperationalInsights/workspaces/', parameters('omsWorkspacename')), '2015-11-01-preview').customerId]"
            },
            "protectedSettings": {
                "workspaceKey": "[listKeys(resourceId('Microsoft.OperationalInsights/workspaces/', parameters('omsWorkspacename')),'2015-11-01-preview').primarySharedKey]"
            }
        }
    },
    
  4. Voeg de Log Analytics-werkruimte toe als afzonderlijke resource. Voeg in resources, na de resource voor de virtuele-machineschaalsets, het volgende toe:

    {
        "apiVersion": "2015-11-01-preview",
        "location": "[parameters('omsRegion')]",
        "name": "[parameters('omsWorkspacename')]",
        "type": "Microsoft.OperationalInsights/workspaces",
        "properties": {
            "sku": {
                "name": "Free"
            }
        },
        "resources": [
            {
                "apiVersion": "2015-11-01-preview",
                "name": "[concat(variables('applicationDiagnosticsStorageAccountName'),parameters('omsWorkspacename'))]",
                "type": "storageinsightconfigs",
                "dependsOn": [
                    "[concat('Microsoft.OperationalInsights/workspaces/', parameters('omsWorkspacename'))]",
                    "[concat('Microsoft.Storage/storageAccounts/', variables('applicationDiagnosticsStorageAccountName'))]"
                ],
                "properties": {
                    "containers": [ ],
                    "tables": [
                        "WADServiceFabric*EventTable",
                        "WADWindowsEventLogsTable",
                        "WADETWEventTable"
                    ],
                    "storageAccount": {
                        "id": "[resourceId('Microsoft.Storage/storageaccounts/', variables('applicationDiagnosticsStorageAccountName'))]",
                        "key": "[listKeys(resourceId('Microsoft.Storage/storageAccounts', variables('applicationDiagnosticsStorageAccountName')),'2015-06-15').key1]"
                    }
                }
            },
            {
                "apiVersion": "2015-11-01-preview",
                "name": "System",
                "type": "datasources",
                "dependsOn": [
                    "[concat('Microsoft.OperationalInsights/workspaces/', parameters('omsWorkspacename'))]"
                ],
                "kind": "WindowsEvent",
                "properties": {
                    "eventLogName": "System",
                    "eventTypes": [
                        {
                            "eventType": "Error"
                        },
                        {
                            "eventType": "Warning"
                        },
                        {
                            "eventType": "Information"
                        }
                    ]
                }
            }
        ]
    },
    {
        "apiVersion": "2015-11-01-preview",
        "location": "[parameters('omsRegion')]",
        "name": "[variables('omsSolutionName')]",
        "type": "Microsoft.OperationsManagement/solutions",
        "dependsOn": [
            "[concat('Microsoft.OperationalInsights/workspaces/', parameters('OMSWorkspacename'))]"
        ],
        "properties": {
            "workspaceResourceId": "[resourceId('Microsoft.OperationalInsights/workspaces/', parameters('omsWorkspacename'))]"
        },
        "plan": {
            "name": "[variables('omsSolutionName')]",
            "publisher": "Microsoft",
            "product": "[Concat('OMSGallery/', variables('omsSolution'))]",
            "promotionCode": ""
        }
    },
    

Hier vindt u een voorbeeldsjabloon (gebruikt in deel één van deze zelfstudie) die al deze wijzigingen bevat en die u zo nodig kunt raadplegen. Met deze wijzigingen wordt een Log Analytics-werkruimte toegevoegd aan uw resourcegroep. De werkruimte is geconfigureerd voor het ophalen van Service Fabric-platformgebeurtenissen uit de opslagtabellen die zijn geconfigureerd met de Windows Azure Diagnostics-agent . De Log Analytics-agent (MMA) is ook aan elk knooppunt in het cluster toegevoegd als een extensie van de virtuele machine. Dit betekent dat als het cluster wordt geschaald, de agent automatisch op elke machine wordt geconfigureerd en aan dezelfde werkruimte gekoppeld.

Implementeer de sjabloon met de nieuwe wijzigingen om het huidige cluster bij te werken. U ziet de log analytics-resources in uw resourcegroep wanneer deze is voltooid. Als het cluster klaar is, implementeert u er de containertoepassing in. In de volgende stap gaan we de bewaking van de containers instellen.

Containerbewakingsoplossing toevoegen aan de Log Analytics-werkruimte

Als u de Container-oplossing in uw werkruimte wilt instellen, zoekt u naar Containerbewakingsoplossing en maakt u een Containers-resource (onder de categorie Bewaking + Management).

Containers-oplossing toevoegen

Als u er door de Log Analytics-werkruimte om wordt gevraagd, selecteert u de werkruimte die in uw resourcegroep is gemaakt en selecteert u Maken. Hierdoor wordt een Containerbewakingsoplossing aan uw werkruimte toegevoegd en wordt het verzamelen van Docker-logboeken en -statistieken met de Log Analytics-agent gestart.

Ga terug naar uw resourcegroep, waar u nu de pas toegevoegde bewakingsoplossing moet kunnen zien. Als u dit selecteert, moet op de startpagina het aantal containerinstallatiekopieën dat wordt uitgevoerd, worden weergegeven.

Houd er rekening mee dat er 5 exemplaren van de fabrikam-container uit deel 2 van de zelfstudie zijn uitgevoerd

Startpagina containeroplossing

Als u de Container Monitor-oplossing selecteert, gaat u naar een gedetailleerder dashboard, waarmee u door meerdere deelvensters kunt bladeren en query's kunt uitvoeren in Azure Monitor-logboeken.

Aangezien de agent docker-logboeken ophaalt, worden stdout en stderr standaard weergegeven. Als u horizontaal schuift, ziet u inventaris van containerinstallatiekopieën, status, metrische gegevens en voorbeeldquery's die u kunt uitvoeren om nuttigere gegevens te verkrijgen.

Dashboard Containeroplossing

Als u een van deze panelen selecteert, gaat u naar de Kusto-query die de weergegeven waarde genereert. Wijzig de query in * om alle verschillende soorten logboeken te bekijken die worden opgehaald. Hier kunt u query's uitvoeren of filteren op de prestaties en logboeken van de container, of Service Fabric-platformgebeurtenissen bekijken. De agenten zenden ook continu een heartbeat van elk knooppunt uit. Hieraan kunt u zien dat er nog steeds gegevens worden verzameld van alle computers als de clusterconfiguratie wordt gewijzigd.

Containerquery

Log Analytics-agent configureren voor het ophalen van prestatiemeteritems

Een ander voordeel van het gebruik van de Log Analytics-agent is de mogelijkheid om de prestatiemeteritems te wijzigen die u wilt ophalen via de Log Analytics-gebruikersinterface. U hoeft dan de Azure diagnoseagent niet te configureren en geen op een Resource Manager-sjabloon gebaseerde upgrade uit te voeren. Als u dit wilt doen, selecteert u OMS-werkruimte op de startpagina van uw Container Monitoring- of Service Fabric-oplossing.

Hiermee gaat u naar uw Log Analytics-werkruimte, waar u uw oplossingen kunt bekijken, aangepaste dashboards kunt maken en de Log Analytics-agent kunt configureren.

  • Selecteer Geavanceerde instellingen om het menu Geavanceerde instellingen te openen.
  • Selecteer Verbonden bronnen>Windows Servers om te controleren of er 5 Windows-computers verbonden zijn.
  • Selecteer Gegevens>Windows-prestatiemeteritems om nieuwe prestatiemeteritems te zoeken en toe te voegen. Hier ziet u een lijst met aanbevelingen uit Azure Monitor-logboeken voor prestatiemeteritems die u kunt verzamelen en de optie om naar andere tellers te zoeken. Controleer of processor(_Total)% processortijd en geheugen(*)\Beschikbare MBytes-tellers worden verzameld.

Vernieuw uw containerbewakingsoplossing over een paar minuten en u ziet dat computerprestatiegegevens binnenkomen. Dit helpt u inzicht te krijgen in hoe uw resources worden gebruikt. U kunt deze metrische gegevens ook gebruiken om de juiste beslissingen te maken over het schalen van het cluster of om te bevestigen dat een cluster de belasting op de juiste wijze verdeelt.

Opmerking: controleer of de tijdfilters goed zijn ingesteld voor deze metrische gegevens.

Prestatiemeteritems 2

Volgende stappen

In deze zelfstudie heeft u het volgende geleerd:

  • Azure Monitor logboeken configureren voor uw Service Fabric-cluster
  • Een Log Analytics-werkruimte gebruiken om logboeken te bekijken en te doorzoeken vanuit uw containers en knooppunten
  • De Log Analytics-agent configureren om metrische gegevens uit containers en knooppunten te halen

Nu u bewaking hebt geconfigureerd voor uw containertoepassing, kunt u:

  • De Azure Monitor-logboeken configureren voor een Linux-cluster, volgens soortgelijke stappen als in deze zelfstudie. Raadpleeg Deze sjabloon om wijzigingen in de Resource Manager-sjabloon aan te brengen.
  • Azure Monitor-logboeken configureren om automatische waarschuwingen in te stellen voor detectie en diagnostiek.
  • De lijst met aanbevolen prestatiemeteritems van Service Fabric onderzoeken om deze voor uw clusters te configureren.
  • Vertrouwd raken met de functies zoeken in logboeken en query's uitvoeren die als onderdeel van Azure Monitor-logboeken worden aangeboden.