Delen via


Zelfstudie: Verbinding maken met een Azure SQL-server met behulp van een azure-privé-eindpunt met behulp van Azure CLI

Een privé-eindpunt in Azure is de fundamentele bouwsteen voor een Private Link in Azure. Het biedt Azure-resources, zoals virtuele machines, de mogelijkheid om Private Link-resources te gebruiken om privé met elkaar communiceren.

Diagram van resources die zijn gemaakt in de quickstart voor privé-eindpunten.

In deze zelfstudie leert u het volgende:

  • Een virtueel netwerk en een Bastion-host maken
  • Hiermee maakt u een virtuele machine.
  • Maak een Azure SQL-server en een privé-eindpunt.
  • Connectiviteit met het privé-eindpunt van SQL-server testen.

Vereisten

Een brongroep maken

Een Azure-resourcegroep is een logische container waarin Azure-resources worden geïmplementeerd en beheerd.

Maak een resourcegroep maken met az group create:

  • Met de naam CreateSQLEndpointTutorial-rg.
  • Op de locatie eastus.
az group create \
    --name CreateSQLEndpointTutorial-rg \
    --location eastus

Een virtueel netwerk en Bastion-host maken

In deze sectie leert u een virtueel netwerk, subnet en Bastion-host te maken.

De Bastion-host wordt gebruikt om veilig verbinding te maken met de virtuele machine om het privé-eindpunt te testen.

Maak een virtueel netwerk met az network vnet create

  • Met de naam myVNet.
  • Adresvoorvoegsel van 10.0.0.0/16.
  • Subnet met de naam myBackendSubnet.
  • Subnetvoorvoegsel van 10.0.0.0/24.
  • In de resourcegroep CreateSQLEndpointTutorial-rg.
  • Locatie VS - Oost.
az network vnet create \
    --resource-group CreateSQLEndpointTutorial-rg\
    --location eastus \
    --name myVNet \
    --address-prefixes 10.0.0.0/16 \
    --subnet-name myBackendSubnet \
    --subnet-prefixes 10.0.0.0/24

Werk het subnet bij om het beleid voor het privé-eindpuntnetwerk uit te schakelen met az network vnet subnet update:

az network vnet subnet update \
    --name myBackendSubnet \
    --resource-group CreateSQLEndpointTutorial-rg \
    --vnet-name myVNet \
    --disable-private-endpoint-network-policies true

Gebruik az network public-ip create om een openbaar IP-adres voor de Bastion-host te maken:

  • Maak een standaard zoneredundant openbaar IP-adres met de naam myBastionIP.
  • In CreateSQLEndpointTutorial-rg.
az network public-ip create \
    --resource-group CreateSQLEndpointTutorial-rg \
    --name myBastionIP \
    --sku Standard

Gebruik az network vnet subnet create om een bastionsubnet te maken:

  • met de naam AzureBastionSubnet.
  • Adresvoorvoegsel van 10.0.1.0/24.
  • In virtueel netwerk myVnet.
  • In resourcegroep CreateSQLEndpointTutorial-rg.
az network vnet subnet create \
    --resource-group CreateSQLEndpointTutorial-rg \
    --name AzureBastionSubnet \
    --vnet-name myVNet \
    --address-prefixes 10.0.1.0/24

Gebruik az network bastion create om een Bastion-host te maken:

  • met de naam myBastionHost.
  • In CreateSQLEndpointTutorial-rg.
  • Gekoppeld aan het openbare IP-adres myBastionIP.
  • Gekoppeld aan het virtuele netwerk myVNet.
  • Op de locatie eastus.
az network bastion create \
    --resource-group CreateSQLEndpointTutorial-rg \
    --name myBastionHost \
    --public-ip-address myBastionIP \
    --vnet-name myVNet \
    --location eastus

De Azure Bastion kan een paar minuten nodig hebben om te implementeren.

Virtuele testmachine maken

In deze sectie maakt u een virtuele machine die wordt gebruikt om het persoonlijke eindpunt te testen.

Maak een VM met az vm create. Wanneer u hierom wordt gevraagd, geeft u een wachtwoord op dat moet worden gebruikt als de referenties voor de VM:

  • Met de naam myVM.
  • In CreateSQLEndpointTutorial-rg.
  • In netwerk myVNet.
  • In subnet myBackendSubnet.
  • Serverinstallatiekopie Win2019Datacenter.
az vm create \
    --resource-group CreateSQLEndpointTutorial-rg \
    --name myVM \
    --image Win2019Datacenter \
    --public-ip-address "" \
    --vnet-name myVNet \
    --subnet myBackendSubnet \
    --admin-username azureuser

Notitie

Azure biedt een standaard ip-adres voor uitgaande toegang voor VM's waaraan geen openbaar IP-adres is toegewezen of zich in de back-endpool van een interne Azure-load balancer bevinden. Het standaard ip-mechanisme voor uitgaande toegang biedt een uitgaand IP-adres dat niet kan worden geconfigureerd.

Het standaard IP-adres voor uitgaande toegang is uitgeschakeld wanneer een van de volgende gebeurtenissen plaatsvindt:

  • Er wordt een openbaar IP-adres toegewezen aan de VIRTUELE machine.
  • De VIRTUELE machine wordt in de back-endpool van een standaard load balancer geplaatst, met of zonder uitgaande regels.
  • Er wordt een Azure NAT Gateway-resource toegewezen aan het subnet van de VIRTUELE machine.

Virtuele machines die u maakt met behulp van virtuele-machineschaalsets in de flexibele indelingsmodus, hebben geen standaardtoegang voor uitgaand verkeer.

Zie Voor meer informatie over uitgaande verbindingen in Azure standaard uitgaande toegang in Azure en SNAT (Source Network Address Translation) gebruiken voor uitgaande verbindingen.

Een Azure SQL-server maken

In deze sectie maakt u een SQL-server en een database.

Gebruik az sql server create om een SQL-server te maken:

  • Vervang <sql-server-name> door uw unieke servernaam.
  • Vervang <uw wachtwoord> door uw wachtwoord.
  • In CreateSQLEndpointTutorial-rg.
  • In regio eastus.
az sql server create \
    --name <sql-server-name> \
    --resource-group CreateSQLEndpointTutorial-rg \
    --location eastus \
    --admin-user sqladmin \
    --admin-password <your-password>

Gebruik az sql db create om een database te maken:

  • Met de naam myDataBase.
  • In CreateSQLEndpointTutorial-rg.
  • Vervang <sql-server-name> door uw unieke servernaam.
az sql db create \
    --resource-group CreateSQLEndpointTutorial-rg  \
    --server <sql-server-name> \
    --name myDataBase \
    --sample-name AdventureWorksLT

Privé-eindpunt maken

In deze sectie maakt u het privé-eindpunt.

Gebruik az sql server list om de resource-id van de SQL-server in een shell-variabele te plaatsen.

Gebruik az network private-endpoint create om het eindpunt en de verbinding te maken:

  • Met de naam myPrivateEndpoint.
  • In resourcegroep CreateSQLEndpointTutorial-rg.
  • In virtueel netwerk myVnet.
  • In subnet myBackendSubnet.
  • Verbinding met de naam myConnection.
id=$(az sql server list \
    --resource-group CreateSQLEndpointTutorial-rg \
    --query '[].[id]' \
    --output tsv)

az network private-endpoint create \
    --name myPrivateEndpoint \
    --resource-group CreateSQLEndpointTutorial-rg \
    --vnet-name myVNet --subnet myBackendSubnet \
    --private-connection-resource-id $id \
    --group-ids sqlServer \
    --connection-name myConnection  

Privé-DNS-zone configureren

In dit gedeelte maakt en configureert u de privé-DNS-zone met behulp van az network private-dns zone create.

U gebruikt az network private-dns link vnet create om de koppeling van het virtuele netwerk met de DNS-zone te maken.

U maakt een DNS-zonegroep met az network private-endpoint dns-zone-group create.

  • Zone met de naam privatelink.database.windows.net
  • In virtueel netwerk myVnet.
  • In resourcegroep CreateSQLEndpointTutorial-rg.
  • DNS-koppeling met de naam myDNSLink.
  • Gekoppeld aan myPrivateEndpoint.
  • Zonegroep met de naam MyZoneGroup.
az network private-dns zone create \
    --resource-group CreateSQLEndpointTutorial-rg \
    --name "privatelink.database.windows.net"

az network private-dns link vnet create \
    --resource-group CreateSQLEndpointTutorial-rg \
    --zone-name "privatelink.database.windows.net" \
    --name MyDNSLink \
    --virtual-network myVNet \
    --registration-enabled false

az network private-endpoint dns-zone-group create \
   --resource-group CreateSQLEndpointTutorial-rg \
   --endpoint-name myPrivateEndpoint \
   --name MyZoneGroup \
   --private-dns-zone "privatelink.database.windows.net" \
   --zone-name sql

Privé-eindpuntconnectiviteit testen

In deze sectie gebruikt u de virtuele machine die u in de vorige stap hebt gemaakt, om verbinding te maken met de SQL-server via het privé-eindpunt.

  1. Meld u aan bij het Azure-portaal.

  2. Selecteer Resourcegroepen in het linkernavigatievenster.

  3. Selecteer CreateSQLEndpointTutorial-rg.

  4. Selecteer myVM.

  5. Selecteer op de overzichtspagina voor myVM de optie Verbinding maken en daarna Bastion.

  6. Selecteer de blauwe knop Bastion gebruiken.

  7. Voer de gebruikersnaam en het wachtwoord in die u hebt ingevoerd bij het maken van de virtuele machine.

  8. Open Windows PowerShell op de server nadat u verbinding hebt gemaakt.

  9. Voer nslookup <sqlserver-name>.database.windows.net in. Vervang <sqlserver-name> door de naam van de SQL-server die u in de vorige stappen hebt gemaakt. U ontvangt een bericht dat er ongeveer als volgt uitziet:

    Server:  UnKnown
    Address:  168.63.129.16
    
    Non-authoritative answer:
    Name:    mysqlserver8675.privatelink.database.windows.net
    Address:  10.0.0.5
    Aliases:  mysqlserver8675.database.windows.net
    

    Er wordt een privé-IP-adres 10.0.0.5 geretourneerd voor de naam van de SQL-server. Dit adres bevindt zich in het subnet van het virtuele netwerk dat u eerder hebt gemaakt.

  10. Installeer SQL Server Management Studio op myVM.

  11. Open SQL Server Management Studio.

  12. Typ of selecteer in Verbinding maken met server de volgende gegevens:

    Instelling Weergegeven als
    Servertype Selecteer Database Engine.
    Servernaam Voer <sql-server-name.database.windows.net> in
    Verificatie Selecteer SQL Server-verificatie.
    User name Voer de gebruikersnaam in die u hebt opgegeven tijdens het maken van de server
    Wachtwoord Voer het wachtwoord in dat u hebt opgegeven tijdens het maken van de server
    Wachtwoord onthouden Selecteer Ja.
  13. Selecteer Verbinding maken.

  14. Blader in het linkermenu door databases.

  15. (Optioneel) U kunt mysqldatabase maken of er een query op uitvoeren.

  16. Verbreek de bastionverbinding met myVM.

Resources opschonen

Wanneer u klaar bent met het privé-eindpunt, de SQL-server en de VM, verwijdert u de resourcegroep en alle resources die deze bevat:

az group delete \
    --name CreateSQLEndpointTutorial-rg

Volgende stappen

In deze zelfstudie hebt u het volgende gemaakt:

  • Een virtueel netwerk en Bastion-host.
  • Een virtuele machine.
  • Een Azure SQL-server met een privé-eindpunt.

U hebt de virtuele machine gebruikt om de connectiviteit met de SQL-server via het privé-eindpunt veilig te testen.

Als volgende stap bent u mogelijk ook geïnteresseerd in de web-app met privéconnectiviteit met het architectuurscenario voor Azure SQL-databases , waarmee een webtoepassing buiten het virtuele netwerk wordt verbonden met het privé-eindpunt van een database.