Creación de un archivo de configuración de Kubernetes

En Compute Cloud@Customer, puede configurar un archivo de configuración de Kubernetes para cada cluster de OKE con el que trabaje. El archivo de configuración de Kubernetes le permite acceder a los clusters de OKE mediante el comando kubectl y el panel de control de Kubernetes.

Los archivos de configuración de Kubernetes organizan información sobre clusters, usuarios, espacios de nombres y mecanismos de autenticación. Puede definir contextos para cambiar fácilmente entre clusters y espacios de nombres. La herramienta kubectl utiliza archivos de configuración de Kubernetes para buscar la información que necesita para elegir un cluster y comunicarse con el servidor de API de un cluster.

Instalación de la herramienta de línea de comandos de Kubernetes

Instale y configure la herramienta de línea de comandos de Kubernetes kubectl. La herramienta kubectl le permite realizar operaciones en clusters de OKE, como desplegar aplicaciones, inspeccionar y gestionar recursos de cluster y ver logs.

Para instalar kubectl, consulte Herramientas de instalación de Kubernetes. La versión kubectl debe ser una versión secundaria de la versión de Kubernetes del cluster de OKE. Por ejemplo, un cliente v1.29 puede comunicarse con los planos de control v1.28, v1.29 y v1.30. Consulte Versiones soportadas de Kubernetes.

Para obtener más información, incluida una lista completa de las operaciones kubectl, consulte la página de referencia https://kubernetes.io/docs/reference/kubectl/.

Creación de un archivo de configuración de Kubernetes

Utilice la CLI para crear el archivo de configuración de Kubernetes.

Consejo

El botón Inicio rápido de la página de detalles de un cluster de la consola de Compute Cloud@Customer muestra cómo crear un archivo de configuración de Kubernetes y proporciona el OCID del cluster.

  1. Obtenga el OCID del cluster: oci ce cluster list

  2. Ejecute el comando oci ce cluster create-kubeconfig como se describe para crear el archivo de configuración:

    Se necesita la opción --cluster-id.

    El valor por defecto de la opción --file es ~/.kube/config. Si ya tiene un archivo en la ubicación especificada y desea sustituirlo, utilice la opción --overwrite. Para mantener más de un archivo de configuración, seleccione otro archivo mediante la variable de entorno KUBECONFIG o la opción --kubeconfig.

    El valor de la opción --kube-endpoint debe ser PUBLIC_ENDPOINT.

    Si no especifica la opción --profile, se utiliza el valor actual de la variable de entorno OCI_CLI_PROFILE. La mejor práctica es especificar este valor.

    Si se proporciona, el valor de la opción --token-version debe ser 2.0.0.

    Por ejemplo:

    Utilice el siguiente comando para configurar un archivo de configuración de Kubernetes para el cluster especificado mediante el punto final público:

    $ 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 archivo de configuración de Kubernetes incluye un comando de la CLI que genera dinámicamente un token de autenticación y lo inserta cuando ejecuta un comando kubectl. Por defecto, el comando de la CLI del archivo de configuración de Kubernetes utiliza el perfil de la CLI actual al generar un token de autenticación. Si ha definido varios perfiles en el archivo de configuración de la CLI, utilice uno de los siguientes métodos para especificar el perfil que se utilizará al generar el token de autenticación. El valor de profile-name es el nombre del perfil en el archivo de configuración de la CLI.

    • Asegúrese de que la variable de entorno OCI_CLI_PROFILE está definida en el perfil del arrendamiento en el que reside ocid1.cluster.unique_ID. Este valor se ignora si se ha utilizado uno de los siguientes métodos para especificar el perfil de este cluster en el archivo de configuración de Kubernetes.

    • Especifique la opción --profile en la línea de comandos create-kubeconfig como se muestra en el comando de ejemplo anterior.

    • Edite el archivo de configuración generado como se muestra en el siguiente ejemplo.

      user:
        exec:
          apiVersion: client.authentication.k8s.io/v1beta1
          args:
          - ce
          - cluster
          - generate-token
          - --cluster-id
          - cluster ocid
          - --profile
          - profile-name
          command: oci
          env: []

    Utilice el siguiente comando para definir la variable de entorno KUBECONFIG en el archivo de configuración de Kubernetes que ha creado o actualizado en el comando anterior:

    $ export KUBECONFIG=$HOME/.kube/config

    El siguiente comando muestra el contenido del nuevo archivo de configuración de YAML:

    $ kubectl config view

    Si vuelve a ejecutar el comando con un OCID de cluster diferente, la nueva información se fusiona con la información existente. Se muestra el siguiente mensaje:

    Existing Kubeconfig file found at /home/username/.kube/config and new config merged into it

Siguiente paso:

Verificación del acceso al cluster.

Verificación del acceso al cluster

Antes de ejecutar los comandos kubectl, asegúrese de que la variable de entorno OCI_CLI_PROFILE esté definida en el nombre del perfil definido en el archivo de configuración de OCI:

$ export OCI_CLI_PROFILE=<profile-name>

Ejecute el siguiente comando para confirmar que puede acceder al cluster:

$ kubectl cluster-info

Cada espacio de nombres de Kubernetes contiene al menos un ServiceAccount: el valor por defecto ServiceAccount para ese espacio de nombres, denominado default. Si no especifica un ServiceAccount al crear un pod, el servicio de OKE asigna automáticamente el ServiceAccount denominado default en ese espacio de nombres.

Una aplicación que se ejecuta dentro de un pod puede acceder a la API de Kubernetes mediante credenciales de cuenta de servicio montadas automáticamente.

Siguiente paso:

Creación de un panel de control de Kubernetes.

Creación de un panel de control de Kubernetes

El panel de control le ayuda a gestionar el cluster y a gestionar y solucionar problemas de aplicaciones que se ejecutan en el cluster.

En el sitio de Kubernetes, consulte Despliegue y acceso al panel de control de Kubernetes

Siguiente paso:

Creación de un pool de nodos de trabajador de OKE