Los clústeres virtuales son clústeres de Kubernetes completamente funcionales anidados dentro de un clúster de host físico que proporciona un mejor aislamiento y flexibilidad para admitir múltiples inquilinos. Varios equipos pueden operar de forma independiente dentro de la misma infraestructura física mientras minimizan los conflictos, maximizan la autonomía y reducen los costos.
Los clústeres virtuales se ejecutan dentro de los espacios de nombres del clúster host, pero funcionan como clústeres de Kubernetes separados, con su propio servidor API, plano de control, sincronizador y conjunto de recursos. Si bien los clústeres virtuales comparten los recursos físicos del clúster host (como CPU, memoria y almacenamiento), administran sus recursos de forma independiente, lo que permite una utilización y escalamiento eficientes.
Los clústeres virtuales interactúan con el clúster de host para la programación de recursos y la creación de redes, pero mantienen un nivel de abstracción para garantizar que las operaciones dentro de un clúster virtual no afecten directamente el estado global del clúster de host.
⭐️ ¿Te gusta vcluster? Apoya el proyecto con una estrella ⭐️
Los clústeres virtuales brindan inmensos beneficios para implementaciones multiinquilino y de Kubernetes a gran escala.
Permisos granulares: los usuarios de vCluster operan con permisos minimizados en el clúster host, lo que reduce significativamente el riesgo de uso indebido del acceso privilegiado. Dentro de su vCluster, los usuarios tienen control a nivel de administrador, lo que les permite administrar CRD, RBAC y otras políticas de seguridad de forma independiente.
Plano de control aislado: cada vCluster viene con su propio servidor API dedicado y plano de control, lo que crea un fuerte límite de aislamiento.
Políticas de seguridad personalizables: los inquilinos pueden implementar una gobernanza específica de vCluster adicional, incluidas políticas de OPA, políticas de red, cuotas de recursos, rangos de límites y control de admisión, además de las políticas y medidas de seguridad existentes en el clúster de host físico subyacente.
Protección de datos mejorada: con opciones para almacenes de respaldo separados, incluidos SQLite integrado, etc. o bases de datos externas, los clústeres virtuales permiten la gestión de datos aislados, lo que reduce el riesgo de fuga de datos entre inquilinos.
Acceso de administrador completo por inquilino: los inquilinos pueden implementar CRD libremente, crear espacios de nombres, nodos corruptos y etiquetados, y administrar recursos con alcance de clúster que generalmente están restringidos en los espacios de nombres estándar de Kubernetes.
Redes aisladas pero integradas: al tiempo que garantiza el aislamiento automático (por ejemplo, los pods en diferentes clústeres virtuales no pueden comunicarse de forma predeterminada), vCluster permite políticas de red configurables y uso compartido de servicios, lo que admite tanto la separación como el uso compartido según sea necesario.
Gestión de nodos: asigne nodos estáticos a clústeres virtuales específicos o comparta grupos de nodos entre múltiples clústeres virtuales, lo que brinda flexibilidad en la asignación de recursos.
Infraestructura liviana: los clústeres virtuales son significativamente más livianos que los físicos y pueden funcionar en segundos, lo que contrasta marcadamente con los largos tiempos de aprovisionamiento que a menudo se observan en entornos como EKS (~45 minutos).
Eficiencia de recursos: al compartir los recursos del clúster de host subyacente, los clústeres virtuales minimizan la necesidad de infraestructura física adicional, lo que reduce los costos y el impacto ambiental.
Administración simplificada: el plano de control de vCluster, que se ejecuta dentro de un solo módulo, junto con CoreDNS integrado opcional, minimiza la sobrecarga operativa, lo que hace que los clústeres virtuales sean especialmente adecuados para implementaciones a gran escala y escenarios de múltiples inquilinos.
Diversos entornos de Kubernetes: vCluster admite diferentes versiones y distribuciones de Kubernetes (incluidas K8, K3 y K0), lo que permite sesgos de versión. Esto hace posible adaptar cada clúster virtual a requisitos específicos sin afectar a los demás.
Almacenes de respaldo adaptables: elija entre una variedad de almacenes de datos, desde opciones livianas (SQLite) hasta de nivel empresarial (etcd integrado, almacenes de datos externos como Global RDS), que satisfacen diversas necesidades de escalabilidad y durabilidad.
Se ejecuta en cualquier lugar: los clústeres virtuales se pueden ejecutar en EKS, GKE, AKS, OpenShift, RKE, K3s, en la nube, en el borde y en las instalaciones. Siempre que sea un clúster K8, puede ejecutar un clúster virtual encima.
Carga reducida del servidor API: los clústeres virtuales, cada uno con su propio servidor API dedicado, reducen significativamente la carga operativa en el servidor API Kubernetes del clúster host al aislar y manejar las solicitudes internamente.
Gestión de CRD sin conflictos: la gestión independiente de los CRD dentro de cada clúster virtual elimina la posibilidad de que se produzcan conflictos de CRD y discrepancias de versiones, lo que garantiza operaciones más fluidas y un escalamiento más sencillo a medida que se expande la base de usuarios.
Empodere a los desarrolladores con Kubernetes de autoservicio: simplifique el acceso a Kubernetes para los desarrolladores a través de clústeres virtuales de autoservicio, reduciendo el error humano y mejorando la autonomía de los desarrolladores sin comprometer los requisitos de seguridad y cumplimiento.
Acelere CI/CD con clústeres de Kubernetes efímeros: cree instantáneamente clústeres de Kubernetes nuevos y limpios para cada solicitud de extracción, lo que permite pruebas rápidas y aisladas y vistas previas de relaciones públicas sin tiempos de espera ni las dificultades de un entorno de prueba compartido.
Mejore su oferta de ISV con un clúster dedicado por cliente: aloje a cada cliente en un clúster virtual con un estricto aislamiento de inquilinos y una escalabilidad perfecta, mientras consolida las herramientas esenciales en una pila de plataforma unificada que atiende a múltiples inquilinos.
Cree un servicio de Kubernetes administrado con el mejor COGS de su clase y altos márgenes: habilite el acceso directo de los clientes a clústeres de Kubernetes virtuales dedicados, optimizando la asignación de nodos y recursos para lograr una eficiencia líder en la industria y una escalabilidad incomparable.
¡Consulte nuestra guía de inicio rápido para implementar su primer vCluster!
¡Gracias por tu interés en contribuir! Consulte CONTRIBUTING.md para obtener orientación.
Licenciado bajo la Licencia Apache, Versión 2.0 (la "Licencia"); no puede utilizar este archivo excepto de conformidad con la Licencia. Puede obtener una copia de la Licencia en
http://www.apache.org/licenses/LICENSE-2.0
A menos que lo exija la ley aplicable o se acuerde por escrito, el software distribuido bajo la Licencia se distribuye "TAL CUAL", SIN GARANTÍAS NI CONDICIONES DE NINGÚN TIPO, ya sean expresas o implícitas. Consulte la Licencia para conocer el idioma específico que rige los permisos y limitaciones de la Licencia.