0

Kubernetes – Explorando un Cluster de Kubernetes con VMware Octant.

Kubernetes – Explorando un Cluster de Kubernetes con VMware Octant.

VMware se ha montado en el ecosistema de Kubernetes, luego de adquirir Heptio, VMware recibió varias plataformas opensource tales como Velero y Sonobuoy.

Sin embargo, no solo estan las que llegaron via Heptio, un ejemplo notable es Octant, hace unos meses me tope con esta aplicacion en la cuenta de Github de Vmware mientras buscaba informacion sobre Tanzu.

https://github.com/vmware-tanzu/octant

Octant es una aplicacion para que los desarrolladores (¡¡también los administradores!!) entiendan como las aplicaciones son ejecutadas en Kubernetes. Con la información presentada en Octant se muestra de una manera mas clara la relacion entre Ingress, Services, Pod y Deployments. Desde hace un tiempo estoy usando Rancher, no planeo reemplazarlo ya que Octant esta pensado para ser ejecutado desde el desktop usando el kubeconfig local, desde mi punto de vista es una aplicación de diagnóstico.

Ya lo quiero, como lo consigo?

El proyecto provee varias formas de instalación, yo he usado una mezcla del empaquetado .deb y Docker.

Aquí esta el dockerfile que he usado, esta algo crudo y merece mejoras.

FROM debian:buster-slim
RUN apt-get update && apt-get install -y \
apt-transport-https \
ca-certificates \
curl

RUN mkdir /octant && cd /octant && curl -o octant.deb -L https://github.com/vmware-tanzu/octant/releases/download/v0.8.0/octant_0.8.0_Linux-64bit.deb && dpkg -i octant.deb

ENV OCTANT_LISTENER_ADDR=0.0.0.0:8080
ENV OCTANT_DISABLE_OPEN_BROWSER=true

VOLUME ["/root/.kube"]
ENTRYPOINT ["octant"]

 

Para crear la imagen de Octant hacemos lo siguiente:

docker build . -t aredan/octant

El resultado será una imagen en Docker con el nombre aredan/octant la cual podemos usar de la siguiente manera:

docker run -it -p 8080:8080 -v /home/ariel/.kube/:/root/.kube/ aredan/octant

Ya Podemos acceder al Dashboard de Octant, recordar que Octant utiliza el kubeconfig que este en el home directory especificado en el Docker run y que solo tendrá acceso al cluster asociado a ese config. Aun no existe manera de cargar configuraciones de conexión a cluster independientes al config del usuario.

http://localhost:8080

Partiendo de este punto lo siguiente seria entender como Octant encaja en el día a día de un administrador de Kubernetes o un desarrollador que quiere entender como una actualización afecta su aplicación corriendo en k8s.

Aquí un video de VMware Cloud Native Apps con bastante información acerca del proyecto.

https://www.youtube.com/watch?v=D5PLsXP9aPc

0

Kubernetes – Almacenamiento con Rancher Longhorn, Parte2.

Kubernetes – Almacenamiento con Rancher Longhorn, Parte2.

Announcing Longhorn: an open source project for microservices-based distributed block storage

En esta edición de mis aventuras con #k8s, acabo de instalar una implementación de almacenamiento desarrollada por Rancher. Desde mi punto de vista es parte2 porque fue la primera solución de almacenamiento distribuido que utilice hace meses, pero tenía varios temas, por ejemplo, cuando un pod era eliminado y este tenía un pvc montado, muchas veces no eran eliminados junto con su pod/deployment, otras veces si el pod/deployment era relanzado, el pvc tardaba minutos en montarse al pod.

Hace unos meses lanzaron nueva versión y tiene bastantes mejoras, además he tenido experiencias con Linstor que en mi pequeño ambiente son algo incomodas, actualmente tengo un controller de Linstor, si esta falla, falla la creación de volúmenes y por consecuente la creación de pods.

Instalar Longhorn es increíblemente fácil, con tan solo ejecutar kubectl -f url/de/yaml tendremos en marcha nuestro almacenamiento distribuido. Usando Rancher UI es mucho mas fácil, así lo he hecho esta vez, la ventaja de hacerlo desde Rancher UI es que podemos acceder al Dashboard de Longhorn desde Rancher usando las mismas credenciales.

https://rancher.com/blog/2017/announcing-longhorn-microservices-block-storage/

En ese enlace se puede leer sobre el diseño de Longhorn:

Storage Orchestration
Replica Operations
Replica Rebuild
Backup of Snapshots
Deployment Models

Documentar el proceso de instalación está de más, en YouTube podemos ver el video de Adrian Goins.

https://www.youtube.com/watch?v=q5JzZbiw4LE

Y para los que quieren entender más a profundidad como funciona Longhorn, les recomiendo ver un video de Rancher Labs titulado: Kubernetes Master Class – Using Persistent Storage in Kubernetes and Project Longhorn.

https://www.youtube.com/watch?v=BnHMAJ8azBU&t=

En los próximos días estaré moviendo todo lo que tengo en Linstor a Longhorn, espero no perder información en el proceso!!!