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.
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.
Navegar a tu directorio de trabajo:
Abre la terminal y navega hasta la carpeta de proyecto predeterminada:
cd /home/labex/projectIniciar 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.
Verificar que Minikube esté en ejecución:
Comprueba el estado del clúster de Minikube:
minikube status- Busca componentes como
kubeletyapiserverlistados comoRunning(En ejecución). - Si el clúster no está en ejecución, vuelve a ejecutar
minikube start.
- Busca componentes como
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.


