Sobre el proyecto
vCluster es un motor de código abierto para crear clústeres de inquilinos: entornos Kubernetes totalmente aislados que ejecutan cada uno su propio servidor API, administrador de controladores, almacén de datos, CRDs y RBAC. Es una distribución de Kubernetes certificada por CNCF y conforme con Kubernetes AI. Los inquilinos obtienen derechos de administrador dentro de su propio clúster mientras mantienen permisos mínimos en el clúster host subyacente.
Opciones de implementación
- Nodos compartidos: los clústeres de inquilinos comparten los nodos del clúster host; las cargas de trabajo se ejecutan como pods en un namespace, utilizando pseudo nodos para una densidad máxima.
- Nodos dedicados: los clústeres de inquilinos utilizan grupos de nodos etiquetados en el clúster host, lo que proporciona cómputo aislado mientras se reutilizan la CNI, CSI y la pila de plataforma del host.
- Nodos privados (v0.27+): los nodos externos se unen al clúster de inquilinos con su propia CNI, CSI y red, mediante un proceso basado en tokens; los nodos también pueden unirse a través de una superposición VPN cifrada (v0.30+).
- Autónomo (v0.29+): el plano de control se ejecuta como un binario independiente en metal desnudo o máquinas virtuales, sin necesidad de un clúster Kubernetes host.
- Nodos automáticos (v0.28+): aprovisionamiento y desaprovisionamiento de nodos privados impulsado por Karpenter en la nube, híbrido y metal desnudo, con perfiles de nodo por grupo (v0.36+).
- vind (v0.32+): un clúster de inquilinos completo que se ejecuta en contenedores Docker en un solo host, sin dependencia de Kubernetes, creado mediante la CLI con --driver docker.
Capacidades clave
- Plano de control dedicado por inquilino: servidor API, administrador de controladores y almacén de datos, que proporcionan aislamiento completo de la API de Kubernetes en lugar de reglas a nivel de namespace.
- Programación consciente de GPU: Asignación Dinámica de Recursos con reclamaciones de recursos, plantillas de reclamaciones y clases de dispositivos, además de redimensionamiento de pods en el lugar.
- Sincronización de recursos en modos compartidos/dedicados: sincronización bidireccional de pods, servicios, secretos, configmaps, CRDs y objetos de Gateway API.
- Integraciones: cert-manager, external-secrets, KubeVirt, Istio y metrics-server.
- Alta disponibilidad: múltiples réplicas con elección de líder; etcd integrado o bases de datos externas como PostgreSQL, MySQL y RDS.
- Instantáneas y restauración en S3, OCI, Azure Blob o almacenamiento local; modo de suspensión para pausar clústeres inactivos (característica de Platform).
- VPN de nodos (Platform) para redes superpuestas cifradas entre sitios, redes y nubes.
Primeros pasos
Instale la CLI con brew install loft-sh/tap/vcluster, luego ejecute vcluster create my-vcluster --namespace team-x y use kubectl normalmente dentro del clúster de inquilinos. Se requieren un clúster Kubernetes en ejecución y kubectl configurado. Para uso local sin Kubernetes, vcluster create my-vcluster --driver docker ejecuta un clúster de inquilinos en Docker. Hay una prueba basada en navegador disponible en Killercoda, y un nivel gratuito permite clústeres de inquilinos ilimitados de hasta 64 CPUs y 32 GPUs con la interfaz de Platform.
Ecosistema y casos de uso
El proyecto se dirige a nubes de IA, fábricas de IA, plataformas internas de GPU, inferencia distribuida, nubes soberanas, Kubernetes en metal desnudo, proveedores de software y consolidación de costos. Se posiciona como la base de código abierto para una pila más amplia que incluye vNode para aislamiento de tiempo de ejecución, vMetal para aprovisionamiento de GPU en metal desnudo y Netris para aislamiento de red. Los tipos de clústeres Slurm, Ray, Run:ai, inferencia y sandbox de agentes se entregan a través de vCluster Platform, mientras que este repositorio es el motor subyacente. El README cita producción en organizaciones como Adobe, CoreWeave, NVIDIA, Nebius, Lintasarta, Atlan y Deloitte, y enumera muchas charlas de conferencias y estudios de casos.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.