Felsöka resurser
Den här artikeln identifierar felsökningsresurser för Azure Arc-aktiverade datatjänster.
Uppladdningar
Loggar Ladda upp relaterade fel
Om du har distribuerat Azure Arc-datakontrollanten direct
i anslutningsläget med och kubectl
inte har skapat någon hemlighet för Log Analytics-arbetsytans autentiseringsuppgifter kan följande felmeddelanden visas i datakontrollantens CR (anpassad resurs):
status": {
"azure": {
"uploadStatus": {
"logs": {
"lastUploadTime": "YYYY-MM-HHTMM:SS:MS.SSSSSSZ",
"message": "spec.settings.azure.autoUploadLogs is true, but failed to get log-workspace-secret secret."
},
Lös ovanstående fel genom att skapa en hemlighet med autentiseringsuppgifterna för Log Analytics-arbetsytan som innehåller WorkspaceID
och enligt SharedAccessKey
följande:
apiVersion: v1
data:
primaryKey: <base64 encoding of Azure Log Analytics workspace primary key>
workspaceId: <base64 encoding of Azure Log Analytics workspace Id>
kind: Secret
metadata:
name: log-workspace-secret
namespace: <your datacontroller namespace>
type: Opaque
Måttuppladdningsrelaterade fel i direktanslutet läge
Om du har konfigurerat automatisk uppladdning av mått i direktanslutet läge och de behörigheter som krävs för MSI inte har beviljats korrekt (enligt beskrivningen i Ladda upp mått) kan du se ett fel i loggarna på följande sätt:
'Metric upload response: {"error":{"code":"AuthorizationFailed","message":"Check Access Denied Authorization for AD object XXXXXXXXX-XXXX-XXXX-XXXXX-XXXXXXXXXXX over scope /subscriptions/XXXXXXXXX-XXXX-XXXX-XXXXX-XXXXXXXXXXX/resourcegroups/my-resource-group/providers/microsoft.azurearcdata/sqlmanagedinstances/arc-dc, User Tenant Id: XXXXXXXXX-XXXX-XXXX-XXXXX-XXXXXXXXXXX. Microsoft.Insights/Metrics/write was not allowed, Microsoft.Insights/Telemetry/write was notallowed. Warning: Principal will be blocklisted if the service principal is not granted proper access while it hits the GIG endpoint continuously."}}
Lös ovanstående fel genom att hämta MSI för Azure Arc-datakontrollanttillägget och bevilja de roller som krävs enligt beskrivningen i Ladda upp mått.
Användningsuppladdningsrelaterade fel i direktanslutet läge
Om du har distribuerat din Azure Arc-datakontrollant i direktanslutet läge beviljas de behörigheter som krävs för att ladda upp din användningsinformation automatiskt för MSI för Azure Arc-datakontrollanttillägget. Om den automatiska uppladdningsprocessen stöter på behörighetsrelaterade problem kan du se ett fel i loggarna på följande sätt:
identified that your data controller stopped uploading usage data to Azure. The error was:
{"lastUploadTime":"2022-05-05T20:10:47.6746860Z","message":"Data controller upload response: {\"error\":{\"code\":\"AuthorizationFailed\",\"message\":\"The client 'XXXXXXXXX-XXXX-XXXX-XXXXX-XXXXXXXXXXX' with object id 'XXXXXXXXX-XXXX-XXXX-XXXXX-XXXXXXXXXXX' does not have authorization to perform action 'microsoft.azurearcdata/datacontrollers/write' over scope '/subscriptions/XXXXXXXXX-XXXX-XXXX-XXXXX-XXXXXXXXXXX/resourcegroups/my-resource-group/providers/microsoft.azurearcdata/datacontrollers/arc-dc' or the scope is invalid. If access was recently granted, please refresh your credentials.\"}}"}
Lös behörighetsproblemet genom att hämta MSI och bevilja de roller som krävs enligt beskrivningen i Ladda upp mått).
Uppgraderingar
Felaktig bildtagg
Om du använder az
CLI för att uppgradera och skickar in en felaktig bildtagg visas ett fel inom två minuter.
Job Still Active : Failed to await bootstrap job complete after retrying for 2 minute(s).
Failed to await bootstrap job complete after retrying for 2 minute(s).
När du visar poddarna visas statusen för bootstrap-jobbet som ErrImagePull
.
STATUS
ErrImagePull
När du beskriver podden visas
Failed to pull image "<registry>/<repository>/arc-bootstrapper:<incorrect image tag>": [rpc error: code = NotFound desc = failed to pull and unpack image
Lös problemet genom att referera till versionsloggen för rätt avbildningstagg. Kör uppgraderingskommandot igen med rätt avbildningstagg.
Det går inte att ansluta till registret eller lagringsplatsen
Om du försöker uppgradera och uppgraderingsjobbet inte har genererat något fel men körs längre än femton minuter kan du visa uppgraderingens förlopp genom att titta på poddarna. Kör
kubectl get pods -n <namespace>
När du visar poddarna visas statusen för bootstrap-jobbet som ErrImagePull
.
STATUS
ErrImagePull
Beskriv bootstrap-jobbpodden för att visa händelserna.
kubectl describe pod <pod name> -n <namespace>
När du beskriver podden visas ett fel som säger
failed to resolve reference "<registry>/<repository>/arc-bootstrapper:<image tag>"
Det här är vanligt om avbildningen distribuerades från ett privat register, du använder Kubernetes för att uppgradera via en yaml-fil och yaml-filreferenserna mcr.microsoft.com i stället för det privata registret. Lös problemet genom att avbryta uppgraderingsjobbet. Om du vill hitta registret som du har distribuerat från kör du
kubectl describe pod <controller in format control-XXXXX> -n <namespace>
Leta efter Containers.controller.Image, där du ser registret och lagringsplatsen. Samla in dessa värden, ange i yaml-filen och kör uppgraderingen igen.
Det finns inte tillräckligt med resurser
Om du försöker uppgradera och uppgraderingsjobbet inte har genererat något fel men körs längre än femton minuter kan du visa uppgraderingens förlopp genom att titta på poddarna. Kör
kubectl get pods -n <namespace>
Leta efter en podd som visar att vissa containrar är klara, men inte – till exempel har den här metricsdb-0-podden bara en av två containrar:
NAME READY STATUS RESTARTS AGE
bootstrapper-848f8f44b5-7qxbx 1/1 Running 0 16m
control-7qxw8 2/2 Running 0 16m
controldb-0 2/2 Running 0 16m
logsdb-0 3/3 Running 0 18d
logsui-hvsrm 3/3 Running 0 18d
metricsdb-0 1/2 Running 0 18d
Beskriv podden för att se händelser.
kubectl describe pod <pod name> -n <namespace>
Om det inte finns några händelser hämtar du containernamnen och visar loggarna för containrarna.
kubectl get pods <pod name> -n <namespace> -o jsonpath='{.spec.containers[*].name}*'
kubectl logs <pod name> <container name> -n <namespace>
Om du ser ett meddelande om otillräcklig cpu eller minne bör du lägga till fler noder i Kubernetes-klustret eller lägga till fler resurser i dina befintliga noder.
Resurser efter typ
Scenario: Felsöka PostgreSQL-servrar
Visa loggar och mått med Kibana och Grafana