Migrer votre domaine dans Azure
Disponible en preview vous pouvez désormais héberger vos domaines DNS dans Azure. Vous pouvez ainsi gérer vos enregistrements DNS en utilisant les informations d’identification et le support et la facturation déjà disponibles avec les autres services Azure.
Le cout est assez faible:
Premières 25 zones : 0,2109 € par zone et par mois .
Héberger le DNS dans Azure permet de bénéficier de certains avantages:
- Héberger vos DNS avec vos applications
- Très haute disponibilité
- Requêtes DNS rapides
- Mises à jour rapides des enregistrements DNS
- Prend en charge tous les types d’enregistrement DNS courants
Premiere étape : Passer en mode PowerShell pour utiliser les applets de commande ARM
Switch-AzureMode -Name AzureResourceManager
Se connecter au compte Azure
Add-AzureAccount
Créér un groupe de resource et enregistrer fournisseur de ressources Microsoft.Network:

Deuxième étape:
Créér un zone: dans mon cas la zone azure qui sera une zone déléguée de vecteur.it

On ajoute un enregistrement :

On associe à cet enregistrement une adresse IP :

On valide les modification (ce n’est pas explicite) :

Reste a verifier que le serveur DNS est biens dans Azure (ce qui est le cas) :
primary name server = ns1-03.azure-dns.com

Il est possible d’automatiser la migration avec un petit script qui extrait les données du DNS local pour les injecter dans Azure:
################################################################################################
##Script: Export-Zone.ps1
##
##Description: Récupère les enregistrements DNS A et CNAME de la zone donnée et créé un
## script pour Azure DNS
##Created by: Dominique Manas
##Creation Date: Aout 13, 2015
################################################################################################
#parameters
$DNSServer = "127.0.0.1"
$ResourceGroupName = "DNS-Resource"
$Zone1 = "encausse.info"
$Zone2 = ""
$OFS = "`r`n"
#SCRIPT MAIN
clear
Write-Host "Récupération des enregistrements DNS A de la zone $zone"
$DNS_A_records = @(Get-WmiObject -Class MicrosoftDNS_AType -NameSpace Root\MicrosoftDNS -ComputerName $DNSServer -Filter "ContainerName = `'$zone`'")
$DNS_A_records | % {
$Name = $_.OwnerName
$IP = $_.IPAddress
$hostA = "`$rs = New-AzureDnsRecordSet -Name `"$Name`" -RecordType A -ZoneName `"$zone1`" -ResourceGroupName `"$ResourceGroupName`" -Ttl 60" + $OFS
$hostB = "Add-AzureDnsRecordConfig -RecordSet `$rs -Ipv4Address `"$IP`""+ $OFS
$hostC = "Set-AzureDnsRecordSet -RecordSet `$rs"+ $OFS
$hosts += $hostA + $hostB+ $hostC
}
Write-Host "Récupération des enregistrements DNS CNAME de la zone $zone"
$DNS_CNAME_records = @(Get-WmiObject -Class MicrosoftDNS_CNAMEType -NameSpace Root\MicrosoftDNS -ComputerName $DNSServer -Filter "ContainerName = `'$zone`'")
$DNS_CNAME_records | % {
$Name = $_.OwnerName
$PN = $_.PrimaryName.Trim("."," ")
$hostA = "`$rs = New-AzureDnsRecordSet -Name `"$Name`" -RecordType CNAME -ZoneName `"$zone1`" -ResourceGroupName `"$ResourceGroupName`" -Ttl 60" + $OFS
$hostB = "Add-AzureDnsRecordConfig -RecordSet `$rs -CNAME `"$PN`""+ $OFS
$hostC = "Set-AzureDnsRecordSet -RecordSet `$rs"+ $OFS
$hosts += $hostA + $hostB+ $hostC
}
$hosts| out-file ".\addrecord-Azure.ps1"
