19.6. Création d'enregistrements DNS sur GCP
Vous pouvez créer des enregistrements DNS sur GCP à l'aide de l'opérateur DNS externe.
19.6.1. Création d'enregistrements DNS sur une zone publique gérée pour GCP à l'aide de Red Hat External DNS Operator Copier lienLien copié sur presse-papiers!
Vous pouvez créer des enregistrements DNS sur une zone publique gérée pour GCP en utilisant Red Hat External DNS Operator.
Procédure
Vérifiez l'utilisateur. L'utilisateur doit avoir accès à l'espace de noms
kube-system
. Si vous n'avez pas les informations d'identification, vous pouvez les récupérer dans l'espace de nomskube-system
pour utiliser le client du fournisseur de cloud :oc whoami
$ oc whoami
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie
system:admin
system:admin
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copiez la valeur de service_account.json dans gcp-credentials secret dans un fichier encoded-gcloud.json en exécutant la commande suivante :
oc get secret gcp-credentials -n kube-system --template='{{$v := index .data "service_account.json"}}{{$v}}' | base64 -d - > decoded-gcloud.json
$ oc get secret gcp-credentials -n kube-system --template='{{$v := index .data "service_account.json"}}{{$v}}' | base64 -d - > decoded-gcloud.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exporter les informations d'identification Google :
export GOOGLE_CREDENTIALS=decoded-gcloud.json
$ export GOOGLE_CREDENTIALS=decoded-gcloud.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Activez votre compte en utilisant la commande suivante :
gcloud auth activate-service-account <client_email as per decoded-gcloud.json> --key-file=decoded-gcloud.json
$ gcloud auth activate-service-account <client_email as per decoded-gcloud.json> --key-file=decoded-gcloud.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Définissez votre projet :
gcloud config set project <project_id as per decoded-gcloud.json>
$ gcloud config set project <project_id as per decoded-gcloud.json>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Obtenir les itinéraires pour vérifier le domaine :
oc get routes --all-namespaces | grep console
$ oc get routes --all-namespaces | grep console
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie
openshift-console console console-openshift-console.apps.test.gcp.example.com console https reencrypt/Redirect None openshift-console downloads downloads-openshift-console.apps.test.gcp.example.com downloads http edge/Redirect None
openshift-console console console-openshift-console.apps.test.gcp.example.com console https reencrypt/Redirect None openshift-console downloads downloads-openshift-console.apps.test.gcp.example.com downloads http edge/Redirect None
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Obtenir la liste des zones gérées pour trouver la zone qui correspond au domaine de la route trouvée précédemment :
gcloud dns managed-zones list | grep test.gcp.example.com
$ gcloud dns managed-zones list | grep test.gcp.example.com qe-cvs4g-private-zone test.gcp.example.com
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Créer une ressource
ExternalDNS
pour une sourceroute
:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- Spécifie le nom du DNS CR externe.
- 2
- Par défaut, toutes les zones hébergées sont sélectionnées comme cibles potentielles. Vous pouvez inclure une zone hébergée dont vous avez besoin.
- 3
- La correspondance du domaine de la zone cible doit être exacte (par opposition à une correspondance par expression régulière).
- 4
- Indiquez le domaine exact de la zone que vous souhaitez mettre à jour. Les noms d'hôte des routes doivent être des sous-domaines du domaine spécifié.
- 5
- Définit le fournisseur de Google Cloud DNS.
- 6
- Vous pouvez définir des options pour la source des enregistrements DNS.
- 7
- Si la source est
OpenShiftRoute
, vous pouvez passer le nom du contrôleur d'entrée d'OpenShift. Le DNS externe sélectionne le nom d'hôte canonique de ce routeur comme cible lors de la création de l'enregistrement CNAME. - 8
- Définit la ressource OpenShift
route
comme source pour les enregistrements DNS qui sont créés dans le fournisseur DNS spécifié précédemment.
Vérifiez les enregistrements créés pour les routes OCP à l'aide de la commande suivante :
gcloud dns record-sets list --zone=qe-cvs4g-private-zone | grep console
$ gcloud dns record-sets list --zone=qe-cvs4g-private-zone | grep console
Copy to Clipboard Copied! Toggle word wrap Toggle overflow