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 Inizia a utilizzare Terraform.

Obiettivi

Questo tutorial mostra come completare le seguenti attività:

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

Costi

La registrazione di un nome di dominio è soggetta a costi. Per i prezzi di Cloud Domains, consulta la pagina Prezzi di Cloud Domains.

Prima di iniziare

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Make sure that billing is enabled for your Google Cloud project.

  6. Abilita l'API Compute Engine

    Attiva 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 lo stesso account di fatturazione per il tuo dominio che hai creato nella sezione Prima di iniziare. Per istruzioni su come registrare un dominio utilizzando Cloud Domains, consulta l'articolo 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. In the Google Cloud console, go to the Create an instance page.

    Go to Create an instance

  2. In the Boot disk section, click Change to begin configuring your boot disk.
  3. Nella scheda Public images, scegli Debian GNU/Linux.
  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. In the Google Cloud console, go to the VM instances page.

    Go to VM instances

  2. In the list of virtual machine instances, click SSH in the row of the instance that you want to connect to.

    SSH button next to instance name.

Ora hai una finestra del terminale per interagire con l'istanza Linux.

Per informazioni dettagliate, consulta la guida rapida all'utilizzo di una VM Linux.

Esegui un server web Apache di base

In questa sezione, esegui e testa un server web Apache.

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

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

    Dopo aver installato 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 la tua istanza stia inviando 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 della tua istanza.
  3. In un browser, vai a http://[EXTERNAL_IP]. Non utilizzare https per connetterti perché il server restituirà un errore Connection Refused.

Ora dovresti visualizzare la pagina Hello World!.

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

Configurare il dominio utilizzando Cloud DNS

Se esegui la migrazione da un provider esistente, puoi importare le zone esistenti in Cloud DNS. Per istruzioni, vedi Esportare la configurazione DNS dal provider esistente. In caso contrario, 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. Per Tipo di zona, seleziona Pubblica.

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

  4. Per Nome DNS, inserisci un suffisso del nome DNS per la zona utilizzando un nome di dominio che hai 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 associare il nome del dominio registrato all'indirizzo IP del server di hosting, 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 del 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.

Aggiornare 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 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 che la configurazione funzioni, dopo l'aggiornamento dei server dei nomi, vai al tuo nome di dominio (ad esempio, example.com). Il dominio dovrebbe risolversi nel tuo indirizzo IP e dovrebbe rimandare alla VM di Compute Engine che mostra la pagina Hello World! che hai creato in 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 nome del tuo 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 state apportate correttamente, 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 alle 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