Création d'un fichier de configuration Kubernetes
Sur Compute Cloud@Customer, vous pouvez configurer un fichier de configuration Kubernetes pour chaque grappe OKE avec laquelle vous travaillez. Votre fichier de configuration Kubernetes vous permet d'accéder aux grappes OKE à l'aide de la commande kubectl
et du tableau de bord Kubernetes.
Les fichiers de configuration Kubernetes organisent les informations sur les grappes, 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 rechercher les informations dont il a besoin pour choisir une grappe et communiquer avec le serveur d'API d'une grappe.
Installation de l'outil de ligne de commande Kubernetes
Installez et configurez l'outil de ligne de commande kubectl
de Kubernetes. L'outil kubectl
vous permet d'effectuer des opérations sur des grappes OKE telles que déployer des applications, inspecter et gérer les ressources de grappe et consulter les journaux.
Pour installer kubectl
, voir Outils d'installation de Kubernetes. La version de kubectl
doit être dans une version mineure de la version de Kubernetes de la grappe OKE. Par exemple, un client v1.29 peut communiquer avec des plans de contrôle v1.28, v1.29 et v1.30. Voir Versions de Kubernetes prises en charge.
Pour plus d'informations, notamment la liste complète des opérations kubectl
, consultez la page de référence https://kubernetes.io/docs/reference/kubectl/.
Créer 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 de la page des détails d'une grappe dans la console Compute Cloud@Customer montre comment créer un fichier de configuration Kubernetes et fournit l'OCID de la grappe.
-
Obtenez l'OCID de la grappe :
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 avez déjà un fichier à l'emplacement spécifié et que vous voulez le remplacer, utilisez l'option--overwrite
. Pour tenir à jour 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 ne spécifiez pas l'option
--profile
, la valeur courante de votre variable d'environnementOCI_CLI_PROFILE
est utilisée. La meilleure pratique consiste à spécifier cette valeur.Si elle 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 la grappe spécifiée à l'aide du point d'extrémité public :
$ 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 contient une commande CLI qui génère un jeton d'authentification de manière dynamique et l'insère lors de l'exécution d'une commande
kubectl
. Par défaut, la commande CLI du fichier de configuration Kubernetes utilise votre profil CLI courant lors de la génération d'un jeton d'authentification. Si vous avez défini plusieurs profils dans votre fichier de configuration d'interface de ligne de commande, 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 votre fichier de configuration d'interface de ligne de commande.-
Assurez-vous que la variable d'environnement
OCI_CLI_PROFILE
est réglée au profil de la location où résideocid1.cluster.unique_ID
. Ce paramètre est ignoré si l'une des méthodes suivantes a été utilisée pour spécifier le profil de cette grappe 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 illustré 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 régler votre variable d'environnement
KUBECONFIG
au 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 OCID de grappe différent, les nouvelles informations sont fusionnées avec les informations existantes. Le message suivant s'affiche :
Existing Kubeconfig file found at /home/username/.kube/config and new config merged into it
-
Étape suivante :
Vérifier l'accès à votre grappe
Avant d'exécuter les commandes kubectl
, assurez-vous que votre variable d'environnement OCI_CLI_PROFILE
est réglée au nom du profil défini dans votre fichier de configuration OCI :
$ export OCI_CLI_PROFILE=<profile-name>
Exécutez la commande suivante pour confirmer que vous pouvez accéder à votre grappe :
$ kubectl cluster-info
Chaque espace de noms Kubernetes contient au moins un ServiceAccount : ServiceAccount par défaut pour cet espace de noms, nommé default
. Si vous ne spécifiez pas de valeur ServiceAccount lorsque vous créez un pod, le service OKE affecte automatiquement la valeur ServiceAccount nommée default
dans cet espace de noms.
Une application s'exécutant dans un pod peut accéder à l'API Kubernetes à l'aide des données d'identification de compte de service montées automatiquement.
Étape suivante :
Créer un tableau de bord Kubernetes
Le tableau de bord vous aide à gérer la grappe et à gérer et dépanner les applications exécutées dans la grappe.
Sur le site Kubernetes, voir Déployer et accéder au tableau de bord Kubernetes
Étape suivante :