Uppgradera en indirekt ansluten Azure Arc-datastyrenhet med hjälp av CLI
Den här artikeln beskriver hur du uppgraderar en indirekt ansluten Azure Arc-aktiverad datakontrollant med hjälp av Azure CLI (az
).
Under en uppgradering av datakontrollanten kan delar av datakontrollplanet, till exempel anpassade resursdefinitioner (CRD) och containrar uppgraderas. En uppgradering av datakontrollanten orsakar inte driftstopp för datatjänsterna (SQL Managed Instance eller PostgreSQL-servern).
Förutsättningar
Du behöver en indirekt ansluten datakontrollant med imageTag v1.0.0_2021-07-30 eller senare.
Kontrollera versionen genom att köra:
kubectl get datacontrollers -n <namespace> -o custom-columns=BUILD:.spec.docker.imageTag
Installera verktygen
Innan du kan fortsätta med uppgifterna i den här artikeln måste du installera:
- Azure CLI (
az
) - Tillägget
arcdata
för Azure CLI
Exempel i den här artikeln använder vinkelparenteser < ... >
för att identifiera värden som du behöver ersätta innan du kör skriptet. Ersätt hakparenteserna och värdena inom hakparenteserna.
Tilläggsversionen arcdata
och avbildningsversionen är relaterade. Kontrollera att du har rätt arcdata
tilläggsversion som motsvarar den avbildningsversion som du vill uppgradera till i versionsloggen.
Visa tillgängliga bilder och välj en version
Hämta listan över tillgängliga avbildningar för datakontrollanten med följande kommando:
az arcdata dc list-upgrades --k8s-namespace <namespace>
Kommandot ovan returnerar utdata som i följande exempel:
Found 2 valid versions. The current datacontroller version is v1.0.0_2021-07-30.
v1.1.0_2021-11-02
v1.0.0_2021-07-30
Uppgradera datakontrollant
Det här avsnittet visar hur du uppgraderar en indirekt ansluten datakontrollant.
Kommentar
Vissa av datatjänstnivåerna och lägena är allmänt tillgängliga och vissa är i förhandsversion. Om du installerar GA- och förhandsversionstjänster på samma datakontrollant kan du inte uppgradera på plats. Om du vill uppgradera tar du bort alla icke-GA-databasinstanser. Du hittar listan över allmänt tillgängliga tjänster och förhandsversionstjänster i Viktig information.
Information om uppgraderingsvägar som stöds finns i Uppgradera Azure Arc-aktiverade datatjänster.
Uppgradering
Du måste ansluta och autentisera till ett Kubernetes-kluster och ha en befintlig Kubernetes-kontext vald innan du påbörjar uppgraderingen av Azure Arc-datastyrenheten.
Du kan utföra en torrkörning först. Den torra körningen verifierar att registret finns, versionsschemat och den privata lagringsplatsens auktoriseringstoken (om den används). Använd parametern --dry-run
i az arcdata dc upgrade
kommandot för att utföra en torr körning. Till exempel:
az arcdata dc upgrade --desired-version <version> --k8s-namespace <namespace> --dry-run --use-k8s
Utdata för föregående kommando är:
Preparing to upgrade dc arcdc in namespace arc to version <version-tag>.
Preparing to upgrade dc arcdc in namespace arc to version <version-tag>.
****Dry Run****
Arcdata Control Plane would be upgraded to: <version-tag>
Om du vill uppgradera datastyrenheten kör az arcdata dc upgrade
du kommandot och anger avbildningstaggen med --desired-version
.
az arcdata dc upgrade --name <data controller name> --desired-version <image tag> --k8s-namespace <namespace> --use-k8s
Exempel:
az arcdata dc upgrade --name arcdc --desired-version v1.7.0_2022-05-24 --k8s-namespace arc --use-k8s
Utdata för föregående kommando visar status för stegen:
Preparing to upgrade dc arcdc in namespace arc to version <version-tag>.
Preparing to upgrade dc arcdc in namespace arc to version <version-tag>.
Creating service account: arc:cr-upgrade-worker
Creating cluster role: arc:cr-upgrade-worker
Creating cluster role binding: arc:crb-upgrade-worker
Cluster role binding: arc:crb-upgrade-worker created successfully.
Cluster role: arc:cr-upgrade-worker created successfully.
Service account arc:cr-upgrade-worker has been created successfully.
Creating privileged job arc-elevated-bootstrapper-job
Övervaka uppgraderingsstatusen
Uppgraderingen är en process i två delar. Först uppgraderas kontrollanten och sedan uppgraderas övervakningsstacken. Du kan övervaka uppgraderingens förlopp med CLI.
CLI
az arcdata dc status show --name <data controller name> --k8s-namespace <namespace> --use-k8s
När uppgraderingen är klar blir utdata:
Ready
Felsökning
När den önskade versionen är inställd på en viss version försöker bootstrapper-jobbet uppgradera till den versionen tills den lyckas. Om uppgraderingen lyckas RunningVersion
uppdateras egenskapen för specifikationen till den nya versionen. Uppgraderingar kan misslyckas för scenarier som en felaktig avbildningstagg, det går inte att ansluta till registret eller lagringsplatsen, otillräcklig processor eller minne som allokerats till containrarna eller otillräcklig lagring.
Kör kommandot nedan för att se om någon av poddarna visar status
Error
eller har ett stort antal omstarter:kubectl get pods --namespace <namespace>
Om du vill titta på Händelser för att se om det finns ett fel kör du
kubectl describe pod <pod name> --namespace <namespace>
Om du vill hämta en lista över containrarna i poddarna kör du
kubectl get pods <pod name> --namespace <namespace> -o jsonpath='{.spec.containers[*].name}*'
Om du vill hämta loggarna för en container kör du
kubectl logs <pod name> <container name> --namespace <namespace>
Om du vill visa vanliga fel och felsöka dem går du till Felsöka resurser.