Share via


Verbinding maken naar SQL Managed Instance ingeschakeld door Azure Arc

In dit artikel wordt uitgelegd hoe u verbinding kunt maken met uw met SQL beheerde exemplaar dat is ingeschakeld door Azure Arc.

SQL Managed Instance weergeven die is ingeschakeld door Azure Arc

Gebruik de volgende opdracht om het exemplaar en de externe eindpunten weer te geven:

az sql mi-arc list --k8s-namespace <namespace> --use-k8s -o table

Uitvoer moet er als volgt uitzien:

Name       PrimaryEndpoint      Replicas    State
---------  -------------------  ----------  -------
sqldemo    10.240.0.107,1433    1/1         Ready

Als u AKS of kubeadm of OpenShift enzovoort gebruikt, kunt u hier het externe IP- en poortnummer kopiëren en er verbinding mee maken met behulp van uw favoriete hulpprogramma om verbinding te maken met een SQL Sever/Azure SQL-exemplaar, zoals Azure Data Studio of SQL Server Management Studio. Als u echter de quickstart-VM gebruikt, raadpleegt u hieronder voor speciale informatie over het maken van verbinding met die VIRTUELE machine van buiten Azure.

Notitie

Uw bedrijfsbeleid blokkeert mogelijk de toegang tot het IP-adres en de poort, met name als dit wordt gemaakt in de openbare cloud.

Verbinden

Verbinding maken met Azure Data Studio, SQL Server Management Studio of SQLCMD

Open Azure Data Studio en maak verbinding met uw exemplaar met het IP-adres en poortnummer van het externe eindpunt hierboven. Als u een Virtuele Azure-machine gebruikt, hebt u het openbare IP-adres nodig, dat kan worden geïdentificeerd met behulp van de speciale opmerking over implementaties van virtuele Azure-machines.

Bijvoorbeeld:

  • Server: 52.229.9.30.30913
  • Gebruikersnaam: sa
  • Wachtwoord: uw opgegeven SQL-wachtwoord tijdens het inrichten

Notitie

Als u verbinding wilt maken met een beheerd exemplaar dat is gemaakt met behulp van een Kubernetes-manifest, moet de gebruikersnaam en het wachtwoord worden opgegeven voor sqlcmd in base64-gecodeerde vorm.

Als u verbinding wilt maken met BEHULP van SQLCMD of Linux of Windows, kunt u een dergelijke opdracht gebruiken. Voer het SQL-wachtwoord in wanneer u hierom wordt gevraagd:

sqlcmd -S 52.229.9.30,30913 -U sa

Speciale opmerking over implementaties van virtuele Azure-machines

Als u een virtuele Azure-machine gebruikt, wordt het openbare IP-adres van het eindpunt niet weergegeven. Gebruik de volgende opdracht om het externe IP-adres te vinden:

az network public-ip list -g azurearcvm-rg --query "[].{PublicIP:ipAddress}" -o table

Vervolgens kunt u het openbare IP-adres combineren met de poort om uw verbinding te maken.

Mogelijk moet u ook de poort van het SQL-exemplaar beschikbaar maken via de netwerkbeveiligingsgateway (NSG). Als u verkeer via de NSG wilt toestaan, moet u een regel toevoegen die u kunt doen met behulp van de volgende opdracht.

Als u een regel wilt instellen, moet u de naam van uw NSG kennen die u kunt achterhalen met behulp van de onderstaande opdracht:

az network nsg list -g azurearcvm-rg --query "[].{NSGName:name}" -o table

Zodra u de naam van de NSG hebt, kunt u een firewallregel toevoegen met behulp van de volgende opdracht. De voorbeeldwaarden hier maken een NSG-regel voor poort 30913 en maken verbinding vanaf elk bron-IP-adres mogelijk. Dit is geen best practice op het gebied van beveiliging! U kunt de functies beter vergrendelen door een waarde voor de bron-adres-voorvoegsels op te geven die specifiek is voor uw client-IP-adres of een IP-adresbereik dat betrekking heeft op de IP-adressen van uw team of organisatie.

Vervang de waarde van de --destination-port-ranges onderstaande parameter door het poortnummer dat u hebt gekregen uit de az sql mi-arc list bovenstaande opdracht.

az network nsg rule create -n db_port --destination-port-ranges 30913 --source-address-prefixes '*' --nsg-name azurearcvmNSG --priority 500 -g azurearcvm-rg --access Allow --description 'Allow port through for db access' --destination-address-prefixes '*' --direction Inbound --protocol Tcp --source-port-ranges '*'