Dela via


Skapa och hantera Private Link för Azure Database for MySQL med CLI

GÄLLER FÖR: Azure Database for MySQL – enskild server

Viktigt!

Azure Database for MySQL – enskild server är på väg att dras tillbaka. Vi rekommenderar starkt att du uppgraderar till en flexibel Azure Database for MySQL-server. Mer information om hur du migrerar till en flexibel Azure Database for MySQL-server finns i Vad händer med Azure Database for MySQL – enskild server?

En privat slutpunkt är den grundläggande byggstenen för privat länk i Azure. Det gör det möjligt för Azure-resurser, till exempel virtuella datorer, att kommunicera privat med privata länkresurser. I den här artikeln får du lära dig hur du använder Azure CLI för att skapa en virtuell dator i ett virtuellt Azure-nätverk och en Azure Database for MySQL-server med en privat Azure-slutpunkt.

Kommentar

Funktionen private link är endast tillgänglig för Azure Database for MySQL-servrar på prisnivåerna Generell användning eller Minnesoptimerad. Kontrollera att databasservern finns på någon av dessa prisnivåer.

Förutsättningar

  • Den här artikeln kräver version 2.0.28 eller senare av Azure CLI. Om du använder Azure Cloud Shell är den senaste versionen redan installerad.

Skapa en resursgrupp

Innan du kan skapa en resurs måste du skapa en resursgrupp som värd för det virtuella nätverket. Skapa en resursgrupp med az group create. I det här exemplet skapas en resursgrupp med namnet myResourceGroup på platsen westeurope:

az group create --name myResourceGroup --location westeurope

Skapa ett virtuellt nätverk

Skapa ett virtuellt nätverk med az network vnet create. Det här exemplet skapar ett virtuellt standardnätverk med namnet myVirtualNetwork med ett undernät med namnet mySubnet:

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

Inaktivera principer för privata undernätsslutpunkter

Azure distribuerar resurser till ett undernät i ett virtuellt nätverk, så du måste skapa eller uppdatera undernätet för att inaktivera nätverksprinciper för privata slutpunkter. Uppdatera en undernätskonfiguration med namnet mySubnet med az network vnet subnet update:

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

Skapa den virtuella datorn

Skapa en virtuell dator med az vm create. När du uppmanas till det anger du ett lösenord som ska användas som inloggningsuppgifter för den virtuella datorn. I det här exemplet skapas en virtuell dator med namnet myVm:

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

Kommentar

den virtuella datorns offentliga IP-adress Du använder den här adressen för att ansluta till den virtuella datorn från Internet i nästa steg.

Skapa en Azure Database för MySQL-server

Skapa en Azure Database for MySQL med kommandot az mysql server create. Kom ihåg att namnet på mySQL-servern måste vara unikt i Hela Azure, så ersätt platshållarvärdet inom hakparenteser med ditt eget unika värde:

# 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

Kommentar

I vissa fall finns Azure Database for MySQL och VNet-undernätet i olika prenumerationer. I dessa fall måste du se till att följande konfigurationer:

  • Kontrollera att både prenumerationen har Microsoft.DBforMySQL-resursprovidern registrerad. Mer information finns i resource-manager-registration

Skapa den privata slutpunkten

Skapa en privat slutpunkt för MySQL-servern i ditt virtuella nätverk:

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  

Konfigurera den privata DNS-zonen

Skapa en privat DNS-zon för MySQL-serverdomänen och skapa en kopplingslänk till det virtuella nätverket.

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>

Kommentar

Det fullständiga domännamnet i DNS-inställningen för kunden matchar inte den privata IP-adressen som har konfigurerats. Du måste konfigurera en DNS-zon för det konfigurerade FQDN som visas här.

Ansluta till en virtuell dator från Internet

Anslut till den virtuella datorn myVm från Internet på följande sätt:

  1. I portalens sökfält anger du myVm.

  2. Välj knappen Anslut. När du har valt knappen Anslut öppnas Anslut till den virtuella datorn.

  3. Välj Hämta RDP-fil. Azure skapar en .rdp-fil (Remote Desktop Protocol) och laddar ned den till datorn.

  4. Öppna filen downloaded.rdp .

    1. Välj Anslut om du uppmanas att göra det.

    2. Ange det användarnamn och lösenord som du angav när du skapade den virtuella datorn.

      Kommentar

      Du kan behöva välja Fler alternativ>Använd ett annat konto för att ange autentiseringsuppgifterna du angav när du skapade den virtuella datorn.

  5. Välj OK.

  6. Du kan få en certifikatvarning under inloggningen. Välj Ja eller Fortsätt om du får en certifikatvarning.

  7. När virtuella datorns skrivbord visas kan du minimera det att gå tillbaka till din lokala dator.

Få åtkomst till MySQL-servern privat från den virtuella datorn

  1. Öppna PowerShell på fjärrskrivbordet i myVM.

  2. Ange nslookup mydemomysqlserver.privatelink.mysql.database.azure.com.

    Du får ett meddelande som liknar detta:

    Server:  UnKnown
    Address:  168.63.129.16
    Non-authoritative answer:
    Name:    mydemomysqlserver.privatelink.mysql.database.azure.com
    Address:  10.1.3.4
    
  3. Testa den privata länkanslutningen för MySQL-servern med valfri tillgänglig klient. I exemplet nedan har jag använt MySQL Workbench för att utföra åtgärden.

  4. I Ny anslutning anger eller väljer du den här informationen:

    Inställning Värde
    Anslutningsnamn Välj önskat anslutningsnamn.
    Värdnamn Välj mydemoserver.privatelink.mysql.database.azure.com
    Username Ange användarnamnet som username@servername som anges när MySQL-servern skapas.
    Lösenord Ange ett lösenord som angavs när MySQL-servern skapades.
  5. Välj Anslut.

  6. Bläddra bland databaser från den vänstra menyn.

  7. (Valfritt) Skapa eller fråga efter information från MySQL-databasen.

  8. Stäng fjärrskrivbordsanslutningen till myVm.

Rensa resurser

När de inte behövs längre kan du använda az group delete för att ta bort resursgruppen och alla resurser som den innehåller:

az group delete --name myResourceGroup --yes 

Nästa steg