Migrera från HTTP-programroutning till tillägget för programroutning
I den här artikeln får du lära dig hur du migrerar ditt AKS-kluster (Azure Kubernetes Service) från HTTP-programroutningsfunktionen till tillägget för programroutning. TILLÄGGET HTTP-programroutning har dragits tillbaka och fungerar inte på någon kubernetes-klusterversion som för närvarande stöds. Vi rekommenderar att du migrerar så snart som möjligt för att upprätthålla en konfiguration som stöds.
Förutsättningar
- Azure CLI version 2.54.0 eller senare installerad och konfigurerad. Kör
az --version
för att hitta versionen. Om du behöver installera eller uppgradera kan du läsa Installera Azure CLI. aks-preview
Azure CLI-tillägget för version 0.5.171 eller senare installerat
Kommentar
De här stegen beskriver migrering från en konfiguration som inte stöds. AKS kan därför inte erbjuda stöd för problem som uppstår under migreringsprocessen.
Uppdatera klustrets tillägg, ingresser och IP-användning
Aktivera tillägget för programroutning.
az aks approuting enable --resource-group <ResourceGroupName> --name <ClusterName>
Uppdatera dina ingresser och ange
ingressClassName
tillwebapprouting.kubernetes.azure.com
. Ta bort anteckningenkubernetes.io/ingress.class
. Du måste också uppdatera värden till en som du äger, eftersom programdirigeringstillägget inte har någon DNS-zon för hanterade kluster. Om du inte har någon DNS-zon följer du anvisningarna för att skapa och konfigurera en.Ursprungligen ser ingresskonfigurationen ut ungefär så här:
apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: aks-helloworld annotations: kubernetes.io/ingress.class: addon-http-application-routing # Remove the ingress class annotation spec: rules: - host: aks-helloworld.<CLUSTER_SPECIFIC_DNS_ZONE> http: paths: - path: / pathType: Prefix backend: service: name: aks-helloworld port: number: 80
När du har uppdaterats korrekt ser samma konfiguration ut så här:
apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: aks-helloworld spec: ingressClassName: webapprouting.kubernetes.azure.com # Set the ingress class property to refer to the application routing add-on ingress class rules: - http: host: aks-helloworld.<CLUSTER_SPECIFIC_DNS_ZONE> # Replace with your own hostname paths: - path: / pathType: Prefix backend: service: name: aks-helloworld port: number: 80
Uppdatera ingresskontrollantens IP-adress (till exempel i DNS-poster) med den nya IP-adressen. Du hittar den nya IP-adressen med hjälp
kubectl get
av . Till exempel:kubectl get svc nginx --namespace app-routing-system -o jsonpath='{.status.loadBalancer.ingress[0].ip}'
Inaktivera TILLÄGGET HTTP-programroutning.
az aks disable-addons --resource-group <ResourceGroupName> --name <ClusterName> --addons http_application_routing
Ta bort och ta bort alla HTTP-programroutningsresurser
När TILLÄGGET HTTP-programroutning har inaktiverats kan vissa relaterade Kubernetes-resurser finnas kvar i klustret. Dessa resurser omfattar konfigurationskartor och hemligheter som skapas i kube-system-namnområdet . Om du vill underhålla ett rent kluster kan du ta bort dessa resurser. Leta efter resurser för addon-http-application-routing med hjälp av följande
kubectl get
kommandon:kubectl get deployments --namespace kube-system kubectl get services --namespace kube-system kubectl get configmaps --namespace kube-system kubectl get secrets --namespace kube-system
Följande exempelutdata visar konfigurationskartor som ska tas bort:
NAMESPACE NAME DATA AGE kube-system addon-http-application-routing-nginx-configuration 0 9m7s kube-system addon-http-application-routing-tcp-services 0 9m7s kube-system addon-http-application-routing-udp-services 0 9m7s
Ta bort återstående resurser med kommandot
kubectl delete
. Ange resurstyp, resursnamn och namnområde. I följande exempel tas en av de tidigare konfigurationsmapparna bort:kubectl delete configmaps addon-http-application-routing-nginx-configuration --namespace kube-system
Upprepa föregående
kubectl delete
steg för alla resurser för addon-http-application-routing som finns kvar i klustret.
Nästa steg
När du har migrerat till tillägget för programroutning får du lära dig hur du övervakar ingresskontrollantmått med Prometheus och Grafana.
Azure Kubernetes Service