Creazione ed eliminazione di un bind di risoluzione DNS

Crea un bind della risoluzione DNS tra un VPC e un VPC hub DNS in modo che il VPC hub DNS possa risolvere i nomi host del DNS dei gateway VPE (Virtual Private Endpoint) che si trovano sul VPC condiviso dal DNS. Tenere presente che i gateway VPE collegati ai VPC condivisi da DNS devono essere abilitati per il bind della risoluzione (impostazione predefinita).

Prima di iniziare

Prima di creare un bind di risoluzione DNS, esaminare i seguenti requisiti:

È possibile creare un binding di risoluzione DNS tramite console, CLI, API o Terraform.

Creazione di un binding di risoluzione DNS nella console

Per creare un bind della risoluzione DNS nella console IBM Cloud, attieniti alla seguente procedura:

  1. Dal browser, aprire la console IBM Cloud e accedere al proprio account.

  2. Selezionare l' icona Menu del menu di navigazione, quindi fare clic sull'icona Infrastruttura VPC > Rete > VPC.

  3. Fare clic sul VPC (Virtual Private Cloud) in cui si desidera condividere i record DNS con il VPC hub DNS.

  4. Scorri fino alla sezione Impostazioni DNS facoltative, quindi espandi la sezione di bind della risoluzione DNS e fai clic su Crea.

  5. Nel pannello laterale Crea, immettere un nome per il bind della risoluzione.

  6. Immettere il CRN (cloud resource name) del VPC hub DNS oppure utilizzare il menu per selezionare un VPC hub all'interno dello stesso account.

  7. Fare clic su Crea per creare il bind della risoluzione DNS.

    Il VPC con il bind di risoluzione DNS ora mostra una tag DNS-Shared accanto al nome.

Eliminazione di un binding di risoluzione DNS nella console

Per eliminare un bind di risoluzione DNS nella Console IBM Cloud, attieniti alla seguente procedura:

Per eliminare una risoluzione vincolante, è necessario disporre del ruolo IAM DNS Services appropriato (Manager o Amministratore). Inoltre, tenere presente che tutti i collegamenti di risoluzione DNS devono essere eliminati prima di poter eliminare un resolver personalizzato.

  1. Dal browser, aprire la console IBM Cloud e accedere al proprio account.
  2. Selezionare l' icona Menu del menu di navigazione, quindi fare clic sull'icona Infrastruttura VPC > Rete > VPC.
  3. Fare clic sul Virtual Private Cloud in cui si desidera eliminare il bind della risoluzione DNS.
  4. Scorrere fino alla sezione Impostazioni DNS facoltative, quindi espandere la sezione Bind di risoluzione DNS.
  5. Fai clic su Delete. Se è presente più di un bind, fare clic sull'icona Azioni icona Altre azioni, quindi fare clic su Elimina.

Creazione di un bind di risoluzione DNS dalla CLI

Per creare un binding di risoluzione DNS con la CLI, attieniti a questa procedura:

  1. Configura il tuo ambiente CLI.

  2. Accedere al proprio account con la CLI. Dopo aver immesso la password, il sistema richiede l'account e la regione che si desidera utilizzare:

    ibmcloud login --sso
    

Per creare un bind di risoluzione DNS, immettere il comando seguente:

ibmcloud is vpc-dns-resolution-binding-create VPC --target-vpc TARGET_VPC [--name NAME] [--output JSON] [-q, --quiet]

Dove:

VPC

Specifica l'ID o il nome della VPC.

--target-vpc TARGET_VPC

Specifica l'ID o il nome di un'altra VPC a cui associare questa VPC, per la risoluzione DNS.

-name NAME

Specifica il nome di questo binding di risoluzione DNS.

--output JSON

Specifica il formato di uscita; è supportato solo JSON. Uno tra: JSON.

--q, --quiet

Sopprime l'output dettagliato.

Esempi di comando

  • ibmcloud is vpc-dns-resolution-binding-create my-vpc --name my-dns-res-binding --target-vpc my-dns-binding-vpc --output JSON
  • ibmcloud is vpc-dns-resolution-binding-create 72251a2e-d6c5-42b4-97b0-b5f8e8d1f479 --name my-dns-res-binding --target-vpc my-dns-binding-vpc --output JSON

Eliminazione di un bind di risoluzione DNS dalla CLI

Per eliminare uno o più bind di risoluzione con CLI, attenersi alla seguente procedura:

ibmcloud is vpc-dns-resolution-binding-delete VPC (DNS_RESOLUTION_BINDING1 DNS_RESOLUTION_BINDING2 ...) [--output JSON] [-f, --force] [-q, --quiet]

Dove:

VPC
Specifica l'ID o il nome della VPC.
DNS_RESOLUTION_BINDING1
Specifica l'ID o il nome del binding di risoluzione DNS.
DNS_RESOLUTION_BINDING2
Specifica l'ID o il nome del binding di risoluzione DNS.
--output JSON
Specifica il formato di uscita; è supportato solo JSON. Uno tra: JSON.
--f, --force
Forza l'operazione senza conferma.
--q, --quiet
Elimina l'output dettagliato.

Esempio di comando

ibmcloud is vpc-dns-resolution-binding-delete r006-e5b9726b-c975-46bd-b713-c8aea55d51d8 r006-75ccea7b-c705-4b50-934d-2152f9eab4ec --name my-dns-resolution --output JSON

Creazione di un bind di risoluzione DNS con l'API

Per creare un binding di risoluzione con l'API, attenersi alla seguente procedura:

  1. Imposta il tuo Ambiente API.

  2. Memorizzare i seguenti valori nelle variabili da utilizzare nei comandi API:

    export hub_vpc_id=<hub_vpc_id>
    export spoke_vpc_id=<spoke_vpc_id>
    
  3. Per creare un bind di risoluzione DNS, eseguire il seguente comando:

    curl -sX POST "$vpc_api_endpoint/v1/vpcs/$spoke_vpc_id/dns_resolution_bindings?version=$version&generation=2" -H "Authorization: Bearer ${iam_token}" -d '{"vpc": {"id": "'$hub_vpc_id'"}}'
    

Output di esempio:

{
  "created_at": "2023-08-22T23:23:37Z",
  "endpoint_gateways": [],
  "href": "https://us-south.iaas.cloud.ibm.com/v1/vpcs/r006-955c4b01-006f-4630-8a6a-f57e30354974/dns_resolution_bindings/r006-f95df674-74af-47ea-91d9-0aec39972ae7",
  "id": "r006-f95df674-74af-47ea-91d9-0aec39972ae7",
  "lifecycle_state": "pending",
  "name": "my-binding",
  "resource_type": "vpc_dns_resolution_binding",
  "vpc": {
    "crn": "crn:[...]",
    "href": "https://us-south.iaas.cloud.ibm.com/v1/vpcs/r006-c6c9d533-a43b-488c-a4f5-b532f4ddd3e0",
    "id": "r006-c6c9d533-a43b-488c-a4f5-b532f4ddd3e0",
    "name": "hub-vpc",
    "remote": {},
    "resource_type": "vpc"
  }
}

Eliminazione di un bind di risoluzione DNS con l'API

Per eliminare un bind di risoluzione DNS con l'API, attieniti alla seguente procedura:

  1. Imposta il tuo Ambiente API.

  2. Memorizzare i seguenti valori nelle variabili da utilizzare nei comandi API:

    export dns_binding_id=<spoke_vpc_dns_binding_id>
    
  3. Per eliminare un bind di risoluzione DNS, esegui questo comando:

    curl -sX DELETE "$vpc_api_endpoint/v1/vpcs/$spoke_vpc_id/dns_resolution_bindings/$dns_binding_id?version=$version&generation=2" -H "Authorization: Bearer ${iam_token}"
    

Creazione di un bind di risoluzione DNS con Terraform

Puoi utilizzare Terraform per creare un bind della risoluzione DNS.

Per utilizzare Terraform, scarica la CLI Terraform e configura il IBM Cloud plug-in Provider. Per ulteriori informazioni, vedi Introduzione a Terraform.

I servizi dell'infrastruttura VPC utilizzano un endpoint specifico regionale, che si rivolge a us-south per impostazione predefinita. Se il tuo VPC viene creato in un'altra regione, assicurati di specificare la regione appropriata nel blocco del provider nel file provider.tf.

Vedi il seguente esempio di destinazione di una regione diversa da quella predefinita us-south.

provider "ibm" {
  region = "eu-de"
}

Per creare un binding di risoluzione DNS:

resource "ibm_is_vpc_dns_resolution_binding" "my_dns_resolution_binding" {
	name = "example-dns"
	vpc_id = "vpc_id"
	vpc {
		id = "<target_vpc_id">
	}
}
resource "ibm_is_vpc_dns_resolution_binding" "my_dns_resolution_binding" {
	name = "example-dns"
	vpc_id = "vpc_id"
	vpc {
		crn = "<target_vpc_crn">
	}
}
resource "ibm_is_vpc_dns_resolution_binding" "my_dns_resolution_binding" {
	name = "example-dns"
	vpc_id = "vpc_id"
	vpc {
		href = "<target_vpc_href">
	}
}

Eliminazione di un bind di risoluzione DNS con Terraform

Per eliminare un binding di risoluzione DNS con Terraform, vedi il seguente esempio:

terraform destroy --target ibm_is_vpc_dns_resolution_binding.my_dns_resolution_binding