Verbinding maken met 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.
Voorbeeld:
- Server: 52.229.9.30.30913
- Gebruikersnaam: sa
- Wachtwoord: uw opgegeven SQL-wachtwoord tijdens het inrichten
Notitie
U kunt Azure Data Studio gebruiken om de dashboards van het beheerde SQL-exemplaar weer te geven.
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 '*'