Que es Kubectl

Minikube

Prologo: deforma predeterminada Minikube tiene dentro Kuberctl pero no instalado y con el tenemos acceso al plano del control del Cluster de Minikube & Kubernetes cuando ejecutamos el comando juan@x3812server:~$ minikube start.

Que es Kubectl

-. Usar la herramienta de línea de comandos de Kubernetes, kubectl, para desplegar y gestionar aplicaciones en Minikube, la interacción con un cluster local o remoto de Minikube mediante comandos se usa kubectl. Nos permitirá realizar tareas habituales como despliegues, escalar el cluster u obtener información sobre los servicios en ejecución. kubectl es el CLI para interactuar con el servidor de la API de Kubernetes.

 

Instalar-Configurar-kubectl

Descargar los binarios de la última entrega:

Habilita los permisos de ejecución del binario kubectl:

  • In: root@x3812server:/# chmod +x ./kubectl

Mueve el binario dentro de tu PATH:

  • In: root@x3812server:/# sudo mv ./kubectl /usr/local/bin/kubectl

Nota: Otra opción es instalar mediante el gestor de paquetes del sistema https://kubernetes.io/es/docs/tasks/tools/install-kubectl/#instalar-kubectl

 

Comprueba que la versión que se ha instalado es la más reciente:

  • In: root@x3812server:/# kubectl version –client
  • In: root@x3812server:/# kubectl version
  • Out: Client Version: version.Info{Major:»1″, Minor:»23″, GitVersion:»v1.23.3″, GitCommit:»816c97ab8cff8a1c72eccca1026f7820e93e0d25″, GitTreeState:»clean», BuildDate:»2022-01-25T21:25:17Z», GoVersion:»go1.17.6″, Compiler:»gc», Platform:»linux/amd64″}

Algunos ejemplos para Interactuat con la Cli-Kubectl y que no se nos olvide (desde un terminal con acceso de administrador pero sin iniciar sesión como root)

 

Obtener información del cluster:

  • In: juan@x3812server:~$ kubectl cluster-info
  • Out: Kubernetes control plane is running at https://192.168.49.2:8443
  • Out:  CoreDNS is running at https://192.168.49.2:8443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy

Obtener los nodos que forman el cluster:

  • In: juan@x3812server:~$ kubectl get nodes
  • Out: NAME STATUS ROLES AGE VERSION
  • Out: minikube Ready control-plane,master 142m v1.23.1

Listar todos los pods desplegados:

  • In: juan@x3812server:~$ kubectl get pods

Listar todos los objetos desplegados:

  • In: juan@x3812server:~$ kubectl get all
  • Out: NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
  • Out: service/kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 147m

 

Recapitulando:

Esta es herramienta de línea de comandos de MiniKube ¡el terminal! , he expuesto la descarga de los binarios, permisos,comprobar la versión, la información del cluster, los nodos que forman los cluster, listar los pods, objetos, etc.