Dela via


Snabbstart: Distribuera en SQL Server Linux-container till Kubernetes med hjälp av Helm-diagram

gäller för:SQL Server – Linux

Den här snabbstarten tar dig igenom stegen för att distribuera SQL Server på Linux-containrar till Azure Kubernetes Service (AKS) med Helm-diagram, från en Windows-klientdator.

AKS är en hanterad Kubernetes-tjänst för att distribuera och hantera containerkluster. Helm är ett paketeringsverktyg med öppen källkod som hjälper dig att installera och hantera livscykeln för Kubernetes-program.

Förutsättningar

  • Ett Azure-abonnemang. Om du inte har en Azure-prenumeration kan du skapa ett kostnadsfritt konto.

  • Skapa ett AKS-kluster.

  • Ladda ned och granska exemplet Helm-diagram för den här snabbstarten. Exempeldiagrammet innehåller många konfigurationsalternativ för att anpassa SQL Server-distributionen.

Installera klientverktyg

På din Windows-klientdator behöver du följande verktyg.

Om du föredrar att använda ett annat klientoperativsystem måste du välja lämpliga paket för plattformen.

Installera kubectl med Az PowerShell-modulen

Du använder kubectl för att interagera med Kubernetes-klustret. Mer information finns i az aks install-cli.

Om du vill installera kubectlkör du följande kommando från kommandotolken i Windows:

az aks install-cli

Tips

Du kan lägga till kubectl- till din lokala PATH miljövariabel, så att du inte behöver skriva in den fullständiga sökvägen varje gång.

Ansluta kubectl till AKS-klustret

  1. Du måste sammanfoga kontexten för AKS-klustret så att kubectl eller helm-kommandon körs på det specifika AKS-klustret.

    Om du vill sammanfoga kör du kommandot enligt beskrivningen i artikeln Anslut till AKS-kluster:

    az aks get-credentials --resource-group <resourcegroupname> --name <aks clustername>
    

    Du bör se följande utdata, där <clustername> är klustret du angav och <username> är ditt lokala Windows-användarkonto:

    Merged "<clustername>" as current context in C:\Users\<username>\.kube.config
    
  2. Bekräfta att sammanfogningen lyckades genom att köra kubectl get nodes. Utdata ska visa noderna i kontexten för ditt AKS-kluster.

    NAME                    STATUS   ROLES   AGE    VERSION
    <aks-node>-vmss000000   Ready    agent   141d   v1.16.13
    <aks-node>-vmss000001   Ready    agent   141d   v1.16.13
    

Granska Helm-exempeldiagrammet

Nu är du redo att distribuera SQL Server i AKS-klustret via Helm-diagrammet.

Den här snabbstartsguiden innehåller ett exempel "as-is" exempel "as-is" Helm-diagram. Exemplet är endast som referens. Kom ihåg att granska readme-filen för att förstå de konfigurationsvärden som matchar dina konfigurationskrav.

Om du vill distribuera SQL Server i StatefulSet-läge, vilket är det rekommenderade läget för SQL Server-distributioner, kan du istället visa ett exempel på "as-is" StatefulSet-baserad Helm-diagramutplacering.

  1. Ladda ned Helm-exempeldiagrammet.

  2. Växla till katalogen där du laddade ned exempeldiagrammet och ändra filen values.yaml om det behövs.

Distribuera SQL Server till AKS-klustret

Distribuera SQL Server med hjälp av följande kommando. Distributionsnamnet är anpassningsbart, så du kan ändra mssql-latest-deploy till vad du vill.

helm install mssql-latest-deploy . --set ACCEPT_EULA.value=Y --set MSSQL_PID.value=Developer

I föregående exempel finns diagrammet och dess filer i den aktuella katalogen, som representeras av perioden (.). Du kan ange sökvägen till diagrammet om du vill.

Om det lyckas visas liknande utdata:

NAME: mssql-latest-deploy
LAST DEPLOYED: Wed Apr 06 21:36:19 2022
NAMESPACE: default
STATUS: deployed
REVISION: 1

Verifiera SQL Server-distribution

Det kan ta några minuter att distribuera till ett Kubernetes-kluster. Kontrollera att distributionen lyckades genom att köra följande kommando:

kubectl get all

Om det lyckas visas liknande utdata:

NAME                                      READY   STATUS    RESTARTS   AGE
pod/mssql-latest-deploy-7f8c7f5bc-9grmg   1/1     Running   0          2m56s

NAME                          TYPE           CLUSTER-IP     EXTERNAL-IP   PORT(S)          AGE
service/kubernetes            ClusterIP      10.0.0.1       <none>        443/TCP          141d
service/mssql-latest-deploy   LoadBalancer   10.0.247.220   20.40.0.145   1433:30780/TCP   2m56s

NAME                                  READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/mssql-latest-deploy   1/1     1            1           2m56s

NAME                                            DESIRED   CURRENT   READY   AGE
replicaset.apps/mssql-latest-deploy-7f8c7f5bc   1         1         1       2m56s

Ansluta till SQL Server som körs på AKS

Du kan ansluta till SQL Server-instansen med alla välbekanta SQL Server-klientverktyg, till exempel SQL Server Management Studio (SSMS), Azure Data Studio eller sqlcmd.

Om du till exempel ansluter till SQL Server-instansen med SSMS kan du använda följande inställningar:

  • Servernamn: Använd External-IP-adressen för mssql-latest-deploy-tjänsten. I det här exemplet är det 20.40.0.145.
  • -autentisering: Välj SQL Server-autentisering i listrutan.
  • Login: Använd sa, som är systemadministratörskontot.
  • Lösenord: Lösenordet för sa matchar det värde som du angav i konfigurationsalternativet MSSQL_SA_PASSWORD i values.yaml-filen i Helm-diagrammet.

När du ansluter kan du expandera SQL Server-instansen i Object Explorer.

Skärmbild som visar objektutforskaren som är ansluten till databasinstansen.

Rensa resurser

Kom ihåg att ta bort klustretom du inte ska fortsätta använda AKS-klustret.