Conviértete en un Jedi de Kubernetes con Alfred Workflows

Se trata de productividad.

En los últimos años aquí en FairFly, hemos estado trabajando con Kubernetes, una excelente herramienta de orquestación de contenedores que nos ayuda a administrar todos nuestros servicios e implementaciones.

Kubernetes es un sistema de código abierto para automatizar la implementación, el escalado y la administración de aplicaciones en contenedores que fue diseñado originalmente por Google (fuente: Wikipedia)

En esta publicación, me gustaría presentarles cómo hemos logrado obtener el dominio y administrar de manera más eficiente todos nuestros activos de kubernetes mediante el uso de una gran herramienta llamada flujos de trabajo de Alfred que utilizamos y nos preocupamos aquí en FairFly. Esto, y nuestra pasión por la productividad y la eficiencia, ha llevado a nuestro equipo de I + D a una era más rápida y productiva.

A partir de este momento, supondré que está familiarizado con la tecnología y que tiene una experiencia intermedia.

En la edad oscura ... solo había kubectl

Kubernetes le ofrece una buena herramienta de CLI llamada: kubectl

Kubectl: una interfaz de línea de comandos para ejecutar comandos contra clústeres de Kubernetes (desde la página de descripción general de kubectl de kubernetes.io)

Nos encontramos realizando varias tareas diarias usando kubectl, de una manera tan poco productiva; eso incluye ver registros, "ejecutar en pods", ver el proceso de inicialización de la implementación, eliminar activos o simplemente visitar nuestro Panel de control de Kubernetes.

Además, kubectl tiene autocompletado pero es súper lento, la búsqueda no es lo suficientemente buena y no proporciona suficiente información sobre el contexto, como ¿cuántos pods están activos para la implementación? ¿Cuál es su estado? etc.

Por ejemplo, para obtener registros, los registros del comando kubectl requieren como argumento. Ahora tenemos que encontrar el nombre del pod que queremos, ya sea escribiendo $ kubectl get pods o usando la función de autocompletar.

Este proceso es súper lento, así que tuve que encontrar una manera de hacerlo más eficiente (¿mencioné que somos fanáticos de la productividad?), Así que comencé a usar etiquetas que me ayudaron a encontrar un subconjunto de recursos un poco más rápido, pero incluso eso no fue No es lo suficientemente rápido. Incluso la navegación del historial bash (CTRL + R) no satisfizo mis necesidades de eficiencia.

¡Y entonces me di cuenta!

Presentamos Alfred Workflow.

Para aquellos que no están familiarizados con Alfred, ustedes se están perdiendo.
Alfred (alternativas que puede verificar: Wox, Hain) es un corredor de tareas de Mac OS que amplía en gran medida lo que puede hacer Spotlight, le permite ser más productivo con acciones personalizadas, por ejemplo, abrir aplicaciones, ejecutar scripts y usar la mayoría de las funciones de su sistema operativo Como desees; siendo más rápido que nunca! Y lo más importante, le permite diseñar flujos de trabajo completamente personalizados.

Ejemplo simple de flujo de trabajo de lista de tareas - www.alfredapp.com

Kubernetes Alfred Workflow

Decidí crear un flujo de trabajo personalizado para que la magia suceda
(descárguelo aquí) creando un conjunto de comandos que envuelven kubectl y brinden las capacidades de búsqueda y finalización que tanto echamos de menos. Estos comandos incluyen nuestras operaciones diarias más comunes, como los registros de seguimiento, "ejecutar en contenedores, etc."

Paso 1 - Configuración rápida

ksetenv - abrirá un menú para
- La URL de su tablero (¡debe!)
- Su ruta local kubectl
(predeterminado: / usr / local / bin / kubectl)

  • Instale kubetail (must!): Secuencia de comandos Bash para seguir los registros de Kubernetes de varios pods al mismo tiempo. ($ brew install kubetail)

Paso 2 - Usa la Fuerza

Una lista de los comandos disponibles.kl (registros)

kl - Obtener registros de recursos.
ks: accede a cualquier shell de pod.
kw - Mira y describe recursos.
kr - Eliminar activos rápidamente. No se preocupe, presionar ⏎ no eliminará nada, tendrá que mantener presionada la tecla MAYÚS + ⏎ para ejecutar.
kre: elimina las vainas desalojadas.
kd: ir al panel de control.
kds: explore sus activos en el tablero de instrumentos.

Bonificación: Pods de monitor de DataDog (comando kdm)

Supervisamos nuestros activos con DataDog, la obtención de métricas como memoria / CPU lleva algún tiempo, debe navegar a DataDog → Métricas → Explorador, en la sección Gráfica, elija todas las métricas que desea ver y luego seleccione Sobre sus recursos ... es frustrante.
Para este uso específico, he creado el comando kdm Alfred, donde eliges tu recurso de la lista y obtienes un resumen instantáneo en DataDog.

kdm

Explore sus métricas de activos en DataDog.

Conclusión

Como probablemente haya visto, ¡en Fairfly somos fanáticos de la productividad! Utilizamos flujos de trabajo personalizados de Alfred para casi todo y constantemente buscamos mejorar y hacer que nuestro trabajo en equipo e infraestructura sean mejores y más rápidos. Espero que encuentre el tiempo para usar este flujo de trabajo. Creamos esta caja de herramientas para usted. Es GRATIS.
No dude en ponerse en contacto para cualquier comentario, sugerencias de flujos de trabajo y más en eldar@fairfly.com.