Integración con Rancher
VergeOS se integra con Rancher mediante un controlador de nodo Docker Machine y una extensión de la interfaz de usuario, lo que permite el aprovisionamiento y la administración de clústeres RKE2/K3s en VergeOS desde la interfaz de Rancher.
Descripción general
VergeOS se integra con Rancher a través de un controlador de nodo Docker Machine y una extensión de interfaz de usuario. Juntos, estos componentes nos permiten aprovisionar y administrar clústeres RKE2/K3s en la infraestructura de VergeOS directamente desde la interfaz de Rancher.
Aprovisiona máquinas virtuales de VergeOS como nodos de Kubernetes
Añade a Rancher las credenciales en la nube y la configuración de máquina de VergeOS
Una vez que los clústeres están en ejecución, los Integración con Kubernetes componentes (controlador CSI y administrador del controlador de nube) proporcionan almacenamiento persistente y gestión del ciclo de vida de los nodos; estos funcionan con cualquier clúster de Kubernetes en VergeOS, no solo con los aprovisionados por Rancher.
Requisitos previos
Un entorno VergeOS con acceso a la API
Una instalación de Rancher Server (v2.10+)
Una máquina virtual plantilla con Ubuntu 24.04 y cloud-init instalado
Una clave de API de VergeOS (generada en Configuración de usuario)
kubectlyhelmHerramientas de CLI
Controlador Docker Machine
El controlador Docker Machine es la base de la integración con Rancher. Gestiona todo el ciclo de vida de la VM mediante la API de VergeOS: clona máquinas virtuales plantilla, inyecta claves SSH mediante cloud-init y crea máquinas cuando se aprovisionan clústeres. Cuando se elimina un clúster, el controlador borra automáticamente las VMs que creó.
Cómo funciona
Clona la máquina virtual plantilla con el nombre de máquina solicitado
Configura núcleos de CPU, RAM y cloud-init (claves SSH + nombre de host + user-data opcional)
Redimensiona el disco principal si se especifica un tamaño personalizado
Conecta la VM a la red especificada
Enciende y espera una dirección IP (se prefiere el agente invitado de QEMU, con respaldo a DHCP de la NIC)
Si falla algún paso, el controlador limpia automáticamente la VM creada parcialmente.
Preparación de la máquina virtual plantilla
Antes de aprovisionar clústeres, necesitamos una VM plantilla en VergeOS con lo siguiente:
Obligatorio:
Ubuntu 24.04 (Noble Numbat) — por ahora, el único sistema operativo de plantilla compatible
cloud-init instalado y habilitado — el controlador inyecta claves SSH y establece el nombre de host mediante una carga útil cloud-init MIME multiparte
Recomendado:
agente invitado de QEMU — permite una detección precisa de la IP; sin él, el controlador recurre a las IP de concesión DHCP de la NIC
Detalles específicos de Ubuntu 24.04
El controlador gestiona automáticamente varios aspectos específicos de Ubuntu 24.04 mediante cloud-init:
Configuración DHCP de Netplan — escribe una configuración de netplan que coincide con
en*interfaces condhcp4: true, manejando los cambios de nombre de ranura PCI entre clonesRegeneración del Machine-ID — regenera
/etc/machine-iden cada clon para que cada VM obtenga un identificador de cliente DHCP únicoLimpieza de concesiones DHCP almacenadas — elimina las concesiones DHCP obsoletas heredadas de la plantilla
Requisitos de memoria
Para uso con Rancher, asigne al menos 4 GB de RAM por nodo (se recomiendan 8 GB). Un clúster RKE2 de un solo nodo con Calico CNI se quedará sin memoria con 2 GB.
Docker no es necesario en la plantilla — Rancher instala su propio tiempo de ejecución de contenedores (containerd) mediante el agente del sistema. La plantilla solo necesita cloud-init y el agente invitado.
Requisitos de red
La red de VergeOS especificada en --vergeos-network debe cumplir los siguientes requisitos para que funcionen los clústeres aprovisionados por Rancher.
Se requiere DHCP
La red debe tener DHCP habilitado. El controlador descubre las IP de los nodos mediante el agente invitado de QEMU, y las VM clonadas no recibirán direcciones sin DHCP.
Nodo → Rancher
443
TCP
Registro y comunicación del agente del sistema
Rancher → Nodo
9345
TCP
Registro del nodo RKE2
Rancher → Nodo
6443
TCP
Servidor de API de Kubernetes
Nodo → Internet
443
TCP
Descargar imágenes de contenedor desde los registros
Instalación en Rancher
El controlador de nodos y la extensión de UI se empaquetan juntos en un único chart de Helm. Esto instala el binario del controlador Docker Machine, registra el recurso NodeDriver e implementa la extensión de UI.
A través de la CLI de Helm:
La vergeosHosts es una lista blanca de nombres de host VergeOS a los que el proxy de Rancher puede acceder. Reemplace vergeos.example.com con el/los nombre(s) de host del/de los entorno(s) VergeOS.
A través de la interfaz de Rancher:
Vaya a Extensiones y haga clic en el ⋮ menú > Administrar repositorios
Agregue un nuevo repositorio con la URL
https://verge-io.github.io/helm-chartsVuelva a Extensiones e instale la Extensión VergeOS Node Driver extensión
Una vez instalado, VergeOS aparecerá como una opción de controlador de nodos al crear clústeres.
Uso independiente
El controlador también funciona fuera de Rancher con Docker Machine directamente:
Para ver la lista completa de flags del controlador y variables de entorno, consulte el repositorio del controlador en Documentación y recursos a continuación.
Extensión de la interfaz de usuario
La extensión de UI agrega componentes específicos de VergeOS a la interfaz de Rancher, proporcionando una experiencia nativa al crear credenciales en la nube y configurar máquinas.
Lo que agrega
Formulario de credencial en la nube — solicita:
URL del host VergeOS
Clave de API (almacenada como un secreto de Rancher)
Conmutador de verificación TLS
Formulario de configuración de máquina — proporciona:
Nombre de la VM plantilla (nombre de la VM de VergeOS que se clonará)
Nombre de la red (VNet de VergeOS al que conectarse)
Entradas para núcleos de CPU, RAM y tamaño de disco
Campo de user-data de cloud-init
Configuración de usuario SSH y puerto
Resumen
La integración con Rancher consta de dos componentes empaquetados en un único chart de Helm:
Controlador Docker Machine — clona las VMs plantilla de VergeOS y administra su ciclo de vida para el aprovisionamiento de clústeres
Extensión de la interfaz de usuario — añade formularios de credenciales en la nube y de configuración de máquina de VergeOS a la interfaz de Rancher
Juntos, nos permiten aprovisionar clústeres RKE2/K3s en la infraestructura de VergeOS directamente desde la interfaz de Rancher. Una vez que los clústeres están en ejecución, los Integración con Kubernetes componentes gestionan el almacenamiento persistente y el ciclo de vida de los nodos.
Siguientes pasos
Prepare una VM plantilla (Ubuntu 24.04 + cloud-init + agente invitado de QEMU) en VergeOS
Instale el Extensión VergeOS Node Driver chart de Helm en el clúster de Rancher
Aprovisione un clúster descendente usando VergeOS como controlador de nodos
Instale el Controlador CSI y Administrador del Controlador de Nube en el clúster descendente para almacenamiento persistente y balanceadores de carga
Documentación y recursos
Para ver la configuración detallada, las banderas del controlador, los valores del chart y las notas de la versión, consulte los repositorios de GitHub:
Controlador de nodos Docker Machine / Rancher
Extensión de UI de Rancher
Repositorio de charts de Helm
Soporte
Si encuentra problemas o tiene solicitudes de funciones, abra un issue en el repositorio de GitHub correspondiente:
Última actualización
¿Te fue útil?