Gerenciando muitas entradas no Route53

6

Usamos o Amazon Route53 como o DNS primário da minha empresa. À medida que crescemos usando vários serviços de diferentes provedores, cada um deles solicitou algum tipo de entrada de DNS para verificar nosso domínio e / ou usar seus serviços. A partir de agora, temos cerca de 60 entradas em nossa zona hospedada primária.

Está começando a ficar confuso, pois a Amazon não permite nem mesmo um campo de descrição simples para cada entrada, para que saibamos o que isso significa sem precisar analisá-lo.

Existe uma maneira melhor / diferente de gerenciar isso?

    
por tucaz 26.03.2014 / 01:56

2 respostas

4

Recomendação

Comece a aprender a usar e usar a linha de comando da AWS, combinada com sua própria solução caseira para gerenciar suas entradas de DNS.

Pessoalmente, tenho uma solução que reúne vários arquivos de texto (cada um com identificação do cliente e comentários contidos) em um arquivo, que é enviado para o DNS autoritativo sempre que houver uma atualização.

Mais informações sobre o AWS Route53 CLI aqui

Exemplo de solução

1) Obtenha o cli53

2) Crie uma pasta e preencha-a com o arquivo zonefile.txt compatível com BIND para cada cliente.

C:\zones\customer.com.txt
C:\zones\example.org.txt
C:\zones\loyal-customer.net.au.txt

3) Escreva um script que extraia cada arquivo e carregue-o no AWS Route53:

Powershell

$zonefileDir = "C:\zones\"

foreach ($file in (ls $zonefileDir -r))
{
    # Remove the '.txt' from each file, so we have the proper domain name
    $zone = ($file.name -replace "\.txt$","")

    # import the BIND zonefile and replace any existing records
    cli53 import $zone --file $file --replace --wait
}

Bash

directory="/etc/bind/zones/"
for file in 'ls $directory'
do
    zone='echo $file | grep -Po "^.*?(?=\.extension)"'
    cli53 import $zone --file $directory$file --replace --wait
done

4) Sempre que você precisar fazer alterações, você faz isso dentro de seus arquivos de zona do cliente separados, que você também pode separar com diretórios.

5) Sincronize todos os seus arquivos de zona no Git para poder acompanhar as alterações em cada arquivo de zona, caso precise reverter.

    
por 26.03.2014 / 14:02
1

Não conheço nenhuma solução pronta para usar para fazer isso.

Dito isto, homebrewing um sistema de gerenciamento Route53 deve ser bastante simples - algumas tabelas mysql e um script de sincronização em uma linguagem de sua escolha é realmente tudo o que seria necessário.

    
por 26.03.2014 / 03:35