Tutorial: configurare un dominio utilizzando Cloud DNS


Questo tutorial fornisce una procedura dettagliata per la registrazione di un dominio, la configurazione di un server web di esempio e l'utilizzo di Cloud DNS per indirizzare l'URL del dominio al server.

Se non hai mai utilizzato Terraform per Google Cloud, consulta la guida introduttiva a Terraform.

Obiettivi

Questo tutorial mostra come completare le attività seguenti:

  • Registra un nome di dominio utilizzando Cloud Domains
  • Crea un'istanza di macchina virtuale (VM) Compute Engine
  • Esegui un server web Apache di base
  • Configura il dominio utilizzando Cloud DNS
  • Aggiorna i server dei nomi
  • Verificare la configurazione

Costi

La registrazione di un nome di dominio prevede dei costi. Per i prezzi di Cloud Domains, consulta i prezzi di Cloud Domains.

Prima di iniziare

  1. Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
  2. Nella pagina del selettore di progetti della console Google Cloud, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

  3. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  4. Nella pagina del selettore di progetti della console Google Cloud, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

  5. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  6. Abilitare l'API Compute Engine.

    Abilita l'API

Registra un nome di dominio

Se hai già un dominio registrato, salta questa sezione.

Puoi utilizzare Cloud Domains per registrare un dominio. Cloud Domains ti consente di utilizzare per il tuo dominio lo stesso account di fatturazione creato nella sezione Prima di iniziare. Per istruzioni su come registrare un dominio utilizzando Cloud Domains, vedi Registrare un dominio.

Creare un'istanza di una macchina virtuale

Console

Per creare un'istanza di macchina virtuale (VM) Linux in Compute Engine, segui queste istruzioni:

  1. Nella console Google Cloud, vai alla pagina Crea un'istanza.

    Vai a Crea un'istanza

  2. Nella sezione Disco di avvio, fai clic su Cambia per iniziare a configurare il disco di avvio.
  3. Nella scheda Public images, scegli Debian version 9.
  4. Fai clic su Seleziona.
  5. Nella sezione Firewall, seleziona Consenti traffico HTTP.
  6. Per creare la VM, fai clic su Crea.

Attendi un po' di tempo per l'avvio dell'istanza. Quando l'istanza è pronta, viene elencata nella pagina Istanze VM con un'icona di stato verde.

Connettiti all'istanza

  1. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai a Istanze VM

  2. Nell'elenco delle istanze di macchine virtuali, fai clic su SSH nella riga dell'istanza a cui vuoi connetterti.

    Pulsante SSH accanto al nome dell'istanza.

A questo punto hai una finestra del terminale per interagire con l'istanza Linux.

Per maggiori dettagli, consulta la guida rapida all'utilizzo di una VM Linux.

Esegui un server web Apache di base

In questa sezione eseguirai e testerai un server web Apache.

  1. Nella finestra SSH, utilizza il gestore di pacchetti Debian per installare il pacchetto apache2.

     sudo apt-get update && sudo apt-get install apache2 -y
     

    Dopo l'installazione di Apache, il sistema operativo avvia automaticamente il server Apache.

  2. Sovrascrivi la pagina web predefinita per il server web Apache utilizzando il seguente comando:

     echo "<!doctype html><html><body><h1>Hello World!</h1></body></html>" 
    | sudo tee /var/www/html/index.html

testa il server

Verifica che l'istanza stia gestendo il traffico sul suo indirizzo IP esterno.

Console

  1. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai a Istanze VM

  2. Nella colonna IP esterno, copia l'indirizzo IP esterno dell'istanza.
  3. In un browser, vai a http://[EXTERNAL_IP]. Non utilizzare https per connetterti perché il server restituirà un errore Connection Refused.

A questo punto dovresti visualizzare la pagina Hello World!.

Per ulteriori dettagli, consulta Esecuzione di un server web Apache di base.

Configura il dominio utilizzando Cloud DNS

Se stai eseguendo la migrazione da un provider esistente, puoi importare le zone esistenti in Cloud DNS. Per le istruzioni, consulta l'articolo Esportare la configurazione DNS dal provider esistente. Altrimenti, segui questi passaggi per creare una nuova zona pubblica.

Console

  1. Nella console Google Cloud, vai alla pagina Crea una zona DNS.

    Vai a Crea una zona DNS

  2. In Tipo di zona, seleziona Pubblica.

  3. In Nome zona, inserisci my-new-zone.

  4. In Nome DNS, inserisci un suffisso del nome DNS per la zona utilizzando un nome di dominio registrato (ad esempio example.com).

  5. Per DNSSEC, assicurati che sia selezionata l'impostazione Off.

  6. Fai clic su Crea per creare una zona compilata con i record NS e SOA.

  7. Per indirizzare il tuo nome di dominio registrato all'indirizzo IP del server host, devi aggiungere un record A alla zona:

    1. Nella pagina Dettagli zona, fai clic su Aggiungi standard.
    2. Seleziona A dal menu Tipo di record risorsa.
    3. In Indirizzo IPv4, inserisci l'indirizzo IP esterno dell'istanza.
    4. Fai clic su Crea per creare il record A per la tua zona.
  8. (Facoltativo) Aggiungi un record CNAME per tenere conto di un prefisso al tuo nome di dominio (ad esempio www.):

    1. Fai clic su Aggiungi standard.
    2. Nel campo Nome DNS, aggiungi il prefisso www per il dominio.
    3. In Tipo di record risorsa, scegli CNAME.
    4. In Nome canonico, inserisci il nome di dominio, seguito da un punto (ad esempio, example.com.).
    5. Fai clic su Crea.

Aggiorna i server dei nomi

Per aggiornare i server dei nomi in Cloud Domains:

  1. Nella console Google Cloud, vai alla pagina Cloud Domains.

    Vai a Cloud Domains

  2. Fai clic sul nome di dominio che vuoi modificare. Puoi anche fare clic su Altro accanto al nome di dominio per visualizzare il menu di modifica.

  3. Per modificare i dettagli DNS, fai clic su Modifica dettagli DNS.

  4. Seleziona Utilizza Cloud DNS (consigliato).

  5. Nell'elenco Zona Cloud DNS, seleziona my-new-zone.

  6. Fai clic su Salva.

Terraform

Puoi utilizzare le risorse Terraform per creare un'istanza di una macchina virtuale (VM), eseguire un server web Apache, configurare il tuo dominio utilizzando Cloud DNS e aggiornare i server dei nomi.

Puoi anche utilizzare il modulo Terraform per configurare Cloud DNS con zone pubbliche, private, di peering o di forwarding. Per saperne di più sulle zone, consulta la panoramica delle zone DNS.

# to setup a web-server

resource "random_id" "rnd" {
  byte_length = 4
}

resource "google_compute_instance" "default" {
  name         = "dns-compute-instance"
  machine_type = "g1-small"
  zone         = "us-central1-b"

  boot_disk {
    initialize_params {
      image = "debian-cloud/debian-11"
    }
  }

  network_interface {
    network = "default"
    access_config {
      // Ephemeral public IP
    }
  }
  metadata_startup_script = <<-EOF
  sudo apt-get update && \
  sudo apt-get install apache2 -y && \
  echo "<!doctype html><html><body><h1>Hello World!</h1></body></html>" > /var/www/html/index.html
  EOF
}

# to allow http traffic
resource "google_compute_firewall" "default" {
  name    = "allow-http-traffic"
  network = "default"
  allow {
    ports    = ["80"]
    protocol = "tcp"
  }
  source_ranges = ["0.0.0.0/0"]
}

# to create a DNS zone
resource "google_dns_managed_zone" "default" {
  name          = "example-zone-googlecloudexample"
  dns_name      = "example-${random_id.rnd.hex}.com."
  description   = "Example DNS zone"
  force_destroy = "true"
}

# to register web-server's ip address in DNS
resource "google_dns_record_set" "default" {
  name         = google_dns_managed_zone.default.dns_name
  managed_zone = google_dns_managed_zone.default.name
  type         = "A"
  ttl          = 300
  rrdatas = [
    google_compute_instance.default.network_interface[0].access_config[0].nat_ip
  ]
}

Verificare la configurazione

Per verificare il funzionamento della configurazione, dopo aver aggiornato i server dei nomi, vai al tuo nome di dominio (ad esempio, example.com). Il dominio dovrebbe corrispondere al tuo indirizzo IP e puntare alla VM Compute Engine in cui è visualizzata la pagina Hello World! che hai creato durante Esegui un server web Apache di base.

Per verificare che la configurazione sia corretta, puoi anche eseguire il comando dig +trace example.com nella finestra del terminale. Sostituisci example.com con il tuo nome di dominio registrato.

dig +trace example.com

La fine dell'output deve includere quanto segue. IP_ADDRESS è l'indirizzo IP del tuo server web.

example.com.    300 IN  A   IP_ADDRESS
;; Received 62 bytes from 216.239.34.109#53(ns-cloud-d2.googledomains.com) in 62 ms

Per verificare che le modifiche siano andate a buon fine, esegui questo comando:

example.com IN NS <your Cloud DNS name servers>

Dopo aver atteso il completamento della propagazione DNS, puoi anche eseguire il comando nslookup per verificare la configurazione:

nslookup example.com

L'output dovrebbe includere quanto segue. IP_ADDRESS è l'indirizzo IP del tuo server web.

Server:     127.0.0.1
Address:    127.0.0.1#53

Non-authoritative answer:
Name:   example.com
Address: IP_ADDRESS

Esegui la pulizia

Console

  1. Nella console Google Cloud, vai alla pagina Zone Cloud DNS.

    Vai a Zone Cloud DNS

  2. Fai clic sul nome di una zona (ad esempio my-new-zone) per accedere alla pagina Dettagli zona.

  3. Seleziona i record A e CNAME che hai creato.

  4. Fai clic su Elimina set di record.

  5. Per eliminare la zona, fai clic su Elimina zona per il nome della zona my-new-zone.

  6. Vai alla pagina Istanze VM.

    Vai a Istanze VM

  7. Seleziona l'istanza che vuoi eliminare.

  8. Nel menu Altro nella riga dell'istanza, fai clic su Elimina.

Passaggi successivi