프로젝트 소개
VirtFoundry는 기존 Kubernetes 클러스터를 멀티테넌트 프라이빗 클라우드로 전환하는 선언적이고 클라우드 네이티브한 IaaS 계층입니다. 가상 머신에는 KubeVirt를, 네트워킹에는 Multus를 기반으로 하며, Apache 2.0 라이선스로 배포됩니다.
이 저장소(virtfoundry/core)에는 REST API와 웹 UI가 포함되어 있습니다. 관련 구성 요소는 별도 저장소에 있습니다. virtfoundry/operator는 virtfoundry.io CRD와 Kubernetes 오퍼레이터를 제공하고, virtfoundry/helm-charts는 Helm 차트, 문서 및 배포 스크립트를 보관하며, virtfoundry/terraform-provider-virtfoundry는 Terraform 프로바이더를 제공합니다.
README에 설명된 주요 기능:
- 멀티테넌시: 테넌트별로 격리된 네임스페이스.
- 네트워킹: VPC, 프라이빗 서브넷, 선택적 퍼블릭 IP 풀, NetworkPolicy를 통해 구현된 보안 그룹.
- 컴퓨팅: KubeVirt 가상 머신, 템플릿, 오퍼링, VM 스냅샷, noVNC 콘솔.
- 스토리지: PVC 볼륨 및 볼륨 스냅샷. 단, CSI VolumeSnapshot 프로바이더가 필요하며 local-path로는 충분하지 않습니다.
- IAM: 사용자, 역할, vfd_live_ 접두사가 붙은 API 키.
- 패키징: 공식 Helm 차트.
설치는 Helm을 통해 이루어집니다. 문서화된 빠른 시작은 먼저 오퍼레이터 차트(CRD와 오퍼레이터)를 설치한 다음 API와 UI용 메인 차트를 설치하며, 둘 다 virtfoundry-system 네임스페이스에 설치하고 root 비밀번호와 JWT 시크릿을 값으로 제공합니다. README에는 빠른 시작이 클러스터에 KubeVirt, Multus 및 CDI가 이미 있다고 가정한다고 명시되어 있으며, 전체 사전 요구 사항은 빠른 시작 가이드와 설치 가이드를 참조하도록 안내합니다. 볼륨 스냅샷의 경우 longhorn과 같은 스냅샷 클래스를 구성해야 합니다.
개발의 경우 플랫폼 상태는 virtfoundry.io CRD를 통해 Kubernetes에 저장하거나(store.driver=kubernetes, 프로덕션 및 홈랩 사용 목적) 인메모리 저장소에 저장할 수 있습니다. 인메모리 저장소는 go run으로 서버를 실행할 때 기본값이며 클러스터가 필요하지 않습니다. 클러스터를 대상으로 실행하려면 CRD가 설치된 클러스터를 가리키는 KUBECONFIG가 필요합니다. UI는 npm으로 별도 개발됩니다.
README에는 프로젝트의 제품 모델도 설명되어 있습니다. Apache 2.0에 따른 오픈 소스 코어와 Thurler IT의 선택적 엔터프라이즈 구성 요소로 이루어지며, 엔터프라이즈 지원은 CloudStack 또는 VMware에서의 마이그레이션, SSO, 청구 및 SLA 지원을 포함합니다. 거버넌스, 메인테이너, 도입 사례, 로드맵, CI 요구 사항, 아키텍처, VM 템플릿 카탈로그, CNCF Sandbox 신청 초안은 모두 저장소 내 별도 문서로 참조됩니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.