(DEPRECATO) Monitorare un cluster Kubernetes con Log Analytics(DEPRECATED) Monitor a Kubernetes cluster with Log Analytics

Suggerimento

Per la versione aggiornata di questa esercitazione che usa Azure Kubernetes Service, vedere Panoramica di monitoraggio di Azure per contenitori (anteprima).For the updated version this tutorial that uses Azure Kubernetes Service, see Azure Monitor for containers (Preview) overview.

Avviso

Il servizio Azure Container (ACS) è deprecato. Non saranno aggiunte nuove funzionalità al servizio Azure Container. Tutte le API, l'esperienza del portale, i comandi dell'interfaccia della riga di comando e la documentazione sono contrassegnate come deprecate.The Azure Container Service (ACS) is being deprecated. No new features or functionality are being added to ACS. All of the APIs, portal experience, CLI commands and documentation are marked as deprecated.

Nel 2017 abbiamo presentato il servizio Azure Kubernetes per semplificare la gestione, la distribuzione e le operazioni di Kubernetes.In 2017, we introduced Azure Kubernetes Service (AKS) for simplifying Kubernetes management, deployment, and operations. Se si usa l'agente di orchestrazione di Kubernetes, eseguire la migrazione al servizio Azure Kubernetes entro il 31 gennaio 2020.If you use the Kubernetes orchestrator, please migrate to AKS by January 31, 2020. Per iniziare, vedere eseguire la migrazione al servizio Azure Kubernetes.To get started, see migrate to Azure Kubernetes Service.

Per altre informazioni, vedere l'annuncio di deprecazione del servizio Azure Container su Azure.com.For more information, see the Azure Container Service deprecation announcement on Azure.com.

Il monitoraggio del cluster e dei contenitori Kubernetes è critico, soprattutto quando si gestisce un cluster di produzione su larga scala con più app.Monitoring your Kubernetes cluster and containers is critical, especially when you manage a production cluster at scale with multiple apps.

È possibile sfruttare diverse soluzioni di monitoraggio di Kubernetes, da Microsoft o da altri provider.You can take advantage of several Kubernetes monitoring solutions, either from Microsoft or other providers. In questa esercitazione si monitora il cluster Kubernetes con la soluzione Contenitori in Log Analytics, la soluzione di gestione IT di Microsoft basata sul cloudIn this tutorial, you monitor your Kubernetes cluster by using the Containers solution in Log Analytics, Microsoft's cloud-based IT management solution. (la soluzione Contenitori è in anteprima).(The Containers solution is in preview.)

Questa esercitazione, parte sette di sette, illustra le attività seguenti:This tutorial, part seven of seven, covers the following tasks:

  • Ottenere le impostazioni dell'area di lavoro di Log AnalyticsGet Log Analytics Workspace settings
  • Configurare gli agenti di Log Analytics nei nodi KubernetesSet up Log Analytics agents on the Kubernetes nodes
  • Accedere alle informazioni di monitoraggio nel portale di Log Analytics o nel portale di AzureAccess monitoring information in the Log Analytics portal or Azure portal

Prima di iniziareBefore you begin

Nelle esercitazioni precedenti è stato creato un pacchetto di un'applicazione in immagini del contenitore, caricate poi in Registro Azure Container, ed è stato creato un cluster Kubernetes.In previous tutorials, an application was packaged into container images, these images uploaded to Azure Container Registry, and a Kubernetes cluster created.

Se questi passaggi non sono stati ancora eseguiti e si vuole procedere, tornare a Tutorial 1 – Create container images (Esercitazione 1: Creare immagini del contenitore).If you have not done these steps, and would like to follow along, return to Tutorial 1 – Create container images.

Ottenere le impostazioni dell'area di lavoroGet Workspace settings

Quando è possibile accedere al portale di Log Analytics, passare a Impostazioni > Origini connesse > Server Linux.When you can access the Log Analytics portal, go to Settings > Connected Sources > Linux Servers. Qui è possibile trovare l'ID area di lavoro e una Chiave dell'area di lavoro primaria o secondaria.There, you can find the Workspace ID and a primary or secondary Workspace Key. Prendere nota di questi valori, per cui è necessario configurare gli agenti di Log Analytics nel cluster.Take note of these values, which you need to set up Log Analytics agents on the cluster.

Creare un segreto KubernetesCreate Kubernetes secret

Archiviare le impostazioni dell'area di lavoro di Log Analytics in un segreto Kubernetes denominato omsagent-secret usando il comando [kubectl create secret][kubectl-create-secret].Store the Log Analytics workspace settings in a Kubernetes secret named omsagent-secret using the [kubectl create secret][kubectl-create-secret] command. Aggiornare WORKSPACE_ID con l'ID dell'area di lavoro di Log Analytics e WORKSPACE_KEY con la chiave dell'area di lavoro.Update WORKSPACE_ID with your Log Analytics workspace ID and WORKSPACE_KEY with the workspace key.

kubectl create secret generic omsagent-secret --from-literal=WSID=WORKSPACE_ID --from-literal=KEY=WORKSPACE_KEY

Configurare gli agenti di Log AnalyticsSet up Log Analytics agents

Per configurare gli agenti di monitoraggio del contenitore in un cluster Kubernetes, è possibile usare il file manifesto Kubernetes seguente.The following Kubernetes manifest file can be used to configure the container monitoring agents on a Kubernetes cluster. Questa operazione crea un DaemonSet di Kubernetes, che esegue un singolo pod identico in ogni nodo del cluster.It creates a Kubernetes DaemonSet, which runs a single identical pod on each cluster node.

Salvare il testo seguente in un file denominato oms-daemonset.yaml.Save the following text to a file named oms-daemonset.yaml.

apiVersion: extensions/v1beta1
kind: DaemonSet
metadata:
 name: omsagent
spec:
 template:
  metadata:
   labels:
    app: omsagent
    agentVersion: 1.4.3-174
    dockerProviderVersion: 1.0.0-30
  spec:
   containers:
     - name: omsagent
       image: "microsoft/oms"
       imagePullPolicy: Always
       securityContext:
         privileged: true
       ports:
       - containerPort: 25225
         protocol: TCP
       - containerPort: 25224
         protocol: UDP
       volumeMounts:
        - mountPath: /var/run/docker.sock
          name: docker-sock
        - mountPath: /var/log
          name: host-log
        - mountPath: /etc/omsagent-secret
          name: omsagent-secret
          readOnly: true
        - mountPath: /var/lib/docker/containers
          name: containerlog-path
       livenessProbe:
        exec:
         command:
         - /bin/bash
         - -c
         - ps -ef | grep omsagent | grep -v "grep"
        initialDelaySeconds: 60
        periodSeconds: 60
   nodeSelector:
    beta.kubernetes.io/os: linux
   # Tolerate a NoSchedule taint on master that ACS Engine sets.
   tolerations:
    - key: "node-role.kubernetes.io/master"
      operator: "Equal"
      value: "true"
      effect: "NoSchedule"
   volumes:
    - name: docker-sock
      hostPath:
       path: /var/run/docker.sock
    - name: host-log
      hostPath:
       path: /var/log
    - name: omsagent-secret
      secret:
       secretName: omsagent-secret
    - name: containerlog-path
      hostPath:
       path: /var/lib/docker/containers

Creare il DaemonSet con il comando seguente:Create the DaemonSet with the following command:

kubectl create -f oms-daemonset.yaml

Per verificare che sia stato creato il DaemonSet, eseguire:To see that the DaemonSet is created, run:

kubectl get daemonset

L'output è simile al seguente:Output is similar to the following:

NAME       DESIRED   CURRENT   READY     UP-TO-DATE   AVAILABLE   NODE-SELECTOR   AGE
omsagent   3         3         3         0            3           <none>          5m

Quando gli agenti sono in esecuzione, Log Analytics impiega alcuni minuti per inserire ed elaborare i dati.After the agents are running, it takes several minutes for Log Analytics to ingest and process the data.

Accesso ai dati di monitoraggioAccess monitoring data

Visualizzare e analizzare i dati di monitoraggio del contenitore con la Soluzione Contenitore nel portale di Log Analytics o nel portale di Azure.View and analyze the container monitoring data with the Container solution in either the Log Analytics portal or the Azure portal.

Per installare la Soluzione Contenitore tramite il portale di Log Analytics, passare a Raccolta soluzioni.To install the Container solution using the Log Analytics portal, go to Solutions Gallery. Aggiungere quindi la Soluzione Contenitore.Then add Container Solution. In alternativa, aggiungere la Soluzione Contenitore da Azure Marketplace.Alternatively, add the Containers solution from the Azure Marketplace.

Nel portale di Log Analytics cercare un riquadro di riepilogo Contenitori nel dashboard.In the Log Analytics portal, look for a Containers summary tile on the dashboard. Fare clic sul riquadro per i dettagli, tra cui: eventi del contenitore, errori, stato, inventario dell'immagine e uso di CPU e memoria.Click the tile for details including: container events, errors, status, image inventory, and CPU and memory usage. Per informazioni più granulari, fare clic su una riga in qualsiasi riquadro o eseguire una ricerca log.For more granular information, click a row on any tile, or perform a log search.

Dashboard dei contenitori nel portale di Azure

Analogamente, nel portale di Azure passare a Log Analytics e selezionare il nome della propria area di lavoro.Similarly, in the Azure portal, go to Log Analytics and select your workspace name. Per visualizzare il riquadro di riepilogo dei Contenitori, fare clic su Soluzioni > Contenitori.To see the Containers summary tile, click Solutions > Containers. Per visualizzare i dettagli, fare clic sul riquadro.To see details, click the tile.

Vedere la Documentazione su Log Analytics per istruzioni dettagliate sulla creazione di query e sull'analisi dei dati di monitoraggio.See the Azure Log Analytics documentation for detailed guidance on querying and analyzing monitoring data.

Passaggi successiviNext steps

In questa esercitazione è stato monitorato il cluster Kubernetes con Log Analytics.In this tutorial, you monitored your Kubernetes cluster with Log Analytics. Le attività descritte includevano:Tasks covered included:

  • Ottenere le impostazioni dell'area di lavoro di Log AnalyticsGet Log Analytics Workspace settings
  • Configurare gli agenti di Log Analytics nei nodi KubernetesSet up Log Analytics agents on the Kubernetes nodes
  • Accedere alle informazioni di monitoraggio nel portale di Log Analytics o nel portale di AzureAccess monitoring information in the Log Analytics portal or Azure portal

Seguire questo collegamento per vedere esempi di script predefiniti per il servizio contenitore.Follow this link to see pre-built script samples for Container Service.