Crear un clúster de Azure Kubernetes Service

Completado

Su empresa planea implementar el servicio de representación de vídeo basado en la nube mediante Azure Kubernetes Service (AKS) como plataforma de desarrollo nativa de nube. Pero para poder implementar cualquier aplicación, debe crear el clúster de AKS.

Repasemos algunos conceptos para que pueda implementar correctamente un nuevo clúster de AKS.

Clústeres de Kubernetes

Kubernetes se basa en clústeres. En lugar de tener una sola máquina virtual (VM), usa varias máquinas que funcionan como una sola. Estas máquinas virtuales se denominan nodos. Kubernetes es un orquestador basado en clúster. Proporciona a la aplicación varias ventajas, como las de disponibilidad, supervisión, escalado y actualizaciones graduales.

Nodos de clúster

Un clúster está basado en nodos. En un clúster de Kubernetes hay dos tipos de nodos que proporcionan funcionalidades específicas.

  • Nodos de plano de control: en estos nodos se hospedan los aspectos del plano de control del clúster y se reservan para los servicios que controlan el clúster. Son responsables de proporcionar la API que usted y todos los demás nodos usan para comunicarse. En estos nodos no se implementan ni se programan cargas de trabajo.

  • Nodos: estos nodos se encargan de ejecutar cargas de trabajo y aplicaciones personalizadas, como los componentes del servicio de representación de vídeo basado en la nube.

Arquitecturas de clúster

Use una arquitectura de clúster para conceptualizar el número de nodos y planos de control que se van a implementar en el clúster de Kubernetes.

Por ejemplo, el número de nodos de un clúster siempre debe ser superior a dos. Cuando un nodo deja de estar disponible, el programador de Kubernetes intenta volver a programar todas las cargas de trabajo que se ejecutan en este nodo en los nodos restantes del clúster.

Hay dos arquitecturas de clúster populares para implementaciones basadas en Kubernetes.

Un solo plano de control y varios nodos

Diagrama en el que se muestra un solo plano de control y varios nodos en una configuración de clúster.

La arquitectura de plano de control único para varios nodos por clúster es el patrón de arquitectura más común y el más fácil de implementar, pero no brinda alta disponibilidad a los servicios de administración centrales del clúster.

Si el nodo de plano de control deja de estar disponible por cualquier motivo, no se puede producir ninguna otra interacción con el clúster. Este problema se produce incluso si es el operador, o por cualquier carga de trabajo que use las API de Kubernetes para comunicarse hasta que, al menos, el servidor de API vuelva a estar en línea.

A pesar de estar menos disponible que otras, esta arquitectura debería ser suficiente para la mayoría de las situaciones. Es menos probable que los servicios de administración principales dejen de estar disponibles en comparación con un nodo que se desconecte. Los nodos de plano de control están sujetos a menos modificaciones que los nodos y son más resistentes.

En un escenario de producción, es posible que esta arquitectura no sea la mejor solución.

Un solo plano de control y un solo nodo

Diagrama en el que se muestra un solo plano de control y un solo nodo en una configuración de clúster.

La arquitectura de un solo plano de control para un solo nodo es una variante de la arquitectura anterior y se usa en entornos de desarrollo. Esta arquitectura proporciona un único nodo que hospeda el plano de control y un nodo de trabajo. Resulta útil para probar o experimentar con distintos conceptos de Kubernetes. La arquitectura de un solo plano de control y un solo nodo limita el escalado del clúster y hace que no sea adecuada para usarla en producción y pruebas.

Configuración de un clúster de AKS

Al crear un nuevo clúster de AKS, hay que configurar varios elementos diferentes. Cada elemento afecta a la configuración final del clúster para la asignación de recursos de proceso.

Entre estos elementos se incluyen los siguientes:

  • Grupos de nodos
  • Recuento de nodos
  • Tamaño de la máquina virtual del nodo

Grupos de nodos

Los grupos de nodos se crean para agrupar los nodos del clúster de AKS. Al crear un grupo de nodos, se especifica el tamaño de máquina virtual y el tipo de sistema operativo (Linux o Windows) para cada nodo del grupo de nodos en función de los requisitos de la aplicación. Para hospedar pods de aplicación de usuario, el Modo del grupo de nodos debe ser Usuario; de lo contrario, Sistema.

De manera predeterminada, un clúster de AKS tiene un grupo de nodos Linux (Modo de sistema), independientemente de si se creó mediante la CLI de Azure o Azure Portal. Sin embargo, puede configurarlo para agregar grupos de nodos de Windows junto con grupos de nodos de Linux predeterminados durante el asistente para creación en el portal, con parámetros en la CLI o con plantillas de ARM.

Los grupos de nodos usan Virtual Machine Scale Sets como infraestructura subyacente para permitir que el clúster escale el número de nodos de un grupo. Los nodos que se crean en el grupo de nodos siempre tendrán el mismo tamaño que haya especificado cuando creó el grupo de nodos.

Diagrama en el que se representa un clúster de Kubernetes con dos grupos de nodos. El primer grupo de nodos usa máquinas virtuales NC24s_v2 y el segundo máquinas virtuales B2s estándar.

Recuento de nodos

El recuento de nodos es el número de nodos que tendrá el clúster en un grupo de nodos. Los nodos son máquinas virtuales de Azure. Puede cambiar su tamaño y recuento para que coincidan con el patrón de uso.

Puede cambiar el número de nodos más adelante en el panel de configuración del clúster. También es un procedimiento recomendado mantener este número lo más bajo posible para evitar costos innecesarios y capacidad de proceso sin usar.

Tamaño de la máquina virtual del nodo

Seleccione de un amplio intervalo de especificaciones de máquina virtual. Con fines de desarrollo, elija la serie B para ahorrar costes. En los ejercicios, se usa la serie B2, el tamaño estándar. Para obtener más instrucciones sobre la selección de máquinas virtuales en función de sus necesidades, consulte la herramienta Selector de máquinas virtuales de Azure

Comprobación de conocimientos

1.

¿Cuál de las siguientes describe una arquitectura de clúster de Kubernetes?

2.

¿Qué son los grupos de nodos?

3.

¿Qué hace el complemento de enrutamiento de solicitudes HTTP?