terraform ddns criação de zona reversa

1

Estou tentando atualizar automaticamente o DNS com terraform usando o provedor de DNS. Eu fui bem sucedido com a zona de frente, mas não a zona reversa. Meu entendimento é que o PTR deve ser a parte do host do endereço IP. Eu tentei fornecer isso usando o abaixo (sanitized):

# Configure Kubernetes DNS
provider "dns" {
  update {
    server = "<DNS IP ADDRESS>"
    key_name = "nsadmin."
    key_algorithm = "hmac-md5"
    key_secret = "<SECRET>"
  }
}

# Kubernetes master servers
resource "dns_a_record_set" "forward" {
  count = 2
  zone = "k8s.mydomain.example."
  name = "kubernetes-master${count.index + 1}"
  addresses = [
    "${lookup(var.ipv4_addresses_int1, count.index)}",
  ]
}
resource "dns_ptr_record" "reverse" {
  count = 2
  zone = "0.11.10.in-addr.arpa."
  name = "kubernetes-master${count.index + 1}"
  ptr  = "${element(split(".",lookup(var.ipv4_addresses_int1, count.index)),3)}""
}

Eu recebo um erro: * dns_ptr_record.reverse.0: Erro ao criar registro DNS: "ptr" deve ser um FQDN

O que estou tentando fazer é procurar o endereço IP dessa VM com base no valor da contagem, dividi-la no "." personagem e pegue o terceiro elemento. Executar um plano mostra que isso funcionou, mas aplicá-lo obviamente não:

dns_ptr_record.reverse[0]: Creating...
  name: "" => "kubernetes-master1"
  ptr:  "" => "1"
  ttl:  "" => "3600"
  zone: "" => "0.11.10.in-addr.arpa."

No exemplo da documentação terraform para dns_ptr_record ptr é um nome de domínio, que resultou na minha tentativa de criar entradas na minha zona reversa, como:

example.com.0.11.10.in-addr.arpa

Alguém por favor pode aconselhar a maneira correta de fazer isso?

A documentação é muito vaga e não consigo encontrar nenhum tutorial ou exemplo decente em lugar algum.

    
por anfieldroad 08.03.2018 / 15:05

1 resposta

1

Alterne as variáveis PTR e NAME.

resource "dns_ptr_record" "reverse" {
  count = 2 
  zone = "0.11.10.in-addr.arpa." 
  name = "${element(split(".",lookup(var.ipv4_addresses_int1, count.index)),3)}"
  ptr = "kubernetes-master${count.index + 1}.k8s.example.com."
}
    
por 08.03.2018 / 16:26

Tags