Tutorial: configurare un dominio utilizzando Cloud DNS


Questo tutorial fornisce una procedura dettagliata per la registrazione un dominio, configurando un server web di esempio e utilizzando Cloud DNS per puntare 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 seguenti attività:

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

Costi

La registrazione di un nome di dominio comporta un costo. Per informazioni sui 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. Abilitare l'API Compute Engine.

    Abilitare 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 dominio che hai creato nella sezione Prima iniziale. Per istruzioni su come registrare un dominio utilizzando Cloud Domains, consulta Registrare un dominio.

Creare un'istanza di una macchina virtuale

Console

Per creare un'istanza di una 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 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. Dalla finestra SSH, utilizza il gestore di pacchetti Debian per installare apache2 pacchetto.

     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 comando 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 collegarti perché il server restituirà un errore Connection Refused.

Ora dovresti visualizzare la pagina Hello World!.

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

Configurare il dominio utilizzando Cloud DNS

Se stai eseguendo la migrazione da un provider esistente, puoi importare le zone esistenti a Cloud DNS. Per le istruzioni, vedi Esportare i dati dalla tua attuale configurazione dell'utente. 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 dominio nome 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 di hosting, devi aggiungere un record A alla tua 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, segui questi passaggi:

  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 Risorse Terraform per creare un'istanza di una macchina virtuale (VM), server web Apache, configura il dominio utilizzando Cloud DNS e aggiorna server dei nomi.

Puoi anche utilizzare il modulo Terraform per configurare Cloud DNS con zone pubbliche, private, di peering o di inoltro. 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 che i server dei nomi vengono aggiornato, vai al tuo nome di dominio (ad esempio, example.com). Il dominio deve risolversi nel tuo indirizzo IP e puntare a Compute Engine VM che mostra la pagina Hello World! in cui hai creato 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 andate a buon fine, esegui il seguente 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 è il tuo all'indirizzo IP del 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 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 accanto al nome della zona my-new-zone.

  6. Vai alla pagina Istanze VM.

    Vai a Istanze VM

  7. Seleziona l'istanza che vuoi eliminare.

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

Passaggi successivi