Share via


Private Link maken en beheren voor Azure Database for MySQL met behulp van CLI

VAN TOEPASSING OP: Azure Database for MySQL - enkele server

Belangrijk

Azure Database for MySQL enkele server bevindt zich op het buitengebruikstellingspad. We raden u ten zeerste aan een upgrade uit te voeren naar een flexibele Azure Database for MySQL-server. Zie Wat gebeurt er met Azure Database for MySQL Enkele server voor meer informatie over migreren naar Azure Database for MySQL Flexibele server ?

Een privé-eindpunt 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. In dit artikel leert u hoe u de Azure CLI gebruikt om een virtuele machine te maken in een virtueel Azure-netwerk en een Azure Database for MySQL-server met een privé-eindpunt van Azure.

Notitie

De functie Private Link is alleen beschikbaar voor Azure Database for MySQL-servers in de prijscategorieën Algemeen gebruik of Geoptimaliseerd voor geheugen. Zorg ervoor dat de databaseserver zich in een van deze prijscategorieën bevindt.

Vereisten

  • Voor dit artikel is versie 2.0.28 of hoger van Azure CLI vereist. Als u Azure Cloud Shell gebruikt, is de nieuwste versie al geïnstalleerd.

Een brongroep maken

Voordat u een resource kunt maken, moet u een resourcegroep maken die het Virtual Network host. Maak een resourcegroep maken met az group create. In dit voorbeeld wordt een resourcegroep met de naam myResourceGroup gemaakt op de locatie westeurope :

az group create --name myResourceGroup --location westeurope

Een virtueel netwerk maken

Maak een Virtual Network met az network vnet create. In dit voorbeeld wordt een standaard Virtual Network gemaakt met de naam myVirtualNetwork met één subnet genaamd mySubnet:

az network vnet create \
 --name myVirtualNetwork \
 --resource-group myResourceGroup \
 --subnet-name mySubnet

Beleid voor privé-eindpunten van subnet uitschakelen

Azure implementeert resources in een subnet binnen een virtueel netwerk, dus u moet het subnet maken of bijwerken om beleid voor privé-eindpuntnetwerk uit te schakelen. Update een subnet-configuratie met de naam mySubnet met az network vnet subnet update:

az network vnet subnet update \
 --name mySubnet \
 --resource-group myResourceGroup \
 --vnet-name myVirtualNetwork \
 --disable-private-endpoint-network-policies true

De VM maken

Maak een VM met az vm create. Wanneer u hierom wordt gevraagd, geeft u een wachtwoord op dat moet worden gebruikt als de aanmeldingsreferenties voor de VM. In het volgende voorbeeld wordt een VM gemaakt met de naam myVm:

az vm create \
  --resource-group myResourceGroup \
  --name myVm \
  --image Win2019Datacenter

Notitie

het openbare IP-adres van de VM; In de volgende stap gebruikt u dit adres om verbinding te maken met de virtuele machine vanaf internet.

Een Azure-database voor MySQL-server maken

Maak een Azure Database for MySQL met de opdracht az mysql server create. Vergeet niet dat de naam van uw MySQL-server uniek moet zijn in Azure, dus vervang de tijdelijke aanduiding tussen vierkante haken door uw eigen unieke waarde:

# Create a server in the resource group 

az mysql server create \
--name mydemoserver \
--resource-group myResourcegroup \
--location westeurope \
--admin-user mylogin \
--admin-password <server_admin_password> \
--sku-name GP_Gen5_2

Notitie

In sommige gevallen bevinden de Azure Database for MySQL en het VNet-subnet zich in verschillende abonnementen. In deze gevallen moet u de volgende configuraties controleren:

Privé-eindpunt maken

Maak een privé-eindpunt voor de MySQL-server in uw virtuele netwerk:

az network private-endpoint create \  
    --name myPrivateEndpoint \  
    --resource-group myResourceGroup \  
    --vnet-name myVirtualNetwork  \  
    --subnet mySubnet \  
    --private-connection-resource-id $(az resource show -g myResourcegroup -n mydemoserver --resource-type "Microsoft.DBforMySQL/servers" --query "id" -o tsv) \    
    --group-id mysqlServer \  
    --connection-name myConnection  

Privé-DNS-zone configureren

Maak een Privé-DNS Zone for MySQL-serverdomein en maak een koppelingskoppeling met het virtuele netwerk.

az network private-dns zone create --resource-group myResourceGroup \ 
   --name  "privatelink.mysql.database.azure.com" 
az network private-dns link vnet create --resource-group myResourceGroup \ 
   --zone-name  "privatelink.mysql.database.azure.com"\ 
   --name MyDNSLink \ 
   --virtual-network myVirtualNetwork \ 
   --registration-enabled false 

# Query for the network interface ID  
$networkInterfaceId=$(az network private-endpoint show --name myPrivateEndpoint --resource-group myResourceGroup --query 'networkInterfaces[0].id' -o tsv)

az resource show --ids $networkInterfaceId --api-version 2019-04-01 -o json 
# Copy the content for privateIPAddress and FQDN matching the Azure database for MySQL name 

# Create DNS records 
az network private-dns record-set a create --name myserver --zone-name privatelink.mysql.database.azure.com --resource-group myResourceGroup  
az network private-dns record-set a add-record --record-set-name myserver --zone-name privatelink.mysql.database.azure.com --resource-group myResourceGroup -a <Private IP Address>

Notitie

De FQDN in de DNS-instelling van de klant wordt niet omgezet naar het geconfigureerde particuliere IP-adres. U moet een DNS-zone instellen voor de geconfigureerde FQDN, zoals hier wordt weergegeven.

Verbinding maken met een virtuele machine via internet

Maak als volgt verbinding met de VM myVm van Internet:

  1. Voer in de zoekbalk van de portal myVm in.

  2. Selecteer de knop Verbinding maken. Na het selecteren van de knop Verbinden wordt Verbinden met virtuele machine geopend.

  3. Selecteer RDP-bestand downloaden. Azure maakt een Remote Desktop Protocol-bestand (.rdp) en downloadt het bestand naar uw computer.

  4. Open het downloaded.rdp-bestand.

    1. Selecteer Verbinding maken wanneer hierom wordt gevraagd.

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

      Notitie

      Mogelijk moet u Meer opties>Een ander account gebruiken selecteren om de referenties op te geven die u hebt ingevoerd tijdens het maken van de VM.

  5. Selecteer OK.

  6. Er wordt mogelijk een certificaatwaarschuwing weergegeven tijdens het aanmelden. Als er een certificaatwaarschuwing wordt weergegeven, selecteert u Ja of Doorgaan.

  7. Wanneer het VM-bureaublad wordt weergegeven, minimaliseert u het om terug te gaan naar het lokale bureaublad.

Toegang tot de MySQL-server privé vanaf de VM

  1. Open PowerShell in het extern bureaublad van myVM.

  2. Voer nslookup mydemomysqlserver.privatelink.mysql.database.azure.com in.

    U ontvangt een bericht dat er ongeveer als volgt uitziet:

    Server:  UnKnown
    Address:  168.63.129.16
    Non-authoritative answer:
    Name:    mydemomysqlserver.privatelink.mysql.database.azure.com
    Address:  10.1.3.4
    
  3. Test de private link-verbinding voor de MySQL-server met behulp van een beschikbare client. In het onderstaande voorbeeld heb ik MySQL Workbench gebruikt om de bewerking uit te voeren.

  4. Voer in Nieuwe verbinding deze gegevens in of selecteer deze:

    Instelling Weergegeven als
    Naam verbinding Selecteer de verbindingsnaam van uw keuze.
    Hostnaam Selecteer mydemoserver.privatelink.mysql.database.azure.com
    Username Voer de gebruikersnaam in als username@servername die wordt opgegeven tijdens het maken van de MySQL-server.
    Password Voer een wachtwoord in dat is opgegeven tijdens het maken van de MySQL-server.
  5. Selecteer Verbinding maken.

  6. Blader in het menu aan de linkerkant door databases.

  7. (Optioneel) Gegevens maken of opvragen uit de MySQL-database.

  8. Sluit de externe bureaubladverbinding met myVm.

Resources opschonen

U kunt az group delete gebruiken om de resourcegroep en alle resources die deze bevat te verwijderen, als deze niet meer nodig zijn:

az group delete --name myResourceGroup --yes 

Volgende stappen