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.

Conseil

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.

  1. Obtenez l'OCID de la grappe : oci ce cluster list

  2. 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'environnement KUBECONFIG ou de l'option --kubeconfig.

    La valeur de l'option --kube-endpoint doit être PUBLIC_ENDPOINT.

    Si vous ne spécifiez pas l'option --profile, la valeur courante de votre variable d'environnement OCI_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 de profile-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éside ocid1.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 commande create-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érifiez l'accès à votre grappe.

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éez un tableau de bord Kubernetes.

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 :

Création d'un groupe de noeuds de travail OKE