Dela via


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

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

I den här artikeln får du lära dig hur du använder Azure CLI för att skapa en privat slutpunkt för åtkomst till Azure Database for MySQL – flexibel server från en virtuell dator i ett virtuellt nätverk.

Starta Azure Cloud Shell

Azure Cloud Shell är ett kostnadsfritt interaktivt gränssnitt som du kan använda för att köra stegen i den här artikeln. Den har Standard Azure-verktyg förinstallerade och konfigurerade för användning med ditt konto.

Öppna Cloud Shell genom att välja Prova i det övre högra hörnet i ett kodblock. Du kan också öppna Cloud Shell på en separat webbläsarflik genom att gå till https://shell.azure.com/bash. Välj Kopiera för att kopiera kodblocken, klistra in det i Cloud Shell och välj Retur för att köra det.

Om du föredrar att installera och använda CLI lokalt kräver den här snabbstarten Azure CLI version 2.0 eller senare. Kör az --version för att hitta versionen. Se Installera Azure CLI om du behöver installera eller uppgradera.

Förutsättningar

Du måste logga in på ditt konto med kommandot az login . Observera ID-egenskapen, som refererar till Prenumerations-ID för ditt Azure-konto.

az login

Välj den specifika prenumerationen under ditt konto med kommandot az account set . I kommandot noterar du ID-värdet från az login-utdata som ska användas som värde för prenumerationsargumentet . Om du har flera prenumerationer ska du välja lämplig prenumeration där resursen ska debiteras. Använd az account list för att hämta alla dina prenumerationer.

az account set --subscription <subscription id>

Skapa en resursgrupp

Innan du skapar 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

Registrera den virtuella datorns offentliga IP-adress när den behövs för att ansluta från Internet i nästa steg.

Skapa Azure Database for MySQL– flexibel serverinstans med offentlig åtkomst i resursgruppen

Skapa en flexibel Azure Database for MySQL-serverinstans med offentlig åtkomst och lägg till klientens IP-adress för att komma åt den.

az mysql flexible-server create \
  --name mydemoserver \
  --resource-group myResourcegroup \
  --location westeurope \
  --admin-user mylogin \
  --admin-password <server_admin_password> \
  --public-access <my_client_ip>

Kommentar

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

  • Kontrollera att båda prenumerationerna har resursprovidern Microsoft.DBforMySQL/flexibleServer registrerad. Mer information finns i resource-manager-registration.

Skapa den privata slutpunkten

Skapa en privat slutpunkt för Azure Database for MySQL – flexibel server 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/flexibleServers" --query "id" -o tsv) \
    --group-id mysqlServer \
    --connection-name myConnection \
    --location location

Konfigurera den privata DNS-zonen

Skapa en privat DNS-zon för Azure Database for MySQL– flexibel serverdomän 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 MySQL flexible server 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 kundens DNS-inställning löser inte den privata IP-adress som har konfigurerats. Du måste konfigurera en DNS-zon för det konfigurerade FQDN som visashä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.

. Ange det användarnamn och lösenord som du angav när du skapade den virtuella datorn. > [! OBS! > Du kan behöva välja Fler alternativ Använd ett annat konto för att ange de autentiseringsuppgifter som du angav när du skapade den virtuella datorn.

  1. Välj OK.

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

  3. När det virtuella datorskrivbordet visas minimerar du det så att det återgår till det lokala skrivbordet.

Få åtkomst till Azure Database for MySQL– flexibel serverinstans 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 den flexibla Azure Database for MySQL-serverinstansen med valfri tillgänglig klient. I följande exempel används 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 angavs när azure database for MySQL– flexibel serverinstans skapades.
    Lösenord Ange ett lösenord som angavs när Azure Database for MySQL– flexibel serverinstans 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 Azure Database for MySQL– flexibel serverdatabas.

  8. Stäng fjärrskrivbordsanslutningen till myVm.

Rensa resurser

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

az group delete --name myResourceGroup --yes

Lista privata länkbara underresurser (groupIds)

az network private-link-resource list --id {PrivateLinkResourceID}  // or -g MyResourceGroup -n MySA --type Microsoft.Storage/storageAccounts

Lista privata slutpunktsanslutningar för en viss resurs

az network private-endpoint-connection list --id {PrivateLinkResourceID}

Godkänna privata slutpunktsanslutningar för en viss resurs

az network private-endpoint-connection approve --id {PrivateEndpointConnectionID}  --description "Approved!"

Avvisa privata slutpunktsanslutningar för en viss resurs

az network private-endpoint-connection reject --id {PrivateEndpointConnectionID}  --description "Rejected!"

Ta bort privata slutpunktsanslutningar på en viss resurs

az network private-endpoint-connection delete --id {PrivateEndpointConnectionID}

Nästa steg

  • Lär dig hur du [konfigurerar en privat länk för en flexibel Azure Database for MySQL-server från Azure-portalen.
  • Lär dig hur du hanterar anslutningar till en flexibel Azure Database for MySQL-server.
  • Lär dig hur du lägger till ytterligare ett krypteringslager i Azure Database for MySQL – flexibel server med hjälp av kundhanterade nycklar.
  • Lär dig hur du konfigurerar och använder Microsoft Entra-autentisering på din flexibla Azure Database for MySQL-serverinstans.