Sobre el proyecto
Zyvor Fabric es un plano de control autoalojado para nubes privadas construido sobre servidores Linux ordinarios con KVM. Empaqueta API, autenticación, redes, almacenamiento y monitoreo en un único demonio de Rust, zyvor-fabricd. En lugar de implementar la ejecución de VM por sí mismo, se posiciona como la capa de orquestación y UX sobre dos proyectos complementarios: FluxVM (el motor de VM, accesible vía REST en 127.0.0.1:7788) y GuestKit (inspección y personalización de discos offline utilizada antes del primer arranque).
Interfaces y automatización
El mismo demonio respalda cuatro front-ends de primer nivel: la herramienta de línea de comandos zyvorctl, una consola web servida junto con la API (puerto predeterminado 9095), un operador de Kubernetes que concilia los recursos personalizados de VirtualMachine frente a una instancia de fabricd en ejecución, y un proveedor de Terraform. También se incluyen contenido de Ansible y una herramienta de preflight "Fabric Doctor". Las definiciones declarativas de VM se pueden aplicar con zyvorctl apply -f, y la creación de VM admite el alcance opcional de inquilinos (tenants). El README indica que el demonio expone más de 480 endpoints REST más tres canales de WebSocket, e informa aproximadamente 48 crates de Rust y alrededor de 87K líneas de código en Rust y TypeScript.
Seguridad y multi-tenencia
La autenticación utiliza JWT, con reclamos de inquilino que delimitan las operaciones de listado, obtención y mutación. El proyecto enumera roles RBAC, exportación de auditoría y cifrado en reposo, y documenta la integración de identidad OIDC/SSO y SCIM, además de una capa de compatibilidad con OpenStack con material de tutorial para el cliente.
Redes
El README distingue dos planos de política que no deben confundirse: Fabric SDN (aislamiento de host basado en etiquetas mediante nftables, gestionado a través de /api/network-policies) y el plano de datos Network Fabric de borde de VM, que adjunta programas TC/eBPF a la interfaz del lado del host de cada VM. El plano de datos de borde admite listas de permitidos CIDR IPv4/IPv6 por VM (mapas LPM), aplicación de protocolo/puerto L4, límites de tasa Mbps/PPS, y estadísticas por VM y registros de flujo LRU, todo legible y escribible a través de /api/vms/{name}/dataplane/{status,policy,stats,flows} y los subcomandos correspondientes de zyvorctl dataplane. Las actualizaciones de política se describen como reescrituras de mapas BPF in-situ, con una ventana breve de denegación excesiva documentada durante la reconfiguración en lugar de cualquier brecha de permiso total. Se documentan tres modos: solo nftables heredado, eBPF en el borde de la VM y un modo de coexistencia con Cilium. Una capa separada de Service Fabric proporciona balanceo de carga Maglev VIP e instalaciones relacionadas. La política durable reside en /var/lib/fluxvm/network-policy, con programas y mapas anclados en /sys/fs/bpf/fluxvm. El paso directo (passthrough) genérico de PCI/VFIO se expone a través de la API REST para GPU y dispositivos similares.
Despliegue
Existen cuatro rutas documentadas: bare metal vía systemd o binario directo con scripts auxiliares (incluyendo flujos de "ship" de un solo comando), Docker/Podman Compose para evaluación local con /dev/kvm y redes de host, Kubernetes utilizando DaemonSets privilegiados de hostNetwork más Helm charts y un script de laboratorio k3s remoto, y modo solo operador para flujos de trabajo GitOps contra un demonio existente. Los requisitos de Kubernetes enumerados incluyen /dev/kvm en los nodos, un nivel de seguridad de pod privilegiado y un motor de contenedores con privilegios de root en el host de construcción. Las credenciales de administrador se generan en el momento del despliegue y son recuperables desde el disco o desde el Secret de Kubernetes zyvor-fabric-secrets, con variables de entorno disponibles para configurarlas o restablecerlas.
Notas para la evaluación
El README contiene material comparativo que sostiene que el enfoque del proyecto para la política de borde de VM es superior a libvirt/nftables, el firewalling de puente compartido, el NAT en modo usuario de QEMU y las configuraciones típicas de microVM más CNI; estas son afirmaciones de los mantenedores, y varias cifras de rendimiento citadas (como la latencia de actualización de políticas) se describen como mediciones de laboratorio. El conjunto de documentación principal en el repositorio cubre el inicio rápido, Kubernetes, Docker, arquitectura, redes, UX web, ciclo de vida del host, gobernanza y política de seguridad. La licencia es Apache-2.0.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.