Instala apps en tu clúster de Kubernetes con un solo comando gracias a Arkade

Instala apps en tu clúster de Kubernetes con un solo comando gracias a Arkade

En este artículo, te voy a hablar sobre Arkade, una solución de Alex Ellis, que sigue por el camino de la simplificación de Kubernetes. En este caso, te voy a mostrar como instalar Apps en tu clúster, con un solo comando.

Arkade es básicamente una CLI que nos permite instalar charts y apps con un solo comando y lo que viene a resolver es, el hecho de andar buscando entre los readme la versión del paquete Helm que necesitamos. De alguna manera, viene a simplificar esto.

Pueden conocer más sobre este proyecto en el siguiente Github:

alexellis/arkade
Your one-stop CLI for Kubernetes. Contribute to alexellis/arkade development by creating an account on GitHub.

Ahora bien, la instalación es muy sencilla y antes de desplegar una aplicación, veremos como instalarlo.

Cómo desplegar Arkade

Hace unos días, les mostré cómo crear un clúster de Kubernetes en 60 segundos con K3sup. Hoy, vamos a usar esa misma instalación para instalar Arkade.

Por si quieren leer ese artículo, les dejo el enlace:

Cómo desplegar un clúster de Kubernetes en 60 segundos con k3sup
En este artículo te muestro como podés tener tu clúster de Kubernetes en 60 segundos gracias a k3sup.

Ahora bien. Instalar Arkade es realmente tan sencillo que decirle tutorial a esto me da vergüenza, pero aquí vamos.

Desde nuestro shell en el nodo, ejecutamos lo siguiente, no importa si corres en x86 o ARM, la instalación descargará el paquete que es indicado para tu plataforma:

$ sudo curl -sLS https://dl.get-arkade.dev | sudo sh

La terminal devolverá algo como esto:

x86_64
Downloading package https://github.com/alexellis/arkade/releases/download/0.5.1/arkade as /tmp/arkade
Download complete.

Running with sufficient permissions to attempt to move arkade to /usr/local/bin
New version of arkade installed to /usr/local/bin
Creating alias 'ark' for 'arkade'.
            _             _
  __ _ _ __| | ____ _  __| | ___
 / _` | '__| |/ / _` |/ _` |/ _ \
| (_| | |  |   < (_| | (_| |  __/
 \__,_|_|  |_|\_\__,_|\__,_|\___|

Get Kubernetes apps the easy way

Version: 0.5.1
Git Commit: 3c3970eafdca83570d5b1b85902a4957f9dfba16

Ahora, revisemos, ejecutemos lo siguiente:

$ ark

La devolución de eso, será esto:

            _             _
  __ _ _ __| | ____ _  __| | ___
 / _` | '__| |/ / _` |/ _` |/ _ \
| (_| | |  |   < (_| | (_| |  __/
 \__,_|_|  |_|\_\__,_|\__,_|\___|

Get Kubernetes apps the easy way

Usage:
  arkade [flags]
  arkade [command]

Available Commands:
  get         The get command downloads a tool
  help        Help about any command
  info        Find info about a Kubernetes app
  install     Install Kubernetes apps from helm charts or YAML files
  update      Print update instructions
  version     Print the version

Flags:
  -h, --help   help for arkade

Use "arkade [command] --help" for more information about a command.

De esta manera, tenemos instalado Arkade en nuestro nodo. Veamos lo fácil que es desplegar una aplicación con esta solución.

Desplegando Portainer

Mientras preparaba el contenido de este artículo, dije, bueno, corro un NGINX o un Hello World en el puerto 80 y listo, pero dije, vamos a hacerlo un poco más interesante.

Te voy a mostrar como desplegar Portainer en un solo comando, gracias a Arkade.

Solo debemos tipear lo siguiente en nuestra terminal:

$ ark install portainer

La terminal nos responderá con lo siguiente:

Using kubeconfig: /home/ubuntu/.kube/config
Node architecture: "amd64"
=======================================================================
= Portainer has been installed                                        =
=======================================================================


# Open the UI:

kubectl port-forward -n portainer svc/portainer 9000:9000 &

# http://127.0.0.1:9000

# Or access via NodePort on http://node-ip:30777

Find out more at https://www.portainer.io/


Thanks for using arkade!

Noten que detectó mi arquitectura (x64) e instaló en apenas unos segundos Portainer, que dicho sea de paso, tiene soporte para Kubernetes.

Para comprobar de que todo ande, vamos a ir la IP de nuestro nodo, por el puerto 30777 y si todo salió bien, deberíamos ver la pantalla de bienvenida de Portainer:

Para ir cerrando

Así que, como vieron, es muy pero muy sencillo Kubernetes, días pasados son los que todo era complicado desde el primer comando, estás utilidades como K3sup, Arkade y Portainer hacen que sea todo muy sencillo y rápido.

Por supuesto, cómo siempre digo, si ves algún error o tenés dudas o consultas, no dudes en dejar un comentario más abajo.

Bonus Track

El día que se escribió este tutorial, es el día de apreciación del SysAdmin, cada año, el último viernes de julio se festeja. Si sos un SysAdmin, DevOps Engineer, SRE o variante de alguno de estos roles, feliz día. Si estás leyendo esto y sos jefe, tomate un momento para agradecer a quienes te mantienen el negocio Up and Running.

Por último, les cuento que la gente de SysArmy Argentina, organizó este año algo virtual, pueden sumarse a este festejo, están invitados a sumarse desde este Meetup al #AdminFest:

#AdminFest 2020

Friday, Jul 31, 2020, 9:00 PM

Online event
,

48 Admins Attending

El día SysAdmin no se suspende por COVID ! nos juntamos el viernes 31 de julio a las 21hs a compartir un rato, brindar, jugar y ganar premios. Luego pasamos al vivo de Polémica en /var donde vamos a hacer un recorrido por los 11 años de AdminFest y más cervezas.

Check out this Meetup →