Création d'un cluster Oracle Cloud Infrastructure Kubernetes Engine à l'aide de Terraform
Introduction
Dans ce tutoriel, nous allons montrer comment créer un cluster Oracle Cloud Infrastructure Kubernetes Engine (OKE) à l'aide de Terraform et comment gérer votre code Terraform avec Oracle Resource Manager. Cette approche vous permet d'implémenter les principes Infrastructure as Code (IaC), ce qui améliore l'automatisation, la cohérence et la répétabilité dans vos déploiements.
Oracle Cloud Infrastructure Kubernetes Engine (OKE)
Kubernetes (K8s) est une plate-forme open source pour automatiser le déploiement, la mise à l'échelle et la gestion des applications en conteneur. Développée à l'origine par Google et maintenant gérée par la CNCF, elle est la norme du secteur pour l'exécution d'applications cloud natives à grande échelle.
OKE est un service entièrement géré sur Oracle Cloud Infrastructure (OCI) qui simplifie le déploiement et la gestion des clusters Kubernetes. Il automatise la gestion des noeuds de plan de contrôle et de processus actif, s'intègre aux services de réseau, de stockage et de sécurité d'OCI et prend en charge les charges de travail sans conservation de statut et avec conservation de statut. Les noeuds OKE sont organisés en pools de noeuds, qui peuvent être facilement mis à l'échelle et gérés, ce qui garantit une haute disponibilité et une utilisation optimale des ressources pour les applications en conteneur. OKE suit le modèle Kubernetes standard, avec deux composants clés (plan de contrôle géré et plan de données géré par le client).
-
Plan de contrôle : entièrement géré par Oracle et ses composants gèrent l'orchestration et la gestion du cluster :
kube-apiserver
: API centrale pour la communication avec le cluster.etcd
: stocke la configuration et l'état du cluster.kube-scheduler
: affecte des pods aux noeuds appropriés.kube-controller-manager
: garantit l'état souhaité en gérant les contrôleurs.cloud-controller-manager
(CCM) : s'intègre à OCI pour gérer les ressources cloud telles qu'OCI Load Balancer et OCI Block Volumes.
-
Plan de données : déployé dans la location client et exécute les charges globales réelles. Il est composé de :
Worker Nodes
: instances de calcul (provisionnées par le client) exécutant des pods.kubelet
: agent de noeud qui gère l'exécution du pod.kube-proxy
: gère les règles de mise en réseau et le routage du trafic vers/depuis les pods.
Pour plus d'informations, reportez-vous à Gestion d'OCI Kubernetes Engine avec différents types de capacité et résolution des problèmes courants sur les noeuds préemptifs.
Architecture
L'architecture de référence suivante sera utilisée pour illustrer la création du cluster OKE.
Le diagramme illustre une architecture OKE résiliente déployée au sein d'une seule région OCI répartie entre plusieurs domaines de pannes (FD). La configuration dispose d'un réseau cloud virtuel (VCN) avec trois sous-réseaux distincts : un sous-réseau public (LBSubnet) hébergeant une passerelle Internet et un équilibreur de charge OCI pour distribuer le trafic entrant, et deux sous-réseaux privés, l'un pour les noeuds de processus actif OKE (NodeSubnet) et l'autre pour le serveur d'API (APISubnet). Les noeuds de processus actif sont répartis sur trois FD au sein d'un seul domaine de disponibilité, ce qui réduit les risques d'échec. Le cluster se connecte de manière transparente à OCI Container Registry pour le stockage et l'extraction d'images de conteneur.
La console OCI propose une méthode simple Point-&-Click. Pour l'utiliser, accédez à l'interface utilisateur des clusters Kubernetes. Sélectionnez Création rapide. Nommez le cluster. Sélectionnez une adresse d'API privée. Configurez des noeuds de processus actif gérés avec la forme, l'image et le nombre souhaités. L'option de la console OCI configure un cluster OKE amélioré. Il utilise OCI_VCN_IP_NATIVE
CNI, qui est la valeur par défaut. Il fournit également des sous-réseaux privés dédiés pour les noeuds de processus actif et l'adresse d'API. En outre, il crée un sous-réseau public pour l'équilibreur de charge. Toutefois, cette approche manuelle prend du temps et n'est pas évolutive pour les déploiements volumineux ou reproductibles.
Pour surmonter les limites du déploiement manuel, ce tutoriel fournit une solution plate et simplifiée basée sur Terraform qui automatise l'ensemble de la configuration de cluster OKE en trois étapes :
- Création de ressources réseau.
- Provisionnement de cluster OKE.
- Création du pool de noeuds de processus actif.
Ce tutoriel se concentre sur le déploiement de l'infrastructure de cluster OKE de base. Les personnalisations au niveau de l'application et les configurations propres à la charge de travail n'entrent pas dans le champ d'application. Pour rationaliser le provisionnement, nous avons inclus des scripts Bash qui automatisent l'exécution des commandes Terraform. Ces scripts sont conçus pour une intégration transparente dans un pipeline Jenkins triphasé, permettant le déploiement automatisé de l'ensemble de l'environnement OKE sur One-Click
.
Vous apprendrez à automatiser la création de ressources réseau (VCN, passerelles, sous-réseaux), le cluster OKE et ses pools de noeuds à l'aide de l'interface de ligne de commande Terraform et d'Oracle Resource Manager. Nous montrerons également comment étendre cette automatisation à l'aide de Bash, de l'interface de ligne de commande OCI et de Jenkins, en réduisant les efforts manuels et en garantissant une livraison cohérente de l'infrastructure.
Objectifs
- Créez un cluster OKE à l'aide de Terraform pour Infrastructure-as-Code et décrivez le processus de gestion de votre déploiement via Oracle Resource Manager. En cours de route, nous aborderons également les concepts fondamentaux d'OKE.
Prérequis
-
Rôle d'administrateur racine de location OCI pour la configuration initiale, déconseillé pour la production.
- Utilisateur OCI non administrateur avec les stratégies de réseau et OKE OCI IAM nécessaires. Pour plus d'informations, reportez-vous à Configuration de stratégie pour la création et la mise en oeuvre de clusters.
-
Connaissance des principes Infrastructure-as-Code et de Terraform (version de communauté), notamment :
Automatisation Terraform pour la création de clusters OKE
Il existe deux options d'automatisation pour créer le VCN (OKE-VCN
) et le cluster OKE : un module plat ou un module standard utilisant des modules enfant. Cette dernière approche n'entre pas dans le cadre de cet article, mais elle offre une meilleure organisation et évolutivité pour les déploiements plus importants et complexes, favorisant la réutilisabilité et la maintenabilité du code, ce qui le rend idéal pour les environnements de production. Nous utiliserons l'approche simple et plate, adaptée aux cas d'utilisation de développement, aux scénarios de test ou à une démonstration de déploiement VCN unique. Pour plus d'informations, reportez-vous à terraform-oci-oke.
Tâche 1 : déploiement de ressources OKE avec Terraform (Community Edition)
Avant d'exécuter des commandes Terraform pour planifier et déployer votre infrastructure à l'aide de l'interface de ligne de commande Terraform, mettez à jour la configuration Terraform fournie avec les détails propres à votre environnement, à partir de votre ordinateur local ou via OCI Cloud Shell.
Vous pouvez télécharger le code source Terraform complet ici : oke_terraform_for_beginners.zip. Nous utilisons une structure de répertoires plate. Lorsque vous décompressez le package, assurez-vous que tous vos codes source de modèle Terraform (.tf, .tfvars, clés SSH, etc.) se trouvent dans le répertoire racine.
-
Pour demander à Terraform de créer l'une des ressources principales (
VCN
,OKE_Cluser
ouNode_Pool
), vous devez définir l'indicateur approprié (is_vcn_created
,is_k8cluster_created
ouis_pool_created
) surtrue
dans votreterraform.tfvars
. Spécifiez ensuite les paramètres restants pour le réseau, le cluster OKE et le pool de noeuds dans leurs blocs de code respectifs.-
Commencez par définir
is_vcn_created
surtrue
pour demander à Terraform de créer un VCN oufalse
pour utiliser un VCN existant (vous devrez fournir son OCID). Si vous créez un VCN, veillez à spécifier une variable de bloc CIDRvcn_cidr_block
. -
Fournissez les blocs CIDR pour les trois sous-réseaux suivants.
- Sous-réseau privé d'adresse d'API K8 (
k8apiendpoint_private_subnet_cidr_block
). - Sous-réseau privé de noeud de processus actif (
workernodes_private_subnet_cidr_block
). - Sous-réseau public d'équilibreur de charge de service (
serviceloadbalancers_public_subnet_cidr_block
).
- Sous-réseau privé d'adresse d'API K8 (
-
Définissez l'indicateur
is_k8cluster_created
pour indiquer à Terraform de créer un cluster Kubernetes et indiquez le compartiment cible à l'aide decompartment_id
. Si un pool de noeuds de processus actif est nécessaire, définissez l'indicateuris_nodepool_created
en conséquence. -
OKE prend en charge deux types de CNI : VCN-Native (par défaut), où chaque pod obtient sa propre adresse IP pour de meilleures performances et une intégration réseau OCI complète, et Flannel-Overlay, un réseau superposé plus simple où les pods partagent la carte d'interface réseau virtuelle du noeud. Dans cette configuration,
cni_type
est défini surOCI_VCN_IP_NATIVE
pour correspondre à la configuration de cluster par défaut créée par le workflow Création rapide dans la console OCI. -
OKE propose deux types de cluster : Basic et Enhanced. Pour plus de flexibilité, nous définissons
cluster_type
surENHANCED_CLUSTER
.- Les clusters améliorés fournissent des fonctionnalités avancées telles que la gestion des modules complémentaires, une sécurité améliorée et un meilleur contrôle du cycle de vie
- Les clusters de base offrent un environnement Kubernetes simple avec des fonctionnalités essentielles
-
La configuration de cycle de noeud
node_cycle_config
définit la façon dont les noeuds de processus actif sont créés, remplacés ou mis à jour dans un pool de noeuds, en particulier lors des événements de mise à jour, de mise à niveau ou de redimensionnement automatique. La configuration définit les attributs suivants :is_node_cycling_enabled (bool):
Active le cyclage automatique (remplacement) des noeuds lors d'une mise à jour ou d'une mise à niveau. Définissez la valeur sur true pour activer la rotation sécurisée des noeuds.maximum_surge (int)
: nombre maximal de noeuds supplémentaires (au-delà du nombre souhaité) pouvant être ajoutés lors des mises à jour. Il permet de créer de nouveaux nœuds avant de supprimer les anciens sans temps d'arrêt.maximum_unavailable (int)
: nombre maximal de noeuds qui peuvent être indisponibles pendant les mises à jour. Permet de contrôler les perturbations lors des mises à jour non simultanées.cycle_modes (list)
(facultatif) : il fournit une liste ordonnée des actions de cyclage de noeud. Les modes de cycle disponibles sont les suivants :REPLACE_BOOT_VOLUME
: met à jour le volume d'initialisation sans mettre fin au noeud.REPLACE_NODES
: cordon, purge, terminaison et recréation des noeuds avec la configuration mise à jour.
-
-
Modifiez les valeurs par défaut uniquement si nécessaire. Le package comprend des instructions claires pour la configuration de l'environnement, les étapes d'exécution et les concepts clés liés à la mise en réseau et à la sécurité.
Voici un exemple de configuration Terraform dans le fichier
terraform.tfvars
que vous devez personnaliser pour l'exécuter dans votre environnement.########################################################################## # Terraform module: OKE Cluster with Flat Network. # # # # Author: Mahamat H. Guiagoussou and Payal Sharma # # # # Copyright (c) 2025 Oracle # ########################################################################## # Working Compartment compartment_id = "WORKING_COMPARTMENT" #------------------------------------------------------------------------# # Step 2.1: Create Flat Network # #------------------------------------------------------------------------# is_vcn_created = false # Terraform creates VCN if set to 'true' # Display Name Prefix & Host Name Prefix display_name_prefix = "DISPLAY_NAME_PREFIX" # e.g.: "ACME-DEV" host_name_prefix = "HOST_PREFIX" # e.g.: "myvcn" # VCN & Subnets CIDR Blocks vcn_cidr_block = "VCN_CIDR_BLOCK" k8apiendpoint_private_subnet_cidr_block = "ENDPOINT_CIDR_BLOCK" workernodes_private_subnet_cidr_block = "WRKRNODE_CIDR_BLOCK" serviceloadbalancers_public_subnet_cidr_block = "LB_CIDR_BLOCK" #------------------------------------------------------------------------# # Step 2.2: Create the OKE Cluster # #------------------------------------------------------------------------# is_k8cluster_created = false # Terraform creates OKE cluster if 'true' control_plane_kubernetes_version = "K8_VERSION" # e.g.: "v1.32.1" cni_type = "OCI_VCN_IP_NATIVE" # FLANNEL_OVERLAY control_plane_is_public = false # Set the below flag to true for 'OCI_VCN_IP_NATIVE'. This is needed to # provision a dedicated subnet for pods when using the VCN-Native CNI. create_pod_network_subnet = true # NO subnet 'false' image_signing_enabled = false # image not signed cluster_type = "ENHANCED_CLUSTER" # or "BASIC_CLUSTER" #------------------------------------------------------------------------# # Step 2.3: Create a Node Pool for the cluster # #------------------------------------------------------------------------# is_nodepool_created = false # Terraform creates Node_Pool if 'true' worker_nodes_kubernetes_version = "WORKER_NODE_VERSION" # e.g.: "v1.32.1" # Detailed configuration for the Node Pool node_pools = { node_pool_one = { name = "WORKER_NODE_POOL_DISPLAY_NAME" # e.g. "my_worker_node_pool", # https://docs.oracle.com/en-us/iaas/Content/ContEng/Reference/contengimagesshapes.htm shape = "WORKER_NODE_SHAPE_NAME" # e.g.: "VM.Standard.E4.Flex", shape_config = { ocpus = "WORKER_NODE_NB_OF_OCPUS" # e.g.: 1 memory = "WORKER_NODE_MEMOR_SIZE" # e.g.: 16 }, boot_volume_size = "WORKER_BOOT_VOLUME_SIZE" # e.g.: 50 # Oracle maintains a list of supported OKE worker node images here: # https://docs.oracle.com/en-us/iaas/images/oke-worker-node-oracle-linux-8x/ # https://docs.oracle.com/en-us/iaas/Content/ContEng/Reference/contengimagesshapes.htm#images__oke-images image = "WORKER_NODE_OKE_IMAGE" # e.g.: ocid1.image.oc1.iad...." node_labels = { hello = "Demo"}, # Run command "oci iam availability-domain list" to list region's ADs. # No need to set Fault Domains, they are selected automatically availability_domains = ["YOUR_AD_NAME"] # e.g. "GqIF:US-ASHBURN-AD-1", number_of_nodes = "NB_OF_NODES_IN_THE_POOL" # e.g. 1, pv_in_transit_encryption = false, node_cycle_config = { node_cycling_enabled = false maximum_surge = 1 maximum_unavailable = 0 }, ssh_key = "YOUR_SSH_KEY_PATH" # e.g.: "worker_node_ssh_key.pub" } }
-
Exécutez les commandes Terraform suivantes.
terraform init terraform validate terraform plan terraform apply
Une fois l'exécution réussie de
terraform apply
, le cluster OKE sera créé dans votre compartiment de travail et votre région avec la configuration suivante :- Une valeur
ENHANCED_CLUSTER
avecOCI_VCN_IP_NATIVE
cni_type
et la version OKE indiquée. - Sous-réseaux privés dédiés pour les noeuds de processus actifs et l'adresse d'API.
- Sous-réseau public permettant à l'équilibreur de charge d'accéder aux services de cluster.
- Pool de noeuds gérés configuré avec la forme, l'image et le nombre de noeuds souhaités.
- Une valeur
-
Accédez à la console OCI pour confirmer le déploiement et la configuration du cluster.
Les images suivantes illustrent une exécution réussie de Terraform avec les journaux générés.
-
Lorsque vous avez terminé le test, exécutez
terraform destroy
pour nettoyer votre environnement. Cette commande enlève toutes les ressources OKE créées lors du déploiement et empêche toute utilisation inutile des ressources dans votre location.
Tâche 2 : automatiser l'exécution de l'interface de ligne de commande Terraform avec le pipeline d'intégration continue et de déploiement continu Jenkins
Dans cette tâche, nous allons résumer les étapes précédemment détaillées en quatre étapes principales, conçues pour une orchestration ultérieure par Jenkins. Ce pipeline agrégé est implémenté via un ensemble de scripts Bash qui exécutent les commandes de l'interface de ligne de commande Terraform.
Tâche 2.1 : Créer des ressources réseau
Le script suivant exécute une séquence de plusieurs commandes Terraform pour créer les ressources réseau.
-
Script Bash :
create_network_resources.sh
.#!/bin/bash # Change directory to your working directory cd ~/oke_terraform_for_beginners # Run terraform init (at least once) /usr/local/bin/terraform init # Create the OKE Cluster Network resources (VCN, Gateways, RT, K8 API Endpoint Subnet, Worker Node Subnet and LB subnet) /usr/local/bin/terraform apply \ --var is_vcn_created=true \ # Create OKE Cluster Networking Resources --auto-approve
Pour les scripts restants, assurez-vous que terraform init
a déjà été exécuté et que vous exécutez les commandes à partir de votre répertoire de travail. Par exemple, ~/oke_terraform_for_beginners
.
Tâche 2.2 : créer un cluster OKE
Ce script exécute la commande terraform apply
pour créer le cluster OKE.
-
Script Bash :
create_oke_cluster.sh
.#!/bin/bash ..... # Create OKE Cluster (auto-approve - not advised for production) /usr/local/bin/terraform apply \ --var is_vcn_created=true \ # Use the created network --var is_k8cluster_created=false \ # Create a new OKE cluster --auto-approve
Tâche 2.3 : Créer un pool de noeuds de processus actif OKE
Le script suivant exécute la commande terraform apply
pour créer le pool de noeuds de processus actif pour le cluster OKE.
-
Script Bash :
create_worker_node_pool.sh
#!/bin/bash # Create Worker Node Pool (auto-approve - not advised for production) /usr/local/bin/terraform apply \ --var is_vcn_created=true \ # Use the created network --var is_k8cluster_created=true \ # For the existing OKE cluster --var is_nodepool_created=true \ # Create new Worker Node Pool --auto-approve
Tâche 2.4 : détruire toutes les ressources
Ce script exécute une commande destroy
, purgeant toutes les ressources de cluster OKE (ressources de mise en réseau, cluster OKE et pool de noeuds de processus actif).
-
Script Bash :
destroy_all_cluster_resources.sh
.#!/bin/bash # Run terraform destroy (for testing purposes only, not for production) /usr/local/bin/terraform destroy --auto-approve
Nous avons automatisé le processus de bout en bout du pipeline Jenkins, le consolidant en quatre tâches de construction Jenkins (tâche 2.1, 2.2, 2.3). Ce pipeline agrégé s'exécute via des scripts Bash exécutant des commandes de l'interface de ligne de commande Terraform. L'image ci-dessous illustre l'automatisation en un clic pour les trois premières tâches. L'étape destroy
n'est pas incluse pour plus de simplicité.
Tâche 3 : orchestrer les déploiements OKE avec Oracle Resource Manager
Flux Oracle Resource Manager (illustré) :
Le schéma suivant décrit les sept étapes illustrant Oracle Resource Manager Code Manager :
- Configuration source : définit l'origine de la configuration IaC, par exemple un compartiment dans OCI, un bucket OCI Object Storage, un fichier ZIP, Bitbucket ou GitHub.
- Modèle Terraform : la configuration d'infrastructure est définie à l'aide de HashiCorp Terraform dans un fichier de modèle.
- Oracle Resource Manager : l'offre OCI Terraform as a Service utilise le modèle Terraform en tant qu'entrée et gère le processus de provisionnement d'infrastructure.
- Créer une pile : Oracle Resource Manager utilise le modèle pour créer une pile, qui est un ensemble de ressources OCI.
- Plan : avant d'apporter des modifications, Oracle Resource Manager génère un plan qui décrit les actions qui seront effectuées pour provisionner ou modifier l'infrastructure.
- Appliquer : selon le plan, Oracle Resource Manager applique la configuration et provisionne les ressources indiquées dans OCI.
- Détruire : Oracle Resource Manager peut également être utilisé pour détruire (déprovisionner) ou purger les ressources qui ont été précédemment créées par la pile.
Tâche 3.1 : Configuration de la source : Définir la pile Oracle Resource Manager
Pour déployer un cluster OKE à l'aide d'Oracle Resource Manager, commencez par télécharger le module adapté aux débutants : oke_terraform_for_beginners_orm.zip
. Nous utilisons une structure de répertoires plate. Lorsque vous décompressez le package, assurez-vous que tous les codes source de modèle Terraform (.tf) se trouvent dans le répertoire racine.
Cette version du module est préconfigurée pour Oracle Resource Manager ; terraform.tfvars
a été supprimé et toutes les variables sont définies avec des valeurs d'espace réservé "génériques" telles que "REPLACE_WITH_YOUR_OWN_VARIABLE_VALUE" dans variables.tf
.
Avant de créer votre stack
, mettez à jour variables.tf
avec votre région, les CIDR de mise en réseau et les indicateurs pour contrôler la création du cluster VCN, OKE et du pool de noeuds.
Le cluster OKE utilise le CNI natif VCN (OCI_VCN_IP_NATIVE
) pour les fonctions de réseau de pod. Assurez-vous donc que l'indicateur create_pod_network_subnet
est activé pour définir les CIDR de sous-réseau de pod.
Lorsque vous configurez stack
dans l'interface utilisateur d'Oracle Resource Manager, vous pouvez contrôler la création des ressources OKE principales en sélectionnant les éléments suivants :
- VCN : sélectionnez
is_vcn_created
. - Cluster OKE : sélectionnez
is_k8cluster_created
. - Pool de noeuds OKE : sélectionnez
is_nodepool_created
.
Tâche 3.2 : Créer une pile Oracle Resource Manager
Lors de la création de stack
, sélectionnez le modèle Terraform fourni et configurez les variables nécessaires directement dans la console. Oracle Resource Manager détecte automatiquement les variables d'entrée définies dans les fichiers Terraform et les présente sous une forme facile à modifier. A ce stade, vous devrez fournir des détails propres à l'environnement, tels que l'OCID de votre location, le compartiment OCID et d'autres valeurs requises.
Les images suivantes illustrent le processus de création et de configuration de variable stack
dans la console Oracle Cloud.
Tâche 3.3 : Exécuter le travail d'application
Pour plus de simplicité, nous ignorons l'étape Plan
, car l'exécution de Apply
dans Oracle Resource Manager l'exécute automatiquement. En lançant le travail Apply
, Oracle Resource Manager utilise la configuration définie à l'étape Source Configuration
précédente pour provisionner les ressources OKE indiquées dans OCI.
Les images suivantes illustrent l'exécution réussie d'un travail stack Apply
avec les journaux générés.
Tâche 3.4 : Exécuter le travail de destruction
Une fois l'activité ou le test terminé, vous pouvez exécuter le travail Destroy
dans Oracle Resource Manager pour nettoyer l'environnement. Cette action demande à Oracle Resource Manager de déprovisionner (purger) toutes les ressources d'infrastructure précédemment créées dans le cadre de la pile, y compris le cluster OKE, les pools de noeuds, les composants réseau et tous les services associés. L'exécution de Destroy
garantit que les ressources inutilisées sont entièrement enlevées, ce qui vous aide à éviter les coûts inutiles et à maintenir une location OCI propre.
Etapes suivantes
L'utilisation de Terraform pour provisionner un cluster OKE offre une approche cohérente, reproductible et automatisée de la gestion de l'infrastructure Kubernetes sur Oracle Cloud Infrastructure (OCI). Avec Infrastructure as Code (IaC), les équipes peuvent orchestrer la création de clusters, appliquer les meilleures pratiques et intégrer des workflows d'intégration continue et de déploiement continu dans leurs processus de déploiement. Oracle Resource Manager l'améliore en simplifiant les opérations Terraform, en gérant l'état et en favorisant la collaboration au sein d'OCI. Ce tutoriel sert d'introduction conviviale pour les débutants. Dans notre prochain guide avancé, nous aborderons les modules personnalisables, l'automatisation de la production, les modèles d'architecture modulaire et l'intégration complète de l'intégration continue et du déploiement continu. Restez à l'écoute pour une approche plus évolutive, sécurisée et adaptée à l'entreprise de la gestion de Kubernetes à grande échelle.
Liens connexes
Accusés de réception
- Auteurs - Mahamat Guiagoussou (architecte principal du cloud résident), Payal Sharma (architecte principal du cloud résident)
Ressources de formation supplémentaires
Explorez d'autres ateliers sur le site docs.oracle.com/learn ou accédez à d'autres contenus d'apprentissage gratuits sur le canal Oracle Learning YouTube. En outre, visitez le site education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.
Pour obtenir de la documentation sur le produit, consultez Oracle Help Center.
Create Oracle Cloud Infrastructure Kubernetes Engine Cluster using Terraform
G38265-01
Copyright ©2025, Oracle and/or its affiliates.