Share via


Prometheus-adatok küldése az Azure Monitorba felügyelt identitáshitelesítéssel

Ez a cikk azt ismerteti, hogyan állíthat be távoli írást úgy, hogy adatokat küldjön egy ön által felügyelt Prometheus-kiszolgálóról, amely az Azure Kubernetes Service-fürtön (AKS) vagy az Azure Arc-kompatibilis Kubernetes-fürtön fut felügyelt identitáshitelesítés használatával. Használhat egy meglévő identitást, amelyet az AKS hozott létre, vagy létrehozhat egy saját identitást. Mindkét lehetőséget itt ismertetjük.

Fürtkonfigurációk

Ez a cikk a következő fürtkonfigurációkra vonatkozik:

  • Azure Kubernetes Service-fürt
  • Azure Arc-kompatibilis Kubernetes-fürt

Feljegyzés

További információ egy másik felhőben vagy helyszínen futó Kubernetes-fürt távoli írásának beállításáról: Prometheus-adatok küldése az Azure Monitorba Microsoft Entra-hitelesítéssel.

Előfeltételek

Támogatott verziók

A felügyelt identitás hitelesítéséhez a 2.45-ös verziónál nagyobb Prometheus-verziók szükségesek.

Azure Monitor-munkaterület

Ez a cikk a Prometheus-metrikák Azure Monitor-munkaterületre való küldését ismerteti. Azure Monitor-munkaterület létrehozásához lásd : Azure Monitor-munkaterület kezelése.

Engedélyek

Rendszergazda a jelen cikkben ismertetett lépések végrehajtásához a fürt vagy az erőforrás engedélyére van szükség.

Alkalmazás beállítása felügyelt identitáshoz

A Prometheus távoli írásának egy alkalmazáshoz felügyelt identitáshitelesítéssel történő beállításának folyamata a következő feladatok elvégzését foglalja magában:

  1. Kérje le az AKS-csomópont erőforráscsoportjának nevét.
  2. Kérje le a felhasználó által hozzárendelt felügyelt identitás ügyfél-azonosítóját.
  3. Rendelje hozzá a monitorozási metrikák közzétevői szerepkörét a munkaterület adatgyűjtési szabályához a felügyelt identitáshoz.
  4. Adjon hozzáférést az AKS-fürtnek a felügyelt identitáshoz.
  5. Helyezzen üzembe egy oldalkocsis tárolót a távoli írás beállításához.

A feladatokat a következő szakaszok ismertetik.

Az AKS-csomópont erőforráscsoportjának nevének lekérése

Az AKS-fürt csomóponterőforrás-csoportja a folyamat más lépéseiben használt erőforrásokat tartalmazza. Ennek az erőforráscsoportnak a neve MC_<AKS-RESOURCE-GROUP>_<AKS-CLUSTER-NAME>_<REGION>. Az erőforráscsoport nevét az Azure Portal Erőforráscsoportok menüjében találja.

Képernyőkép az erőforráscsoportok listájáról.

A felhasználó által hozzárendelt felügyelt identitás ügyfélazonosítójának lekérése

Le kell szereznie a használni kívánt identitás ügyfél-azonosítóját. Másolja ki az ügyfélazonosítót a folyamat későbbi részében való használathoz.

Saját ügyfélazonosító létrehozása helyett használhatja az AKS által létrehozott identitások egyikét. Az identitásokkal kapcsolatos további információkért lásd : Felügyelt identitás használata az Azure Kubernetes Service-ben.

Ez a cikk a kubelet-identitást használja. Az identitás <AKS-CLUSTER-NAME>-agentpoolneve az AKS-fürt csomóponterőforrás-csoportjában található.

Képernyőkép a csomópont erőforráscsoportjában található erőforrások listájáról.

Válassza ki a <AKS-CLUSTER-NAME>-agentpool felügyelt identitást. Az Áttekintés lapon másolja ki az ügyfélazonosító értékét. További információ: Felhasználó által hozzárendelt felügyelt identitások kezelése.

Képernyőkép egy felügyelt identitás áttekintési lapján található ügyfél-azonosítóról.

A monitorozási metrikák közzétevői szerepkörének hozzárendelése a munkaterület adatgyűjtési szabályához a felügyelt identitáshoz

A felügyelt identitáshoz hozzá kell rendelni az Azure Monitor-munkaterülethez társított adatgyűjtési szabály figyelési metrikák közzétevői szerepkörét.

  1. Az Azure Monitor-munkaterület erőforrásmenüjében válassza az Áttekintés lehetőséget. Adatgyűjtési szabály esetén válassza a hivatkozást.

    Képernyőkép az Azure Monitor-munkaterülethez társított adatgyűjtési szabályról.

  2. Az adatgyűjtési szabály erőforrásmenüjében válassza a Hozzáférés-vezérlés (IAM) lehetőséget.

  3. Válassza a Hozzáadás, majd a Szerepkör-hozzárendelés hozzáadása lehetőséget.

    A szerepkör-hozzárendelés hozzáférés-vezérlési oldalakon való hozzáadását bemutató képernyőkép.

  4. Válassza a Monitorozási metrikák közzétevője szerepkört, majd válassza a Tovább lehetőséget.

    Képernyőkép a szerepkör-hozzárendelések listájáról.

  5. Válassza a Felügyelt identitás lehetőséget, majd válassza a Tagok kiválasztása lehetőséget. Válassza ki a felhasználó által hozzárendelt identitást tartalmazó előfizetést, majd válassza a felhasználó által hozzárendelt felügyelt identitást. Jelölje ki a használni kívánt felhasználó által hozzárendelt identitást, majd válassza a Kiválasztás lehetőséget.

    A felhasználó által hozzárendelt felügyelt identitás kiválasztását bemutató képernyőkép.

  6. A szerepkör-hozzárendelés befejezéséhez válassza a Véleményezés + hozzárendelés lehetőséget.

Hozzáférés biztosítása az AKS-fürtnek a felügyelt identitáshoz

Ez a lépés nem szükséges, ha AKS-identitást használ. Az AKS-identitások már hozzáférnek a fürthöz.

Fontos

Az ebben a szakaszban ismertetett lépések végrehajtásához tulajdonosi vagy felhasználói hozzáférési rendszergazdai engedélyekkel kell rendelkeznie a fürthöz.

  1. Azonosítsa az AKS-fürt csomóponterőforrás-csoportjában található virtuálisgép-méretezési csoportokat.

    Képernyőkép a virtuálisgép-méretezési csoportokról a csomópont erőforráscsoportjában.

  2. Minden egyes virtuálisgép-méretezési csoporthoz futtassa a következő parancsot az Azure CLI-ben:

    az vmss identity assign -g <AKS-NODE-RESOURCE-GROUP> -n <AKS-VMSS-NAME> --identities <USER-ASSIGNED-IDENTITY-RESOURCE-ID>
    

Sidecar-tároló üzembe helyezése távoli írás beállításához

  1. Másolja ki a következő YAML-et, és mentse egy fájlba. A YAML a 8081-es portot használja figyelési portként. Ha másik portot használ, módosítsa a portot a YAML-ben.

    prometheus:
      prometheusSpec:
        externalLabels:
              cluster: <AKS-CLUSTER-NAME>
    
        ## https://prometheus.io/docs/prometheus/latest/configuration/configuration/#remote_write    
        remoteWrite:
        - url: 'http://localhost:8081/api/v1/write'
      ## Azure Managed Prometheus currently exports some default mixins in Grafana. 
      ## These mixins are compatible with Azure Monitor agent on your Azure Kubernetes Service cluster. 
      ## However, these mixins aren't compatible with Prometheus metrics scraped by the Kube Prometheus stack. 
      ## In order to make these mixins compatible, uncomment remote write relabel configuration below:
    
      ## writeRelabelConfigs:
      ##   - sourceLabels: [metrics_path]
      ##     regex: /metrics/cadvisor
      ##     targetLabel: job
      ##     replacement: cadvisor
      ##     action: replace
      ##   - sourceLabels: [job]
      ##     regex: 'node-exporter'
      ##     targetLabel: job
      ##     replacement: node
      ##     action: replace
        containers:
        - name: prom-remotewrite
          image: <CONTAINER-IMAGE-VERSION>
          imagePullPolicy: Always
          ports:
            - name: rw-port
              containerPort: 8081
          livenessProbe:
            httpGet:
              path: /health
              port: rw-port
            initialDelaySeconds: 10
            timeoutSeconds: 10
          readinessProbe:
            httpGet:
              path: /ready
              port: rw-port
            initialDelaySeconds: 10
            timeoutSeconds: 10
          env:
          - name: INGESTION_URL
            value: <INGESTION_URL>
          - name: LISTENING_PORT
            value: '8081'
          - name: IDENTITY_TYPE
            value: userAssigned
          - name: AZURE_CLIENT_ID
            value: <MANAGED-IDENTITY-CLIENT-ID>
          # Optional parameter
          - name: CLUSTER
            value: <CLUSTER-NAME>
    
  2. Cserélje le a következő értékeket a YAML-ben:

    Érték Leírás
    <AKS-CLUSTER-NAME> Az AKS-fürt neve.
    <CONTAINER-IMAGE-VERSION> mcr.microsoft.com/azuremonitor/containerinsights/ciprod/prometheus-remote-write/images:prom-remotewrite-20240507.1
    A távoli írási tároló lemezképének verziója.
    <INGESTION-URL> A Metrikák betöltési végpontjának értéke az Azure Monitor-munkaterület Áttekintés lapján.
    <MANAGED-IDENTITY-CLIENT-ID> Az ügyfélazonosító értéke a felügyelt identitás Áttekintés lapján.
    <CLUSTER-NAME> Annak a fürtnek a neve, amelyen a Prometheus fut.

    Fontos

    Azure Government-felhő esetén adja hozzá a következő környezeti változókat a env YAML-fájl szakaszához:

    - name: INGESTION_AAD_AUDIENCE value: https://monitor.azure.us/

  3. Nyissa meg az Azure Cloud Shellt, és töltse fel a YAML-fájlt.

  4. A Helm használatával alkalmazza a YAML-fájlt, és frissítse a Prometheus-konfigurációt:

    # set context to your cluster 
    az aks get-credentials -g <aks-rg-name> -n <aks-cluster-name> 
    
    # use Helm to update your remote write config 
    helm upgrade -f <YAML-FILENAME>.yml prometheus prometheus-community/kube-prometheus-stack --namespace <namespace where Prometheus pod resides> 
    

Ellenőrzés és hibaelhárítás

Az ellenőrzéssel és hibaelhárítással kapcsolatos információkért tekintse meg a Távoli írás és az Azure Monitor által felügyelt szolgáltatás hibaelhárítását a Prometheus távoli írásához.

Következő lépések