Création d'un fichier de configuration Kubernetes
Sur Compute Cloud@Customer, vous pouvez configurer un fichier de configuration Kubernetes pour chaque cluster OKE avec lequel vous travaillez. Le fichier de configuration Kubernetes vous permet d'accéder aux clusters OKE à l'aide de la commande kubectl
et du tableau de bord Kubernetes.
Les fichiers de configuration Kubernetes organisent les informations sur les clusters, les utilisateurs, les espaces de noms et les mécanismes d'authentification. Vous pouvez définir des contextes pour basculer facilement entre les clusters et les espaces de noms. L'outil kubectl
utilise les fichiers de configuration Kubernetes pour trouver les informations dont il a besoin pour choisir un cluster et communiquer avec le serveur d'API d'un cluster.
Installation de l'outil de ligne de commande Kubernetes
Installez et configurez l'outil de ligne de commande Kubernetes kubectl
. L'outil kubectl
vous permet d'effectuer des opérations sur des clusters OKE, tels que le déploiement d'applications, l'inspection et la gestion des ressources de cluster et la visualisation des journaux.
Pour installer kubectl
, reportez-vous à Outils d'installation de Kubernetes. La version kubectl
doit se trouver dans une version mineure de la version de Kubernetes du cluster OKE. Par exemple, un client v1.29 peut communiquer avec les plans de contrôle v1.28, v1.29 et v1.30. Reportez-vous à Versions de Kubernetes prises en charge.
Pour plus d'informations, y compris la liste complète des opérations kubectl
, reportez-vous à la page de référence https://kubernetes.io/docs/reference/kubectl/.
Création d'un fichier de configuration Kubernetes
Utilisez l'interface de ligne de commande pour créer votre fichier de configuration Kubernetes.
Le bouton Démarrage rapide sur la page de détails d'un cluster de la console Compute Cloud@Customer indique comment créer un fichier de configuration Kubernetes et fournit l'OCID du cluster.
-
Obtenez l'OCID du cluster :
oci ce cluster list
-
Exécutez la commande oci ce cluster create-kubeconfig comme décrit pour créer le fichier de configuration :
L'option
--cluster-id
est requise.La valeur par défaut de l'option
--file
est~/.kube/config
. Si vous disposez déjà d'un fichier à l'emplacement spécifié et que vous souhaitez le remplacer, utilisez l'option--overwrite
. Pour gérer plusieurs fichiers de configuration, sélectionnez un autre fichier à l'aide de la variable d'environnementKUBECONFIG
ou de l'option--kubeconfig
.La valeur de l'option
--kube-endpoint
doit êtrePUBLIC_ENDPOINT
.Si vous n'indiquez pas l'option
--profile
, la valeur en cours de la variable d'environnementOCI_CLI_PROFILE
est utilisée. Il est recommandé d'indiquer cette valeur.Si cette option est fournie, la valeur de l'option
--token-version
doit être 2.0.0.Exemple :
Utilisez la commande suivante pour configurer un fichier de configuration Kubernetes pour le cluster indiqué à l'aide de l'adresse publique :
$ oci ce cluster create-kubeconfig --cluster-id ocid1.cluster.unique_ID \ --file $HOME/.kube/config --kube-endpoint PUBLIC_ENDPOINT --profile profile-name New config written to the Kubeconfig file /home/username/.kube/config
Un fichier de configuration Kubernetes inclut une commande d'interface de ligne de commande qui génère dynamiquement un jeton d'authentification et l'insère lorsque vous exécutez une commande
kubectl
. Par défaut, la commande d'interface de ligne de commande dans le fichier de configuration Kubernetes utilise le profil d'interface de ligne de commande en cours lors de la génération d'un jeton d'authentification. Si vous avez défini plusieurs profils dans votre fichier de configuration CLI, utilisez l'une des méthodes suivantes pour spécifier le profil à utiliser lors de la génération du jeton d'authentification. La valeur deprofile-name
est le nom du profil dans le fichier de configuration de l'interface de ligne de commande.-
Assurez-vous que la variable d'environnement
OCI_CLI_PROFILE
est définie sur le profil de la location dans laquelle résideocid1.cluster.unique_ID
. Ce paramètre est ignoré si l'une des méthodes suivantes a été utilisée pour indiquer le profil de ce cluster dans le fichier de configuration Kubernetes. -
Spécifiez l'option
--profile
sur la ligne de commandecreate-kubeconfig
comme indiqué dans l'exemple de commande précédent. -
Modifiez le fichier de configuration généré comme indiqué dans l'exemple suivant.
user: exec: apiVersion: client.authentication.k8s.io/v1beta1 args: - ce - cluster - generate-token - --cluster-id - cluster ocid - --profile - profile-name command: oci env: []
Utilisez la commande suivante pour définir la variable d'environnement
KUBECONFIG
sur le fichier de configuration Kubernetes que vous avez créé ou mis à jour dans la commande précédente :$ export KUBECONFIG=$HOME/.kube/config
La commande suivante affiche le contenu de votre nouveau fichier de configuration YAML :
$ kubectl config view
Si vous réexécutez la commande avec un autre OCID de cluster, les nouvelles informations sont fusionnées avec les informations existantes. Le message suivant apparaît :
Existing Kubeconfig file found at /home/username/.kube/config and new config merged into it
-
Etapes suivantes :
Vérification de l'accès au cluster
Avant d'exécuter les commandes kubectl
, assurez-vous que la variable d'environnement OCI_CLI_PROFILE
est définie sur le nom du profil défini dans le fichier de configuration OCI :
$ export OCI_CLI_PROFILE=<profile-name>
Exécutez la commande suivante pour vérifier que vous pouvez accéder au cluster :
$ kubectl cluster-info
Chaque espace de noms Kubernetes contient au moins un élément ServiceAccount : ServiceAccount par défaut pour cet espace de noms, nommé default
. Si vous n'indiquez pas de paramètre ServiceAccount lorsque vous créez un pod, le service OKE affecte automatiquement le paramètre ServiceAccount nommé default
dans cet espace de noms.
Une application exécutée dans un pod peut accéder à l'API Kubernetes à l'aide d'informations d'identification de compte de service montées automatiquement.
Etapes suivantes :
Création d'un tableau de bord Kubernetes
Le tableau de bord vous aide à gérer le cluster, ainsi qu'à gérer et dépanner les applications exécutées dans le cluster.
Sur le site Kubernetes, reportez-vous à Déploiement et accès au tableau de bord Kubernetes
Etapes suivantes :