Sobre o projeto
O VirtFoundry é uma camada IaaS declarativa e cloud-native que transforma um cluster Kubernetes existente numa nuvem privada multi-inquilino. É construído sobre o KubeVirt para máquinas virtuais e o Multus para redes, e é distribuído sob a licença Apache 2.0.
Este repositório (virtfoundry/core) contém a API REST e a interface web. Os componentes relacionados estão em repositórios separados: virtfoundry/operator fornece os CRDs virtfoundry.io e o operator Kubernetes; virtfoundry/helm-charts contém os Helm charts, a documentação e os scripts de implantação; e virtfoundry/terraform-provider-virtfoundry fornece um provider Terraform.
Principais capacidades descritas no README:
- Multi-inquilino: namespaces isolados por inquilino.
- Redes: VPCs, sub-redes privadas, um pool opcional de IPs públicos e grupos de segurança implementados via NetworkPolicy.
- Computação: máquinas virtuais KubeVirt, templates, offerings, snapshots de VM e uma consola noVNC.
- Armazenamento: volumes PVC e snapshots de volumes, com a ressalva de que é necessário um provider CSI VolumeSnapshot (local-path não é suficiente).
- IAM: utilizadores, funções e chaves de API com o prefixo vfd_live_.
- Empacotamento: um Helm chart oficial.
A instalação é feita através do Helm. O quick start documentado instala primeiro o chart do operator (CRDs mais operator) e depois o chart principal para a API e a UI, ambos no namespace virtfoundry-system, com a palavra-passe de root e o segredo JWT fornecidos como valores. O README afirma que o quick start pressupõe que o cluster já tem KubeVirt, Multus e CDI, e remete para um guia de quickstart e um guia de instalação para os pré-requisitos completos. Para snapshots de volumes, é necessário configurar uma snapshot class como a longhorn.
Para desenvolvimento, o estado da plataforma pode ser armazenado no Kubernetes através dos CRDs virtfoundry.io (store.driver=kubernetes, destinado a produção e uso em homelab) ou num armazenamento em memória, que é o padrão ao executar o servidor com go run e não requer cluster. A execução contra um cluster requer KUBECONFIG a apontar para um cluster com os CRDs instalados. A UI é desenvolvida separadamente com npm.
O README também documenta o modelo de produto do projeto: um núcleo open-source sob Apache 2.0 mais componentes empresariais opcionais da Thurler IT, com suporte empresarial que abrange migração a partir de CloudStack ou VMware, SSO, faturação e suporte com SLA. Governança, maintainers, adotantes, roadmap, requisitos de CI, arquitetura, catálogo de templates de VM e um rascunho de candidatura ao CNCF Sandbox são todos referenciados como documentos separados no repositório.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.