Ku­be­r­ne­tes es líder en el mercado de los or­que­s­ta­do­res de clústeres di­s­tri­bui­dos, pero ahora también existen bastantes al­te­r­na­ti­vas in­te­re­sa­n­tes. Cada una tiene sus ventajas e in­co­n­ve­nie­n­tes, así como distintas po­si­bi­li­da­des de usos, desde clústeres locales sencillos para el propio entorno de de­sa­rro­llo, hasta sistemas di­s­tri­bui­dos de alta di­s­po­ni­bi­li­dad con decenas de miles de nodos. Te pre­se­n­ta­mos las mejores so­lu­cio­nes.

¿Por qué destacan las al­te­r­na­ti­vas de Ku­be­r­ne­tes?

Tras la marcha triunfal de Docker como pla­ta­fo­r­ma de vi­r­tua­li­za­ción de co­n­te­ne­do­res, Ku­be­r­ne­tes se ha es­ta­ble­ci­do como he­rra­mie­n­ta estándar para la or­que­s­ta­ción de co­n­te­ne­do­res. Sin embargo, el alcance de fu­n­cio­na­mie­n­to de Ku­be­r­ne­tes va mucho más allá de la gestión de grupos de co­n­te­ne­do­res. Ku­be­r­ne­tes au­to­ma­ti­za el de­s­plie­gue, la gestión y el escalado de apli­ca­cio­nes en co­n­te­ne­do­res. Las apli­ca­cio­nes dirigidas con Ku­be­r­ne­tes tienen alta di­s­po­ni­bi­li­dad y son es­ca­la­bles y pre­de­ci­bles. Además, Ku­be­r­ne­tes da apoyo a las si­guie­n­tes ca­ra­c­te­rí­s­ti­cas:

  • Rollout y rollback au­to­ma­ti­za­dos de los cambios
  • De­s­cu­bri­mie­n­to de servicios dentro de la red
  • Or­que­s­ta­ción de al­ma­ce­na­mie­n­to masivo
  • Escalado de apli­ca­cio­nes y servicios
  • Pro­ce­sa­mie­n­to de datos por lotes

No todas las al­te­r­na­ti­vas a Ku­be­r­ne­tes hacen lo mismo, pero muchas de las al­te­r­na­ti­vas ofrecen funciones que van más allá de Ku­be­r­ne­tes. Las más populares son las funciones de confort de cara a la gestión de usuarios, el monitoreo y la seguridad. Algunas de las al­te­r­na­ti­vas utilizan Ku­be­r­ne­tes como base, mientras que otras pueden usarse junto con Ku­be­r­ne­tes. Antes que nada, te pro­po­r­cio­na­re­mos una visión general de los aspectos más im­po­r­ta­n­tes de Ku­be­r­ne­tes y sus al­te­r­na­ti­vas.

Pa­rá­me­tros de apli­ca­ción de Ku­be­r­ne­tes y sus al­te­r­na­ti­vas

Hay di­fe­re­n­tes enfoques para operar clústeres y co­n­te­ne­do­res. Los pa­rá­me­tros de de­s­plie­gue describen cómo se asignan y gestionan los recursos. También de­te­r­mi­nan en qué entornos pueden in­s­ta­lar­se los sistemas y qué tipos de apli­ca­cio­nes pueden uti­li­zar­se:

Pa­rá­me­tros de apli­ca­ción De­fi­ni­ción
Modelo de­s­plie­gue Los clústeres pueden operarse en entornos de nube pública, privada y/o híbrida, o incluso más allá de los entornos
Escalado de recursos Orquestar co­n­te­ne­do­res adi­cio­na­les para el escalado ho­ri­zo­n­tal, adjudicar recursos in­fo­r­má­ti­cos adi­cio­na­les (CPU, memoria) para escalado vertical
Formato app Las apli­ca­cio­nes pueden uti­li­zar­se como co­n­te­ne­do­res Docker en máquinas virtuales o como apli­ca­ción “stand‑alone” (Windows, Java, etc.)
Gestión de red Redes definidas por software (SDN, en inglés) para redes su­pe­r­pue­s­tas, mu­l­ti­di­fu­sión, funciones peer‑to‑peer, etc.
Gestión de al­ma­ce­na­mie­n­to API de al­ma­ce­na­mie­n­to para distintos backends de al­ma­ce­na­mie­n­to como Docker Volume API, Ceph, S3

Tareas de Ku­be­r­ne­tes y al­te­r­na­ti­vas

Tareas De­fi­ni­ción
Or­que­s­ta­ción de co­n­te­ne­do­res y clústeres Iniciar y terminar los co­n­te­ne­do­res y los clústeres que se generan a partir de ellos de manera co­n­ce­r­ta­da; asi­g­nar­les recursos
De­s­cu­bri­mie­n­to de servicios Detectar au­to­má­ti­ca­me­n­te los servicios en la red mediante pro­to­co­los es­pe­cia­les
In­te­gra­ción/de­sa­rro­llo continuo Pipelines CI/CD para rollout estable y continuo de ac­tua­li­za­cio­nes
Monitoreo y registro Su­pe­r­vi­sar los co­n­te­ne­do­res y clústeres y almacenar de manera es­tru­c­tu­ra­da los datos que se produzcan

Es­tru­c­tu­ra de Ku­be­r­ne­tes y al­te­r­na­ti­vas

Ku­be­r­ne­tes y sus al­te­r­na­ti­vas son softwares para la gestión de clústeres di­s­tri­bui­dos. Hay di­fe­re­n­tes maneras de es­tru­c­tu­rar sistemas así. Te mostramos los puntos más im­po­r­ta­n­tes:

Es­tru­c­tu­ra De­fi­ni­ción
Co­m­po­ne­n­tes del sistema ¿Utiliza un único archivo binario o un sistema de co­m­po­ne­n­tes que in­ter­ac­túan?
Co­n­tro­la­dor ¿Qué co­n­tro­la­dor hay para vincular el task scheduler externo, los backends de al­ma­ce­na­mie­n­to o los di­s­po­si­ti­vos físicos?
In­te­r­fa­ces y he­rra­mie­n­tas ¿Qué API y he­rra­mie­n­tas para monitoreo, registro, etc. están di­s­po­ni­bles? ¿Hay in­te­r­fa­ces de línea de comandos (CLI) y/o un WebGUI?
Formato IaC o pla­n­ti­llas ¿En qué lenguaje se definen las apli­ca­cio­nes de in­frae­s­tru­c­tu­ra como código (IaC): HCL, YAML, JSON, etc.?
FOSS frente a versión pro ¿Qué funciones existen para las distintas versiones? ¿Hay soporte especial, o acuerdos de nivel de servicio (SLA)?

Co­m­pa­ra­ti­va entre Ku­be­r­ne­tes y sus al­te­r­na­ti­vas

Ac­tua­l­me­n­te existen en el mercado varios sistemas que ofrecen ca­pa­ci­da­des co­m­pa­ra­bles a Ku­be­r­ne­tes. Di­s­ti­n­gui­mos tres grandes clases:

Al­te­r­na­ti­vas a Ku­be­r­ne­tes De­s­cri­p­ción Ejemplo
Container as a Service (CaaS) Permiten gestionar grandes ca­n­ti­da­des de co­n­te­ne­do­res sin tener que en­ca­r­gar­se de la or­que­s­ta­ción AWS Fargate
Platform as a Service (PaaS) sobre la base de Ku­be­r­ne­tes Se basan en Ku­be­r­ne­tes pero ofrecen funciones de confort y utilidad sencilla OpenShift, Rancher
Or­que­s­ta­do­res de co­n­te­ne­do­res ligeros Permiten orquestar co­n­te­ne­do­res, pero son menos complejos que Ku­be­r­ne­tes Docker Swarm, Nomad

Además, existen al­te­r­na­ti­vas a Ku­be­r­ne­tes como Apache Mesos y Azk, que no entran dentro de ninguna de las clases. Echaremos un vistazo a los si­guie­n­tes sistemas en co­m­pa­ra­ción con Ku­be­r­ne­tes:

  • Docker Swarm
  • Apache Mesos
  • AWS Fargate
  • OpenShift
  • Rancher
  • Nomad
  • Azk

Empecemos con un breve resumen de Ku­be­r­ne­tes:

Ku­be­r­ne­tes

Ku­be­r­ne­tes permite ejecutar y orquestar agru­pa­cio­nes de apli­ca­cio­nes en co­n­te­ne­do­res. Dentro de su alcance de fu­n­cio­na­mie­n­to están la gestión de clústeres, el sche­du­li­ng, el de­s­cu­bri­mie­n­to de servicios, el monitoreo y la gestión de secretos. Con Ku­be­r­ne­tes pueden eje­cu­tar­se clústeres con hasta 5000 nodos y 300 000 co­n­te­ne­do­res. Este software fue ori­gi­na­ria­me­n­te de­sa­rro­lla­do por Google y ac­tua­l­me­n­te se encuentra au­s­pi­cia­do por la “Cloud Native Computing Fou­n­da­tion” (CNCF). Además de Google, gigantes de la industria como Red Hat, Docker e IBM pa­r­ti­ci­pan en su de­sa­rro­llo.

¿Cuáles son las ventajas y de­s­ve­n­ta­jas de Ku­be­r­ne­tes?

Como estándar de la industria, se pueden encontrar im­ple­me­n­ta­cio­nes de Ku­be­r­ne­tes en las in­frae­s­tru­c­tu­ras de la nube pública de los pri­n­ci­pa­les pro­vee­do­res. Co­n­s­ta­n­te­me­n­te se añaden nuevos y útiles de­sa­rro­llos y he­rra­mie­n­tas como “minikube”, “kubeadm” y “K3s”. Estos pro­po­r­cio­nan funciones de confort, si­m­pli­fi­can la in­s­ta­la­ción y ad­mi­ni­s­tra­ción de Ku­be­r­ne­tes y hacen que el software sea eje­cu­ta­ble en hardware más débil.

La mayor de­s­ve­n­ta­ja de Ku­be­r­ne­tes es la co­m­ple­ji­dad del software. Una in­s­ta­la­ción completa de Ku­be­r­ne­tes implica la in­ter­ac­ción de media docena de servicios. La co­n­fi­gu­ra­ción requiere cierto esfuerzo y el software que se ejecuta consume muchos recursos.

¿Para qué ámbitos de apli­ca­ción es pa­r­ti­cu­la­r­me­n­te apropiado Ku­be­r­ne­tes?

Ku­be­r­ne­tes se utiliza para proyectos de Big Data y Machine Learning que requieren el eco­si­s­te­ma Ku­be­r­ne­tes o Helm Charts. Debido a la co­m­ple­ji­dad del software, Ku­be­r­ne­tes es más apropiado para proyectos más grandes con múltiples años de duración y el pre­su­pue­s­to co­rre­s­po­n­die­n­te. Para operar una in­s­ta­la­ción propia, hace falta un equipo dedicado a tiempo completo a su ad­mi­ni­s­tra­ción. De manera al­te­r­na­ti­va, puede re­cu­rri­r­se a una oferta de Managed Ku­be­r­ne­tes en una in­frae­s­tru­c­tu­ra de nube pública.

Consejo

Utiliza nuestro tutorial de Ku­be­r­ne­tes para instalar el or­que­s­ta­dor de clústeres en tu propio ordenador.

Docker Swarm

Docker Swarm es una he­rra­mie­n­ta de Docker para orquestar clústeres que proceden de motores Docker. Un clúster de Swarm consta de nodos maestros (manager) de Swarm que orquestan y gestionan el clúster y de nodos esclavos (worker). Estos últimos tra­n­s­mi­ten las órdenes de los nodos manager para su pro­ce­sa­mie­n­to.

¿Cuáles son las ventajas e in­co­n­ve­nie­n­tes de Docker Swarm como al­te­r­na­ti­va a Ku­be­r­ne­tes?

La mayor ventaja de Docker Swarm es la estrecha in­te­gra­ción del software en el eco­si­s­te­ma Docker. Una vez hemos instalado el motor Docker, podemos empezar a utilizar di­re­c­ta­me­n­te Docker Swarm. Para dirigirlo, se recurre a la conocida interfaz de línea de comandos de Docker. Docker Swarm in­ter­ac­túa con las fu­n­cio­na­li­da­des de Docker y Docker Compose, uti­li­za­n­do su propia API Swarm. El software permite el escalado, el equi­li­brio de carga, el de­s­cu­bri­mie­n­to de servicios y las redes multi‑host.

Si lo co­m­pa­ra­mos di­re­c­ta­me­n­te con Ku­be­r­ne­tes, Docker Swarm ofrece menos opciones de pe­r­so­na­li­za­ción y ex­te­n­sio­nes. En general, la gama de funciones es menor.

¿Para qué usos es pa­r­ti­cu­la­r­me­n­te apropiado Docker Swarm?

Docker Swarm es es­pe­cia­l­me­n­te adecuado para procesar pequeñas cargas de trabajo. Si contamos con un entorno en Docker, podemos uti­li­zar­lo fá­ci­l­me­n­te con Docker Swarm para orquestar los clústeres de co­n­te­ne­do­res.

Apache Mesos

El proyecto de Apache Mesos se basa en los mismos pri­n­ci­pios que el núcleo de Linux, solo que se han im­ple­me­n­ta­do en otro plano de ab­s­tra­c­ción. El núcleo de Mesos se ejecuta en cada máquina del clúster y está di­s­po­ni­ble para API de apli­ca­cio­nes como Hadoop, Spark, Kafka y Ela­s­ti­c­sea­r­ch. Mesos te permite di­s­tri­buir la gestión y el sche­du­li­ng de recursos entre centros de cálculo y entornos en la nube.

¿Cuáles son las ventajas e in­co­n­ve­nie­n­tes de Apache Mesos como al­te­r­na­ti­va a Ku­be­r­ne­tes?

Apache Mesos abstrae los recursos in­fo­r­má­ti­cos como la CPU y las memorias de gran capacidad y de trabajo de las máquinas reales, de manera que pueden escalarse clústeres de decenas de miles de nodos. Además, se utilizan nodos manager y agentes re­du­n­da­n­tes con to­le­ra­n­cia a fallos, que según las ne­ce­si­da­des pueden recibir ac­tua­li­za­cio­nes sin in­te­rru­p­cio­nes. Dentro de un clúster, las apli­ca­cio­nes nativas de la nube y las apli­ca­cio­nes heredadas pueden operarse como base. El software funciona con Linux, macOS y Windows y contiene una su­pe­r­fi­cie web para ad­mi­ni­s­trar clústeres y co­n­te­ne­do­res.

Mesos está diseñado para sistemas con múltiples clústeres y alta es­ca­la­bi­li­dad. El software opera con un nivel de ab­s­tra­c­ción inferior al de Ku­be­r­ne­tes, por lo que no es tan útil para clústeres pequeños de menos de una docena de nodos.

¿Para qué es­ce­na­rios de uso es es­pe­cia­l­me­n­te adecuado Apache Mesos?

Apache Mesos permite construir sistemas di­s­tri­bui­dos elásticos y con to­le­ra­n­cia a fallos. El software es pa­r­ti­cu­la­r­me­n­te apto para sistemas grandes diseñados para la máxima re­du­n­da­n­cia.

AWS Fargate

AWS Fargate es un motor in­fo­r­má­ti­co sin servidor para co­n­te­ne­do­res que sigue el modelo Container as a Service. Al utilizar Fargate, se pone el foco en la apli­ca­ción en vez de la in­frae­s­tru­c­tu­ra. Para una apli­ca­ción en co­n­te­ne­do­res, se de­te­r­mi­nan los re­qui­si­tos de red, al­ma­ce­na­mie­n­to masivo, es­ca­la­bi­li­dad y similares. Fargate se encarga de gestionar los recursos ne­ce­sa­rios re­cu­rrie­n­do a sus te­c­no­lo­gías hermanas Amazon Elastic Container Service (ECS) y Amazon Elastic Ku­be­r­ne­tes Service (EKS).

¿Qué ventajas e in­co­n­ve­nie­n­tes tiene AWS Fargate como al­te­r­na­ti­va a Ku­be­r­ne­tes?

La ventaja principal de AWS Fargate es la gran atención que presta al plano de la apli­ca­ción. Como no hemos de preo­cu­par­nos por el apro­vi­sio­na­mie­n­to de la in­frae­s­tru­c­tu­ra, nos libramos del so­bre­co­s­te pro­ce­de­n­te de la ad­mi­ni­s­tra­ción y el escalado de los se­r­vi­do­res. Fargate escala de manera elástica los recursos re­que­ri­dos para que no haga falta apro­vi­sio­nar en exceso los se­r­vi­do­res para los picos de carga. Así, solo se paga por las ca­pa­ci­da­des in­fo­r­má­ti­cas de las que se hace uso. En el plano de la seguridad, Fargate destaca por el ai­s­la­mie­n­to integral de la apli­ca­ción.

AWS Fargate hace que usar Ku­be­r­ne­tes sea cómodo. No obstante, puede suponer también un aumento de los costes. Además, proteger al usuario frente a te­c­no­lo­gías fu­n­da­me­n­ta­les implica que haya menos po­si­bi­li­da­des de control e in­flue­n­cia.

¿Para qué usos es más apropiado AWS Fargate?

Con AWS Fargate, es posible im­ple­me­n­tar apli­ca­cio­nes, API, ar­qui­te­c­tu­ras de mi­cro­se­r­vi­cios y pro­ce­sa­mie­n­to de datos por lotes. Fargate ejecuta apli­ca­cio­nes en co­n­te­ne­do­res y las escala en función de las ne­ce­si­da­des. Este software también se utiliza para la formación en materia de in­te­li­ge­n­cia ar­ti­fi­cial (IA) y apre­n­di­za­je au­to­má­ti­co (machine learning).

OpenShift

La pla­ta­fo­r­ma OpenShift del proveedor Red Hat se basa en Ku­be­r­ne­tes. OpenShift permite orquestar co­n­te­ne­do­res y redes así como gestionar o asignar recursos es­ca­la­bles y di­s­tri­bui­dos. Este software puede de­s­ple­gar­se en múltiples entornos en la nube, entre los que se en­cue­n­tran, tanto las nubes privadas con su propia in­frae­s­tru­c­tu­ra in­fo­r­má­ti­ca, como las in­frae­s­tru­c­tu­ras en la nube de Amazon AWS y Microsoft Azure.

Openshift siempre ha contado, además de con las he­rra­mie­n­tas obli­ga­to­rias de la línea de comandos, con una interfaz web para controlar la fu­n­cio­na­li­dad. Siguiendo el modelo GitOps, los de­sa­rro­lla­do­res deben contener toda la co­n­fi­gu­ra­ción como código. A pesar de que sus nombres se parezcan, la te­c­no­lo­gía OpenShift no se usa con OpenStack.

¿Qué ventajas e in­co­n­ve­nie­n­tes tiene OpenShift como al­te­r­na­ti­va a Ku­be­r­ne­tes?

La gran ventaja de OpenShift yace en que pro­po­r­cio­na a los equipos de de­sa­rro­lla­res un entorno de trabajo co­n­si­s­te­n­te y robusto. In­de­pe­n­die­n­te­me­n­te del entorno que se use (nube pública, privada o híbrida), los de­sa­rro­lla­do­res tienen a su di­s­po­si­ción los mismos enforques para crear, testar y ejecutar apli­ca­cio­nes. Aquí entran sobre todo las “OpenShift Pipelines”, una solución para el de­sa­rro­llo continuo (co­n­ti­nuous de­ve­lo­p­me­nt).

Otro punto fuerte de OpenShift son las he­rra­mie­n­tas de monitoreo y registro in­co­r­po­ra­das, entre las que se encuentra Pro­me­theus, para gestionar el monitoreo y las no­ti­fi­ca­cio­nes, Jaeger para el rastreo de tra­n­sac­cio­nes, Kali para su­pe­r­fi­cies y vi­r­tua­li­za­ción e Istion para la im­ple­me­n­ta­ción de ar­qui­te­c­tu­ras de mi­cro­se­r­vi­cios di­s­tri­bui­das. Además, OpenShift tiene acceso al “Red Hat Container Catalog”, que contiene imágenes de co­n­te­ne­dor probadas y ce­r­ti­fi­ca­das por Red Hat.

Como muchos productos de Red Hat, OpenShift se basa en la di­s­tri­bu­ción comercial de Linux “Red Hat En­te­r­pri­se Linux” (RHEL). Debido a esta de­pe­n­de­n­cia, existe un cierto grado de vendor lock‑in.

¿Para qué usos es pa­r­ti­cu­la­r­me­n­te apropiado OpenShift?

OpenShift es pa­r­ti­cu­la­r­me­n­te adecuado para im­ple­me­n­tar es­tra­te­gias de nube híbrida y para construir y escalar las apli­ca­cio­nes en co­n­te­ne­do­res ne­ce­sa­rias para ello. Las or­ga­ni­za­cio­nes que ya proceden del eco­si­s­te­ma Red Hat se be­ne­fi­cian eno­r­me­me­n­te de utilizar este software.

Rancher

Rancher es otra al­te­r­na­ti­va basada en Ku­be­r­ne­tes. Esta he­rra­mie­n­ta es una pila de software completa para los equipos que dependen de los co­n­te­ne­do­res. El software aborda los desafíos ope­ra­ti­vos y re­le­va­n­tes para la seguridad que pueden surgir al ejecutar múltiples clústeres de Ku­be­r­ne­tes. Rancher pone a di­s­po­si­ción de los equipos de DevOps una interfaz de control ce­n­tra­li­za­da y unifica la gestión de todos los clústeres de Ku­be­r­ne­tes de una or­ga­ni­za­ción. El apro­vi­sio­na­mie­n­to de clústeres, las ac­tua­li­za­cio­nes, así como la gestión de usuarios y políticas entran dentro del alcance de fu­n­cio­na­mie­n­to de Rancher.

¿Cuáles son las ventajas e in­co­n­ve­nie­n­tes de Rancher como al­te­r­na­ti­va a Ku­be­r­ne­tes?

Rancher si­m­pli­fi­ca el de­s­plie­gue de clústeres de Ku­be­r­ne­tes tanto en máquinas físicas como en entornos de nube pública y privada. Los clústeres se protegen mediante políticas globales de seguridad. Utiliza sistemas ce­n­tra­li­za­dos de au­te­n­ti­fi­ca­ción, control de acceso y rastreo. El software evita fallos de clúster y lleva a cabo medidas de rescate y re­s­tau­ra­ción si es necesario. Rancher funciona con diversas di­s­tri­bu­cio­nes de Linux y Ku­be­r­ne­tes y protege del vendor lock‑in. Incluye funciones de confort como active directory, soporte LDAP y SAML, así como apro­vi­sio­na­mie­n­to DNS.

La comunidad de Rancher es co­n­si­de­ra­ble­me­n­te más pequeña que la de Ku­be­r­ne­tes. Además, el software solo es co­m­pa­ti­ble con Linux.

¿Para qué usos es pa­r­ti­cu­la­r­me­n­te apropiado Rancher?

Rancher es apropiado es­pe­cia­l­me­n­te para ad­mi­ni­s­trar múltiples clústeres de Ku­be­r­ne­tes con una interfaz ce­n­tra­li­za­da. Los derechos de usuario pueden asignarse a varios clústeres.

Nomad

Nomad es una he­rra­mie­n­ta de la casa HashiCorp in­te­re­sa­n­te para ad­mi­ni­s­trar y asignar clústeres. El software puede uti­li­zar­se tanto en co­m­bi­na­ción con Ku­be­r­ne­tes como de manera in­de­pe­n­die­n­te. Nomad entra dentro de la gama existente de software de nube y apro­vi­sio­na­mie­n­to de la empresa. Siguiendo la filosofía Unix, HashiCorp prefiere un enfoque modular en el que cada he­rra­mie­n­ta cubre un área de tareas es­tre­cha­me­n­te definido. Algunos ejemplos son Terraform para In­fra­s­tru­c­tu­re as a Code (IaC), Consul para de­s­cu­bri­mie­n­to de servicios y Vault para gestión de secretos.

¿Qué ventajas e in­co­n­ve­nie­n­tes tiene Nomad como al­te­r­na­ti­va a Ku­be­r­ne­tes?

Además de las apli­ca­cio­nes en co­n­te­ne­do­res ha­bi­tua­les, Nomad también da soporte a apli­ca­cio­nes vi­r­tua­li­za­das y “stand alone” tra­di­cio­na­les. A di­fe­re­n­cia de Ku­be­r­ne­tes, Nomad no consta de múltiples co­m­po­ne­n­tes de sistema que in­ter­ac­túan entre sí. Más bien se trata de un software que hace las veces de archivo binario in­di­vi­dual de peso ligero, que se despliega en entornos de de­sa­rro­llo local, entornos de nube, y centros de cálculo públicos y privados.

Nomad ofrece, in­de­pe­n­die­n­te­me­n­te del entorno utilizado, el mismo confort operativo. Con este software pueden de­s­ple­gar­se clústeres de decenas de miles de nodos en múltiples zonas de di­s­po­ni­bi­li­dad, regiones y centros de cálculo. Dentro de sus ca­ra­c­te­rí­s­ti­cas también se encuentra el de­s­plie­gue multi‑clúster.

Como Nomad es un invento re­la­ti­va­me­n­te nuevo, en co­m­pa­ra­ción con Ku­be­r­ne­tes, es un eco­si­s­te­ma mucho más débil. Por eso no hay so­lu­cio­nes Nomad ge­s­tio­na­das de grandes pro­vee­do­res de nube.

¿Para qué usos es pa­r­ti­cu­la­r­me­n­te apropiado Nomad?

Nomad es pa­r­ti­cu­la­r­me­n­te apto para equipos pequeños y medianos que carecen de la capacidad de atender un or­que­s­ta­dor complejo. Además, utilizar Nomad permite ejecutar una mezcla entre apli­ca­cio­nes en co­n­te­ne­do­res y no en co­n­te­ne­do­res (Windows, Java). La sencillez del software permite a los equipos moverse rápido y reac­cio­nar a los re­qui­si­tos ca­m­bia­n­tes de la empresa.

Azk

Azk brinda a los de­sa­rro­lla­do­res una al­te­r­na­ti­va a Ku­be­r­ne­tes muy in­te­re­sa­n­te. La he­rra­mie­n­ta se instala lo­ca­l­me­n­te y permite orquestar entornos de de­sa­rro­llo en la propia máquina. Azk pro­po­r­cio­na una interfaz de línea de comandos; por cada proyecto se crea un archivo de co­n­fi­gu­ra­ción (llamado Azkfile.js) que define el entorno de de­sa­rro­llo, in­clu­ye­n­do las imágenes y co­n­te­ne­do­res Docker, los ajustes de al­ma­ce­na­mie­n­to masivo y de red y las variables de entorno.

¿Qué ventajas e in­co­n­ve­nie­n­tes tiene Azk como al­te­r­na­ti­va a Ku­be­r­ne­tes?

La gran ventaja de Azk es que facilita a los de­sa­rro­lla­do­res la creación de entornos de de­sa­rro­llo locales. Además de un re­po­si­to­rio central que contiene imágenes de los sistemas más uti­li­za­dos, el formato de archivo Azkfile en pa­r­ti­cu­lar co­n­tri­bu­ye a mejorar la ex­pe­rie­n­cia de usuario. Un Azkfile está escrito en un dialecto de Ja­va­s­cri­pt de fácil co­m­pre­n­sión y funciona como receta para crear un entorno de de­sa­rro­llo local. Además, Azk permite generar au­to­má­ti­ca­me­n­te un Azkfile basado en algunos datos.

Como Azk está pri­n­ci­pa­l­me­n­te dirigido a de­sa­rro­lla­do­res web pro­fe­sio­na­les, por ahora no da soporte a Windows.

¿Para qué ámbitos de apli­ca­ción es pa­r­ti­cu­la­r­me­n­te apropiado Azk?

Azk es pri­n­ci­pa­l­me­n­te apto para au­to­ma­ti­zar la in­s­ta­la­ción y or­que­s­ta­ción de entornos de de­sa­rro­llo. De esta manera, es posible definir entornos co­n­si­s­te­n­tes para distintos proyectos dentro de un equipo.

Ir al menú principal