Création de scripts Cloud-init pour les noeuds autogérés

Découvrez comment créer le script cloud-init pour un noeud auto-géré que vous souhaitez ajouter à une grappe améliorée créée avec Kubernetes Engine.

Lors de la création d'un noeud auto-géré à ajouter à une grappe améliorée, vous devez fournir un script cloud-init qui spécifie le point d'extrémité privé de l'API Kubernetes de la grappe et le certificat AC encodé par base64.

Pour créer le script cloud-init pour un noeud auto-géré :

  1. Obtenez le point d'extrémité privé de l'API Kubernetes de la grappe améliorée à laquelle vous voulez ajouter le noeud auto-géré à l'aide de la console ou de l'interface de ligne de commande :
    • Utilisation de la console :
      1. Ouvrez le menu de navigation et sélectionnez Services de développement. Sous Conteneurs et artefacts, sélectionnez Grappes Kubernetes (OKE).
      2. Dans la page Liste de grappes, sélectionnez le nom de la grappe améliorée à laquelle vous voulez ajouter le noeud autogéré.

        Dans la page Détails de la grappe, le point d'extrémité privé de l'API Kubernetes est affiché, y compris le numéro de port. Par exemple : 10.0.103.170:6443

      3. Notez le point d'extrémité privé de l'API Kubernetes de la grappe, sans le numéro de port. Par exemple : 10.0.103.170
    • Utilisation de l'interface de ligne de commande :
      1. Entrer :
        oci ce cluster create-kubeconfig --cluster-id <cluster-ocid> --region <region-identifier> --kube-endpoint PRIVATE_ENDPOINT --file - \
        | grep -oE "https://[0-9\.]+:6443" \
        | sed -E 's^https://([0-9\.]+):.*^\1^' 

        La commande grep extrait l'URL du point d'extrémité de la grappe à partir de la sortie de la commande ce cluster create-kubeconfig. La commande sed supprime les informations de protocole et de port de l'URL du point d'extrémité de la grappe pour ne laisser que l'adresse IP.

      2. Notez le point d'extrémité privé d'API Kubernetes de la grappe. Par exemple : 10.0.103.170
  2. Obtenez le certificat AC encodé par base64 de la grappe à partir du fichier kubeconfig de la grappe à l'aide de la console ou de l'interface de ligne de commande :
    • Utilisation de la console :
      1. Dans la page Détails de la grappe, notez l'OCID de la grappe. Par exemple, ocid1.cluster.oc1.phx.aaaaaaaa______ivq
      2. Sélectionnez Accéder à la grappe.
      3. Dans la boîte de dialogue Accéder à votre grappe, sélectionnez Accès à Cloud Shell et sélectionnez Lancer Cloud Shell.
      4. Dans la fenêtre Cloud Shell, entrez la commande suivante :
        oci ce cluster create-kubeconfig --cluster-id <cluster-ocid> --region <region-identifier> --file - | grep -oE "LS0t.*"

        où :

        • <cluster-ocid> est la valeur du paramètre --cluster-id affichée à l'étape 2 de la boîte de dialogue Accéder à votre grappe.
        • <region-identifier> est la valeur du paramètre --region affichée à l'étape 2 de la boîte de dialogue Accéder à votre grappe.

        Par exemple :

        oci ce cluster create-kubeconfig --cluster-id ocid1.cluster.oc1.phx.aaaaaaaa______ivq --region us-phoenix-1 --file - | grep -oE "LS0t.*"

        Le certificat AC encodé par base64 est affiché dans la fenêtre Cloud Shell sous la forme d'une chaîne alphanumérique longue commençant par les caractères LS0t.

      5. Notez le certificat AC encodé par base64 de la grappe.
    • Utilisation de l'interface de ligne de commande :
      1. Entrez :
        oci ce cluster create-kubeconfig --cluster-id <cluster-ocid> --region <region-identifier> --file - | grep -oE "LS0t.*"

        Le certificat AC encodé par base64 est affiché dans la fenêtre Cloud Shell sous la forme d'une chaîne alphanumérique longue commençant par les caractères LS0t.

      2. Notez le certificat AC encodé par base64 de la grappe.
  3. Créez le script cloud-init comme suit :
    1. Dans un éditeur de texte de votre choix, créez un nouveau fichier texte.
    2. Copiez et collez le script suivant dans le fichier :
      #!/usr/bin/env bash
      bash /etc/oke/oke-install.sh \
        --apiserver-endpoint "<cluster-endpoint>" \
        --kubelet-ca-cert "<base64-encoded-certificate>"

      où :

      • <cluster-endpoint> est le point d'extrémité privé de l'API Kubernetes de la grappe que vous avez obtenu précédemment (sans le numéro de port). Par exemple : 10.0.103.170
      • <base64-encoded-certificate> est le certificat d'autorité de certification encodé en base64 de la grappe que vous avez obtenu précédemment (commençant par les caractères LS0t).

      Par exemple :

      #!/usr/bin/env bash
      bash /etc/oke/oke-install.sh \
        --apiserver-endpoint "10.0.103.170" \
        --kubelet-ca-cert "LS0t______UtLS0tLQo="
    3. Enregistrez le fichier texte à utiliser lorsque vous créez le noeud autogéré.