Preparación de la máquina para AKS Edge Essentials
Para mantener una superficie de recursos pequeña con la experiencia más centrada posible, AKS Edge Essentials está diseñado para ejecutar configuraciones predefinidas de AKS en producción.
En el escenario de fábrica industrial, usaremos AKS Edge Essentials para automatizar y ejecutar aplicaciones en contenedores, en varios dispositivos especializados.
Aquí aprenderá a preparar la máquina y definir la cantidad de recursos de CPU y memoria necesarios para asegurarse de que las aplicaciones que se ejecutan en el host tienen los recursos necesarios.
Requisitos de hardware
Especificaciones | Clúster local | Clúster conectado a Arc y GitOps |
---|---|---|
Sistema operativo del host | Windows 10/11 (IoT Enterprise / Enterprise / Pro) o Windows (Server / Server IoT) 2019/2022 | |
Memoria física total | 4 GB con al menos 2,5 GB libres | 8 GB con al menos 4,5 GB libres |
CPU | 2 vCPU, velocidad del reloj al menos 1,8 GHz | 4 vCPU, velocidad del reloj al menos 1,8 GHz |
Espacio en disco | Al menos 14 GB libres | Al menos 14 GB libres |
Para casos de uso de desarrollo y aprendizaje, puede ejecutar AKS Edge Essentials en una máquina virtual (VM) de Azure. Puede crear una máquina virtual de Windows con Windows 10/11 IoT Enterprise/Enterprise/Pro o (Server/Server IoT) 2019/2022, en una imagen de máquina virtual que admita la virtualización anidada.
En nuestro escenario de ejemplo, usaremos una máquina virtual de Azure de la serie Dsv5 de Windows 11 Enterprise.
Clústeres y nodos
AKS Edge Essentials está diseñado para configuraciones estáticas y predefinidas y no habilita la creación o eliminación dinámicas de máquinas virtuales ni la administración del ciclo de vida del clúster. Cada máquina de un clúster de AKS Edge Essentials solo puede tener una máquina virtual Linux o Windows. La máquina virtual Linux actúa como nodo de control y nodo de trabajo para cargas de trabajo de Linux en el clúster de Kubernetes. Cada máquina con AKS Edge Essentials tiene una máquina virtual con RAM, almacenamiento y núcleos de CPU físicos restringidos según una asignación estática asignada en tiempo de instalación. Esta asignación estática le permite controlar cómo se usan los recursos y garantiza que las aplicaciones que se ejecutan en el host tengan los recursos necesarios. AKS Edge Essentials administra el ciclo de vida, la configuración y las actualizaciones de las máquinas virtuales.
Después de configurar las máquinas, puede implementar AKS Edge Essentials en las siguientes configuraciones:
- Clúster de una sola máquina: Ejecuta nodos de Kubernetes en una sola máquina para crear un único clúster de máquinas. Esta implementación usa un conmutador de red interno para habilitar la comunicación entre los nodos. Esta implementación solo admite un nodo de Linux y un nodo de Windows, ambos que se ejecutan en una sola máquina.
- Clúster escalable: Permite crear un clúster de Kubernetes de varios nodos que puede escalarse entre varias máquinas. AKS Edge Essentials no ofrece la creación dinámica de máquinas virtuales. Si una máquina virtual de nodo deja de funcionar, debe volver a crearla. Dicho esto, si tiene un clúster escalable con varios nodos de plano de control y nodos de trabajo, si una máquina virtual deja de funcionar, Kubernetes mueve las cargas de trabajo a un nodo activo.
En nuestro escenario de ejemplo, usaremos un único clúster K3S de máquina con un nodo Linux y un nodo de Windows.
Esquema de implementación para un único clúster K3S de máquina con un nodo Linux y un nodo de Windows
El esquema de implementación de AKS Edge Essentials proporciona una manera flexible y escalable de implementar y administrar aplicaciones en contenedores en dispositivos perimetrales. En la tabla siguiente se describen algunos de los valores usados para implementar AKS Edge Essentials en nuestro escenario de ejemplo:
Attribute | Tipo de valor | Descripción | Value |
---|---|---|---|
DeploymentType |
[SingleMachineCluster / ScalableCluster ] |
Especifica el tipo de implementación. En ScalableCluster , puede agregar más máquinas a la infraestructura del clúster. |
SingleMachineCluster |
Machines[].LinuxNode.CpuCount |
[2-x ] |
Número de núcleos de CPU reservados para una o varias máquinas virtuales. | 2 |
Machines[].LinuxNode.MemoryInMB |
[2048-2x ] |
RAM en MB reservada para máquinas una o varias máquinas virtuales. | 2048 |
Machines[].LinuxNode.DataSizeInGB |
Número | Tamaño de la partición de datos. En el caso de las aplicaciones grandes, se recomienda aumentar este número. Solo para las máquinas virtuales Linux. | 20 |
Machines[].WindowsNode.CpuCount |
[2-x ] |
Número de núcleos de CPU reservados para una o varias máquinas virtuales. | 2 |
Machines[].WindowsNode.MemoryInMB |
[2048-2x ] |
RAM en MB reservada para una o varias máquinas virtuales (múltiplo de 2). | 2048 |