Création et suppression d'une liaison de résolution DNS

Créez une liaison de résolution DNS entre un VPC et un VPC concentrateur DNS afin que le VPC concentrateur DNS puisse résoudre les noms d'hôte DNS des passerelles VPE (Virtual Private Endpoint) résidant sur le VPC partagé par DNS. Gardez à l'esprit que les passerelles VPE liées aux VPC partagés par DNS doivent également être activées pour la liaison de résolution (paramètre par défaut).

Avant de commencer

Avant de créer une liaison de résolution DNS, passez en revue les prérequis suivants:

Vous pouvez créer un lien de résolution DNS à l'aide de la console, de l'interface de programmation, de l'API ou de Terraform.

Création d'un lien de résolution DNS dans la console

Pour créer une liaison de résolution DNS dans la console IBM Cloud, procédez comme suit:

  1. Depuis votre navigateur, ouvrez la console IBM Cloud et connectez-vous à votre compte.

  2. Sélectionnez l' icône Menu du menu Navigation, puis cliquez sur l'icône Infrastructure VPC > Réseau > VPC.

  3. Cliquez sur le cloud privé virtuel dans lequel vous souhaitez partager des enregistrements DNS avec le VPC concentrateur DNS.

  4. Accédez à la section Paramètres DNS facultatifs, puis développez la section Liaison de résolution DNS et cliquez sur Créer.

  5. Dans le panneau latéral de création, entrez un nom pour la liaison de résolution.

  6. Entrez le nom de ressource de cloud (CRN) du VPC concentrateur DNS ou utilisez le menu pour sélectionner un VPC concentrateur dans le même compte.

  7. Cliquez sur Créer pour créer la liaison de résolution DNS.

    Le VPC avec la liaison de résolution DNS affiche désormais une balise DNS-Shared en regard de son nom.

Suppression d'un lien de résolution DNS dans la console

Pour supprimer une liaison de résolution DNS dans la console IBM Cloud, procédez comme suit:

Pour supprimer une résolution contraignante, vous devez disposer du rôle IAM DNS Services approprié (gestionnaire ou administrateur). Gardez également à l'esprit que toutes les liaisons de résolution DNS doivent être supprimées avant de pouvoir supprimer un résolveur personnalisé.

  1. Depuis votre navigateur, ouvrez la console IBM Cloud et connectez-vous à votre compte.
  2. Sélectionnez l' icône Menu du menu Navigation, puis cliquez sur l'icône Infrastructure VPC > Réseau > VPC.
  3. Cliquez sur le cloud privé virtuel dans lequel vous souhaitez supprimer la liaison de résolution DNS.
  4. Faites défiler la page jusqu'à la section Paramètres DNS facultatifs, puis développez la section Liaison de résolution DNS.
  5. Cliquez sur Supprimer. S'il existe plusieurs liaisons, cliquez sur l'icône Actions icône Actions supplémentaires, puis sur Supprimer.

Création d'une liaison de résolution DNS à partir de l'interface de ligne de commande

Pour créer une liaison de résolution DNS avec l'interface de ligne de commande, procédez comme suit:

  1. Configurez votre environnement d'interface de ligne de commande.

  2. Connectez-vous à votre compte à l'aide de l'interface de programmation. Une fois que vous avez saisi le mot de passe, le système vous invite à indiquer le compte et la région à utiliser :

    ibmcloud login --sso
    

Pour créer une liaison de résolution DNS, entrez la commande suivante:

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

Où :

VPC

Spécifie l'ID ou le nom du VPC.

--target-vpc TARGET_VPC

Spécifie l'ID ou le nom d'un autre VPC auquel lier ce VPC pour la résolution DNS.

-name NAME

Spécifie le nom de cette liaison de résolution DNS.

--output JSON

Spécifie le format de sortie, seul JSON est pris en charge. Un parmi : JSON.

--q, --quiet

Supprime la sortie prolixe.

Exemples de commande

  • 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

Suppression d'une liaison de résolution DNS à partir de l'interface de ligne de commande

Pour supprimer une ou plusieurs liaisons de résolution à l'aide de l'interface de ligne de commande, procédez comme suit:

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

Où :

VPC
Spécifie l'ID ou le nom du VPC.
DNS_RESOLUTION_BINDING1
Spécifie l'ID ou le nom de la liaison de résolution DNS.
DNS_RESOLUTION_BINDING2
Spécifie l'ID ou le nom de la liaison de résolution DNS.
--output JSON
Spécifie le format de sortie, seul JSON est pris en charge. Un parmi : JSON.
--f, --force
Force l'opération sans confirmation.
--q, --quiet
Supprime la sortie prolixe.

Exemple de commande

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

Création d'une liaison de résolution DNS avec l'API

Pour créer une liaison de résolution avec l'API, procédez comme suit:

  1. Configurez votre environnement d'API.

  2. Enregistrez les valeurs suivantes dans des variables à utiliser dans les commandes API :

    export hub_vpc_id=<hub_vpc_id>
    export spoke_vpc_id=<spoke_vpc_id>
    
  3. Pour créer une liaison de résolution DNS, exécutez la commande suivante:

    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'"}}'
    

Exemple de sortie :

{
  "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"
  }
}

Suppression d'un lien de résolution DNS avec l'API

Pour supprimer une liaison de résolution DNS avec l'API, procédez comme suit:

  1. Configurez votre environnement d'API.

  2. Enregistrez les valeurs suivantes dans des variables à utiliser dans les commandes API :

    export dns_binding_id=<spoke_vpc_dns_binding_id>
    
  3. Pour supprimer une liaison de résolution DNS, exécutez la commande suivante:

    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}"
    

Création d'une liaison de résolution DNS avec Terraform

Vous pouvez utiliser Terraform pour créer une liaison de résolution DNS.

Pour utiliser Terraform, téléchargez l'interface CLI Terraform et configurez le IBM Cloud plug-in Provider. Pour plus d'informations, voir Initiation à Terraform.

Les services d'infrastructure VPC utilisent un noeud final spécifique régional, qui cible us-south par défaut. Si votre VPC est créé dans une autre région, veillez à cibler la région appropriée dans le bloc fournisseur du fichier provider.tf.

Consultez l'exemple suivant de ciblage d'une région autre que la région par défaut us-south.

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

Pour créer un lien de résolution 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">
	}
}

Suppression d'une liaison de résolution DNS avec Terraform

Pour supprimer une liaison de résolution DNS avec Terraform, voir l'exemple suivant:

terraform destroy --target ibm_is_vpc_dns_resolution_binding.my_dns_resolution_binding