Configuration d'un domaine pour votre cluster

Lorsque vous créez un cluster, un sous-domaine Ingress est enregistré par défaut pour votre cluster au format <cluster_name>-<globally_unique_account_HASH>-0000.<region>.containers.appdomain.cloud. En outre, vous pouvez rendre vos applications accessibles à un domaine personnalisé en créant votre propre domaine enregistré auprès du fournisseur de domaine interne de IBM Cloud ou un domaine enregistré auprès d'un fournisseur externe. Vous pouvez également ajouter un domaine existant à votre cluster.

Cette fonctionnalité est disponible en version bêta et est susceptible d'être modifiée.

IBM Cloud fournit un fournisseur interne géré que vous pouvez utiliser pour créer vos propres domaines. Avec le fournisseur de domaine géré, vous n'avez pas besoin de créer et de gérer un compte avec un fournisseur externe. Vous pouvez également utiliser le contrôle de santé pour vos domaines gérés. Lors de la création d'un domaine avec le fournisseur interne, vous spécifiez un nom de sous-domaine, tel que exampledomain, et le nouveau domaine est nommé au format exampledomain.<zone>.containers.appdomain.cloud.

Vous pouvez également utiliser votre propre instance IBM Cloud Internet Services comme fournisseur externe pour vos domaines en cluster.

Vous pouvez également utiliser l'annotation service.kubernetes.io/ibm-load-balancer-cloud-provider-dns-name VPC load balancer pour créer un nouveau domaine ou enregistrer un domaine existant dans votre VPC load balancer. Pour plus d'informations, voir la description de l'annotation dans la documentation VPC ALB ou VPC NLB.

Accès aux domaines dans la console

Accédez à la page « Domaines » de votre cluster pour créer et gérer des domaines.

  1. Dans la console, accédez à l'onglet Clusters.
  2. Cliquez sur le cluster où vous souhaitez créer ou modifier un domaine.
  3. Cliquez sur Ingress.
  4. Cliquez sur l'onglet Domaines. A partir de là, vous pouvez gérer les domaines associés au cluster.

Création de domaines dans la console

Utilisez la console IBM Cloud pour créer votre propre domaine dans votre cluster ou ajoutez un domaine qui existe déjà dans votre compte fournisseur. Suivez les instructions de la console pour effectuer les configurations de domaine suivantes.

Si vous utilisez le fournisseur IBM Cloud Internet Services vous devez d'abord configurer l'autorisation de service à service pour votre instance IBM Cloud Internet Services. Définissez le service source sur Kubernetes Service et la cible sur Internet services. Attribuer le rôle de niveau de service Manager et le rôle de niveau de plate-forme Viewer.

Détails de domaine

  • Nom de domaine: nom du domaine à créer ou à ajouter à votre cluster. Il peut s'agir d'un domaine existant dans votre compte fournisseur ou d'un nouveau domaine.
  • Fournisseur: Choisissez un fournisseur pour votre domaine. Pour créer un domaine géré avec le fournisseur interne d' IBM Cloud, choisissez Géré. Pour utiliser un fournisseur externe, choisissez parmi les types de fournisseur restants.
  • Définir comme valeur par défaut: indiquez si vous souhaitez définir le domaine comme valeur par défaut pour le cluster. Le domaine Ingress par défaut est utilisé pour former une URL unique pour chacune de vos applications et est le domaine qui est référencé par les adresses IP de tous les ALB publics dans votre cluster. Vous pouvez modifier le domaine défini comme domaine par défaut à tout moment. La définition d'un domaine par défaut remplace la valeur par défaut en cours. La configuration du domaine par défaut n'est pas prise en charge pour les clusters Satellite ou pour les clusters Red Hat® OpenShift® on IBM Cloud® utilisant la version 4.18 ou une version ultérieure.

Modalités d'enregistrement

  • Ajoutez une ou plusieurs adresses IP (pour les clusters classiques ou VPC) ou des noms d'hôte (pour les clusters VPC) à enregistrer dans le domaine. Vous pouvez mettre à jour les adresses IP ou les noms d'hôte qui sont enregistrés.
  • Espace de noms du secret: Indiquez l'espace de noms dans lequel le secret TLS est créé pour le domaine. Si vous ne spécifiez pas d'espace de noms, le secret est créé dans l'espace de noms default.

Gestion de votre domaine dans la console

Vous pouvez effectuer les actions suivantes pour gérer votre domaine.

Supprimer un domaine
Si vous supprimez un domaine d'un cluster, le domaine ne peut pas être récupéré. Si vous avez besoin ultérieurement du domaine, vous devez le mettre à disposition à nouveau. Si vous supprimez un domaine enregistré auprès du fournisseur géré, vous ne pouvez pas réutiliser ce nom de domaine. Notez que vous ne pouvez pas supprimer le domaine par défaut d'un cluster. Si vous souhaitez supprimer le domaine actuellement enregistré comme domaine par défaut, vous devez d'abord affecter un autre domaine par défaut.
Mettre à jour les adresses IP ou le nom d'hôte d'un domaine
Lorsque vous mettez à jour les adresses IP ou les noms d'hôte, vous devez inclure les adresses IP ou les noms d'hôte actuellement enregistrés dans le domaine. Le domaine est mis à jour avec les valeurs exactes spécifiées, de sorte que les adresses IP ou les noms d'hôte en cours sont écrasés s'ils ne sont pas inclus. Par exemple, si 52.137.182.166 est actuellement enregistré dans votre domaine et que vous souhaitez ajouter 52.137.182.270, vous devez spécifier les deux adresses IP.
Modifier le domaine par défaut d'un cluster
Vous pouvez remplacer le domaine par défaut par n'importe quel domaine existant dans votre cluster. L'application de cette modification peut prendre jusqu'à cinq minutes. Au cours de cette période, votre domaine risque de connaître des temps d'indisponibilité.

Configuration de domaines avec le fournisseur interne IBM Cloud géré

IBM Cloud fournit un fournisseur interne géré que vous pouvez utiliser pour créer vos propres domaines. Vous pouvez utiliser la commande ibmcloud oc ingress domain create pour créer un nouveau domaine ou spécifier un domaine existant que vous souhaitez ajouter à votre cluster. Lorsque vous créez un domaine avec le fournisseur interne, vous pouvez spécifier un nom de sous-domaine, tel que exampledomain, ou fournir le nom de domaine complet. Le nouveau domaine est nommé au format exampledomain.<zone>.containers.appdomain.cloud.

ibmcloud oc ingress domain create --cluster CLUSTER [--is-default] [--domain DOMAIN] [--hostname HOSTNAME] [--ip IP] [--output OUTPUT] [-q] [--secret-namespace NAMESPACE]
-c, --cluster CLUSTER
Obligatoire. Le nom ou l'ID du cluster dans lequel vous souhaitez créer le domaine.
--is-default
Optionnel. Cochez cette option pour définir le domaine concerné comme domaine par défaut du cluster.
--domain DOMAIN
Domaine à créer ou à ajouter à votre cluster. Il peut s'agir d'un domaine existant dans votre compte fournisseur ou d'un nouveau domaine.
--hostname HOSTNAME
Optionnel. Pour les clusters de VPC. Nom d'hôte à enregistrer pour le domaine.
--ip IP
Optionnel. Adresses IP à enregistrer pour le domaine.
--output OUTPUT
Facultatif : Imprimer la sortie de la commande au format JSON.
--secret-namespace NAMESPACE
Optionnel. L'espace de noms dans lequel le secret du domaine TLS est créé. Si aucun espace de noms n'est spécifié, le secret est créé dans l'espace de noms default.

Configuration de domaines avec IBM Cloud Internet Services

Procédez comme suit pour créer un domaine avec IBM Cloud Internet Services.

Configuration de l'autorisation de service à service

La création d'un domaine avec IBM Cloud Internet Services nécessite la mise en place d'une autorisation de service à service pour votre instance IBM Cloud Internet Services. Définissez le service source sur Kubernetes Service et la cible sur Internet services. Attribuer le rôle de niveau de service Manager et le rôle de niveau de plate-forme Viewer.

Créer un domaine

Créez un nouveau domaine ou spécifiez un domaine existant que vous souhaitez ajouter à votre cluster. Pour spécifier un domaine existant, incluez le nom de domaine complet dans la zone du fournisseur externe, par exemple exampledomain.externalzone.com. Pour créer un nouveau domaine, vous devez toujours inclure la zone de fournisseur externe, mais vous pouvez personnaliser la partie de sous-domaine, telle que custom.exampledomain.externalzone.com. Notez que le nom de domaine doit être unique dans la zone dans laquelle il est enregistré.

Si vous supprimez un domaine enregistré auprès du fournisseur interne IBM, vous ne pouvez pas réutiliser le nom de domaine.

ibmcloud oc ingress domain create --cluster CLUSTER [--crn CRN] [--is-default] [--domain DOMAIN] [--hostname HOSTNAME] [--ip IP] [--output OUTPUT] [--domain-provider PROVIDER] [-q] [--secret-namespace NAMESPACE] [--zone ZONE]
-c, --cluster CLUSTER
Obligatoire. Le nom ou l'ID du cluster dans lequel vous souhaitez créer le domaine.
--crn CRN
Obligatoire pour les domaines IBM Cloud Internet Services. CRN de l'instance IBM Cloud Internet Services.
--is-default
Optionnel. Cochez cette option pour définir le domaine concerné comme domaine par défaut du cluster.
--domain DOMAIN
Domaine à créer ou à ajouter à votre cluster. Il peut s'agir d'un domaine existant dans votre compte fournisseur ou d'un nouveau domaine.
--hostname HOSTNAME
Pour les clusters de VPC. Nom d'hôte à enregistrer pour le domaine.
--ip IP
Adresses IP à enregistrer pour le domaine.
--output OUTPUT
Facultatif : Imprimer la sortie de la commande au format JSON.
--domain-provider PROVIDER
Obligatoire. Type de fournisseur DNS externe. Spécifiez cis-ext.
--secret-namespace NAMESPACE
Optionnel. L'espace de noms dans lequel le secret du domaine TLS est créé. Si aucun espace de noms n'est spécifié, le secret est créé dans l'espace de noms default.
--domain-zone ZONE
Optionnel. ID de domaine de votre instance IBM Cloud Internet Services. Il s'agit d'une valeur GUID.

Gestion des domaines

Apprenez à gérer les domaines qui existent dans votre cluster.

Affichage de la liste de tous les domaines d'un cluster

Pour plus de détails et pour connaître les options de commande, voir la référence de l'interface de ligne de commande.

ibmcloud oc ingress domain ls --cluster CLUSTER

Obtention des détails d'un domaine unique

Pour plus de détails et pour connaître les options de commande, voir la référence de l'interface de ligne de commande.

ibmcloud oc ingress domain get --cluster CLUSTER --domain DOMAIN

Suppression d'un domaine d'un cluster

Si vous supprimez un domaine d'un cluster, le domaine ne peut pas être récupéré. Si vous avez besoin ultérieurement du domaine, vous devez le mettre à disposition à nouveau. Notez que vous ne pouvez pas supprimer le domaine par défaut d'un cluster. Si vous souhaitez supprimer le domaine actuellement enregistré comme domaine par défaut, vous devez d'abord affecter un autre domaine par défaut.

Si vous supprimez un domaine enregistré auprès du fournisseur interne IBM, vous ne pouvez pas réutiliser le nom de domaine.

Pour plus de détails et pour connaître les options de commande, voir la référence de l'interface de ligne de commande.

ibmcloud oc ingress domain rm --cluster CLUSTER --domain DOMAIN

Mise à jour des adresses IP ou du nom d'hôte d'un domaine

Vous pouvez mettre à jour les adresses IP enregistrées d'un domaine (pour les clusters Classic ou VPC) ou le nom d'hôte (pour les clusters VPC) une fois le domaine créé ou ajouté au cluster. Cette commande met à jour toutes les ressources de votre cluster avec les adresses IP ou les noms d'hôte spécifiés et modifie les URL de votre application.

Pour plus d'informations et pour connaître les options de commande, voir la référence de l'interface de ligne de commande.

Notez que lorsque vous ajoutez des adresses IP ou des noms d'hôte, vous devez inclure les adresses IP ou les noms d'hôte actuellement enregistrés dans le domaine. Le domaine est mis à jour avec les valeurs exactes spécifiées, de sorte que les adresses IP ou les noms d'hôte en cours sont écrasés s'ils ne sont pas inclus. Par exemple, si 52.137.182.166 est actuellement enregistré dans votre domaine et que vous souhaitez ajouter 52.137.182.270, vous devez spécifier --ip 52.137.182.166 --ip 52.137.182.270 dans la commande.

ibmcloud oc ingress domain update --cluster CLUSTER --domain DOMAIN [--hostname HOSTNAME] [--ip IP]

Modification du domaine par défaut d'un cluster

Le domaine Ingress par défaut est utilisé pour former une URL unique pour chacune de vos applications et est le domaine qui est référencé par les adresses IP de tous les ALB publics dans votre cluster. Lorsque vous mettez à disposition un cluster, le domaine Ingress par défaut est automatiquement créé pour vous, mais vous pouvez remplacer le domaine par défaut par n'importe quel domaine existant dans votre cluster. Pour vérifier le domaine par défaut de votre cluster, exécutez ibmcloud oc cluster get et recherchez le sous-domaine Ingress dans la sortie.

Pour plus de détails et pour connaître les options de commande, voir la référence de l'interface de ligne de commande.

La mise à jour du domaine par défaut peut prendre jusqu'à cinq minutes. Au cours de cette période, votre domaine risque de connaître des temps d'indisponibilité.

ibmcloud oc ingress domain default replace --cluster CLUSTER --domain DOMAIN

Gestion des secrets de domaine et des certificats

Apprenez à gérer le certificat TLS pour votre domaine Ingress.

Régénération du certificat pour un domaine Ingress

Régénérez le certificat de domaine pour générer un nouveau jeton dans votre fournisseur DNS et l'appliquer à votre cluster.

Pour plus de détails et les options de commande, voir la référence de l'interface de ligne de commande

ibmcloud oc ingress domain secret regenerate --cluster CLUSTER --domain DOMAIN

Suppression d'un secret de domaine Ingress

Supprimer la clé secrète d'un domaine Ingress et empêcher le renouvellement futur du certificat.

Pour plus de détails et les options de commande, voir la référence de l'interface de ligne de commande

ibmcloud oc ingress domain secret rm --cluster CLUSTER --domain DOMAIN