Lösa privata domännamn i Azure SQL Managed Instance
Gäller för:Azure SQL Managed Instance
I den här artikeln får du lära dig hur Azure SQL Managed Instance löser privata domännamn.
Översikt
I vissa situationer är det nödvändigt att SQL Server-databasmotorn löser domännamn som inte finns i offentliga DNS-poster. Följande scenarier kommer till exempel sannolikt att omfatta privata domännamn:
- Skicka e-post med hjälp av databas-e-post
- Åtkomst till fjärrdatakällor med hjälp av länkade servrar
- Replikera data till molnet med hjälp av länken för hanterad instans.
Azure SQL Managed Instance distribueras i ett virtuellt Azure-nätverk och använder azure-tillhandahållen namnmatchning som standard för att matcha Internetadresser.
Om du vill ändra standardbeteendet för namnmatchning och aktivera matchning av privata domännamn kan du:
- Använda privata DNS-zoner i Azure: Vad är Azure Privat DNS?
- Använd en anpassad DNS-server: Namnmatchning för resurser i virtuella Azure-nätverk
Viktigt!
När du ändrar ett virtuellt nätverks DNS-server från Azure till anpassad eller vice versa måste ÄVEN SQL Managed Instances i det virtuella nätverket meddelas om ändringen. Detta beskrivs i avsnittet Uppdatera SQL Managed Instances.
Du behöver inte göra detta när du bara kopplar eller uppdaterar privata Dns-zoner i Azure till de hanterade instansernas virtuella nätverk. Dessa ändringar sprids automatiskt till de hanterade instanserna.
Att tänka på
- Var försiktig så att du inte åsidosätter eller inaktiverar lösningen för domännamn som Azure SQL Managed Instance använder internt, enligt listan i Nätverksbegränsningar. Konfigurera alltid din anpassade DNS-server så att den kan matcha offentliga domännamn.
- Använd alltid ett fullständigt domännamn (FQDN) för de tjänster som du vill att Azure SQL Managed Instance ska matcha, till exempel din e-postserver eller en lokal SQL Server-instans. Använd FQDN även om tjänsterna finns i din privata DNS-zon. Använd till exempel
smtp.contoso.com
. Om du skapar en länkad server eller konfigurerar replikering som refererar till virtuella SQL Server-datorer i samma virtuella nätverk krävs också ett FQDN och ett standard-DNS-suffix. till exempelSQLVM.internal.cloudapp.net
.
Uppdatera SQL Managed Instances
Om DNS-serverinställningen ändras i ett virtuellt nätverk med befintliga SQL-hanterade instanser måste det virtuella kluster som är värd för dessa instanser och de underliggande datorgrupperna synkronisera med ändringarna i DNS-konfigurationen. Uppdatering av ett virtuellt kluster påverkar alla SQL Managed Instances som finns i det.
När du uppdaterar DNS-serverinställningarna för ett virtuellt kluster blir de anpassade DNS-serverns IP-adresser som anges i det virtuella nätverket de önskade DNS-servrarna för instanserna i klustret. Instanserna behåller fortfarande Azures DNS-matchningsadress som en säkerhetskopia, men löser nu adresser med hjälp av de anpassade DNS-servrarna först.
Använd Azure-portalen för att uppdatera DNS-serverinställningarna för ett befintligt virtuellt kluster.
- Öppna Azure Portal.
- Öppna resursgruppen med en hanterad instans i det undernät som du konfigurerar och välj den SQL-hanterade instans som du vill uppdatera DNS-serverinställningarna för.
- I Översikt väljer du det virtuella kluster som instansen tillhör.
- Välj Synkronisera DNS-serverinställningar för att uppdatera klustret.
Kontrollera konfigurationen
När du har uppdaterat DNS-serverinställningarna i det virtuella klustret kan du kontrollera att det nu gäller för de hanterade instanserna i klustret. Ett sätt att göra det är att skapa och köra ett SQL Server Agent-jobb som matar ut en lista över DNS-servrar som för närvarande är konfigurerade i nätverksgränssnittet.
Så här visar du listan över DNS-servrar som konfigurerats i den hanterade instansens nätverksgränssnitt:
- Starta SQL Server Management Studio.
- Anslut till en hanterad instans i klustret som du uppdaterade DNS-inställningarna för.
- I Object Explorer expanderar du SQL Server Agent.
- Högerklicka på Jobb och välj Nytt jobb....
- I Allmänt skriver du namnet på jobbet, till exempel "Verifiera DNS-inställningar".
- I Steg väljer du Ny....
- Skriv namnet på steget; till exempel "kör".
- Ange Typ till PowerShell.
- I Kommandot klistrar du in följande kommando:
Get-DnsClientServerAddress
- Välj OK och sedan OK för att stänga båda dialogrutorna.
- Högerklicka på jobbet du skapade i Object Explorer och välj Starta jobb i Steg.... Jobbet körs.
- När jobbet är klart högerklickar du på det igen och väljer Visa historik.
- I Sammanfattning av loggfil expanderar du jobbet och väljer det första och enda steget under det.
- I Markerad radinformation:granskar du utdata för kommandot och bekräftar att det innehåller DNS-serverns IP-adress(es).
Behörigheter
En användare som synkroniserar DNS-serverkonfigurationer i ett virtuellt nätverk:
- Bör vara medlem i rollen Prenumerationsdeltagare, eller
- Ha en anpassad roll med behörigheten
Microsoft.Sql/virtualClusters/updateManagedInstanceDnsServers/action
.
Nästa steg
- En översikt finns i Vad är Azure SQL Managed Instance?
- Information om hur hanterad instans löser och dirigerar trafik finns i Anslut ivitetsarkitektur för Azure SQL Managed Instance.
- Mer information finns i Arkitektur för virtuella SQL Managed Instance-kluster
- Mer information om DNS-matchning i virtuella Azure-nätverk finns i Namnmatchning för resurser i virtuella Azure-nätverk.
- En självstudiekurs som visar hur du skapar en ny hanterad instans finns i Skapa en hanterad instans.
- Information om hur du konfigurerar ett virtuellt nätverk för en hanterad instans finns i Anslut ivitetsarkitektur.