Modificar archivos Kubeconfig

KubernetesKubernetesBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

Los archivos kubeconfig se utilizan para configurar el acceso a un clúster de Kubernetes. Especifican la siguiente información:

  • El clúster a utilizar
  • El usuario con el que autenticarse
  • El contexto a utilizar (que combina un clúster y un usuario)

Por defecto, kubectl utiliza el archivo ~/.kube/config como archivo kubeconfig. Sin embargo, puedes especificar un archivo kubeconfig diferente con la opción --kubeconfig.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL kubernetes(("Kubernetes")) -.-> kubernetes/ConfigurationandVersioningGroup(["Configuration and Versioning"]) kubernetes/ConfigurationandVersioningGroup -.-> kubernetes/config("Config") subgraph Lab Skills kubernetes/config -.-> lab-11297{{"Modificar archivos Kubeconfig"}} end

Iniciar el clúster de Minikube

Antes de crear recursos, necesitas un clúster de Kubernetes en ejecución. Minikube es un entorno ligero de Kubernetes que se ejecuta en tu máquina local.

  1. Navegar a tu directorio de trabajo:

    Abre la terminal y navega hasta la carpeta de proyecto predeterminada:

    cd /home/labex/project
  2. Iniciar Minikube:

    Inicia Minikube para inicializar un clúster de Kubernetes:

    minikube start
    • Este comando configura un clúster de Kubernetes de un solo nodo en tu máquina local.
    • Minikube puede tardar unos minutos en iniciar, dependiendo del rendimiento de tu sistema.
  3. Verificar que Minikube esté en ejecución:

    Comprueba el estado del clúster de Minikube:

    minikube status
    • Busca componentes como kubelet y apiserver listados como Running (En ejecución).
    • Si el clúster no está en ejecución, vuelve a ejecutar minikube start.

Si encuentras problemas al iniciar Minikube, utiliza minikube delete para restablecer el entorno si es necesario.

Ver el archivo kubeconfig

Antes de modificar el archivo kubeconfig, veamos su contenido. Utiliza el siguiente comando para ver el contenido del archivo kubeconfig:

kubectl config view

Este comando muestra todo el archivo kubeconfig, incluyendo todos los clústeres, usuarios y contextos.

Agregar un clúster al archivo kubeconfig

Para agregar un clúster al archivo kubeconfig, utiliza el comando kubectl config set-cluster. Este comando requiere el nombre del clúster, la URL del servidor y los datos de la autoridad de certificación (CA, por sus siglas en inglés). Aquí tienes un ejemplo:

kubectl config set-cluster my-cluster \
  --server=https://kubernetes.default.svc \
  --certificate-authority=/home/labex/.minikube/ca.crt

Este comando agrega un clúster llamado my-cluster al archivo kubeconfig, con la URL del servidor y los datos de la CA especificados.

Agregar un usuario al archivo kubeconfig

Para agregar un usuario al archivo kubeconfig, utiliza el comando kubectl config set-credentials. Este comando requiere el nombre del usuario, el certificado de cliente del usuario y la clave de cliente del usuario. Aquí tienes un ejemplo:

kubectl config set-credentials my-user \
  --client-certificate=/home/labex/.minikube/profiles/minikube/client.crt \
  --client-key=/home/labex/.minikube/profiles/minikube/client.key

Este comando agrega un usuario llamado my-user al archivo kubeconfig, con el certificado de cliente y la clave especificados.

Crear un contexto en el archivo kubeconfig

Para crear un contexto en el archivo kubeconfig, utiliza el comando kubectl config set-context. Este comando requiere el nombre del contexto, el clúster a utilizar y el usuario con el que autenticarse. Aquí tienes un ejemplo:

kubectl config set-context my-context \
  --cluster=my-cluster \
  --user=my-user

Este comando crea un contexto llamado my-context en el archivo kubeconfig, utilizando el clúster my-cluster y el usuario my-user.

Utilizar un contexto en el archivo kubeconfig

Para utilizar un contexto en el archivo kubeconfig, utiliza el comando kubectl config use-context. Este comando requiere el nombre del contexto a utilizar. Aquí tienes un ejemplo:

kubectl config use-context my-context

Este comando establece el contexto actual en my-context, por lo que todos los comandos kubectl subsiguientes utilizarán el clúster y el usuario especificados.

Resumen

En este laboratorio, aprendiste cómo modificar archivos kubeconfig utilizando la herramienta de línea de comandos kubectl. Aprendiste cómo agregar un clúster, un usuario y un contexto al archivo kubeconfig, y cómo utilizar un contexto para autenticarte en un clúster de Kubernetes.