Creación de scripts de cloud-init para nodos autogestionados
Descubra cómo crear el script cloud-init para un nodo autogestionado que desea agregar a un cluster mejorado creado con Kubernetes Engine.
Al crear un nodo autogestionado para agregarlo a un cluster mejorado, debe proporcionar un script cloud-init que especifique el punto final privado de la API de Kubernetes del cluster y el certificado de CA codificado con base64.
Para crear el script cloud-init para un nodo autogestionado:
- Obtenga el punto final privado de la API de Kubernetes del cluster mejorado al que desea agregar el nodo autogestionado mediante la consola o la CLI:
- Uso de la consola:
- En la página de lista Clusters, seleccione el nombre del cluster mejorado al que desea agregar el nodo autogestionado. Si necesita ayuda para encontrar la página de lista o el cluster, consulte Listing Clusters.
En la página Detalles de cluster, se muestra el punto final privado de la API de Kubernetes, incluido el número de puerto. Por ejemplo,
10.0.103.170:6443
- Tome nota del punto final privado de la API de Kubernetes del cluster, sin el número de puerto. Por ejemplo
10.0.103.170
- En la página de lista Clusters, seleccione el nombre del cluster mejorado al que desea agregar el nodo autogestionado. Si necesita ayuda para encontrar la página de lista o el cluster, consulte Listing Clusters.
- Uso de la CLI:
- Introducir:
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^'
El comando
grep
extrae la URL del punto final del cluster de la salida del comandoce cluster create-kubeconfig
. El comandosed
elimina la información de protocolo y puerto de la URL del punto final del cluster para dejar solo la dirección IP. - Anote el punto final privado de la API de Kubernetes del cluster. Por ejemplo,
10.0.103.170
- Introducir:
- Uso de la consola:
- Obtenga el certificado de CA con codificación base64 del cluster del archivo kubeconfig del cluster mediante la consola o la CLI:
- Uso de la consola:
- En la página Detalles de cluster, anote el OCID del cluster. Por ejemplo,
ocid1.cluster.oc1.phx.aaaaaaaa______ivq
- Seleccione Acceder al cluster.
- En el cuadro de diálogo Acceso al cluster, seleccione Acceso a Cloud Shell y seleccione Iniciar Cloud Shell.
- En la ventana Cloud Shell, introduzca el siguiente comando:
oci ce cluster create-kubeconfig --cluster-id <cluster-ocid> --region <region-identifier> --file - | grep -oE "LS0t.*"
donde:
<cluster-ocid>
es el valor del parámetro--cluster-id
que se muestra en el paso 2 del cuadro de diálogo Acceso al cluster.<region-identifier>
es el valor del parámetro--region
que se muestra en el paso 2 del cuadro de diálogo Acceso al cluster.
Por ejemplo:
oci ce cluster create-kubeconfig --cluster-id ocid1.cluster.oc1.phx.aaaaaaaa______ivq --region us-phoenix-1 --file - | grep -oE "LS0t.*"
El certificado de CA codificado con base64 se muestra en la ventana de Cloud Shell como una cadena alfanumérica larga que empieza por los caracteres
LS0t
. - Anote el certificado de CA codificado con base64 del cluster.
- En la página Detalles de cluster, anote el OCID del cluster. Por ejemplo,
- Uso de la CLI:
- Introducir:
oci ce cluster create-kubeconfig --cluster-id <cluster-ocid> --region <region-identifier> --file - | grep -oE "LS0t.*"
El certificado de CA codificado con base64 se muestra en la ventana de Cloud Shell como una cadena alfanumérica larga que empieza por los caracteres
LS0t
. - Anote el certificado de CA codificado con base64 del cluster.
- Introducir:
- Uso de la consola:
- Cree el script cloud-init de la siguiente manera:
- En un editor de texto de su elección, cree un nuevo archivo de texto.
- Copie y pegue el siguiente script en el archivo:
#!/usr/bin/env bash bash /etc/oke/oke-install.sh \ --apiserver-endpoint "<cluster-endpoint>" \ --kubelet-ca-cert "<base64-encoded-certificate>"
donde:
<cluster-endpoint>
es el punto final privado de API de Kubernetes del cluster que ha obtenido anteriormente (sin el número de puerto). Por ejemplo10.0.103.170
<base64-encoded-certificate>
es el certificado de CA codificado en base64 del cluster que ha obtenido anteriormente (a partir de los caracteresLS0t
).
Por ejemplo:
#!/usr/bin/env bash bash /etc/oke/oke-install.sh \ --apiserver-endpoint "10.0.103.170" \ --kubelet-ca-cert "LS0t______UtLS0tLQo="
- Guarde el archivo de texto para utilizarlo al crear el nodo autogestionado.