Skip to main content
NetApp virtualization solutions
본 한국어 번역은 사용자 편의를 위해 제공되는 기계 번역입니다. 영어 버전과 한국어 버전이 서로 어긋나는 경우에는 언제나 영어 버전이 우선합니다.

OpenNebula에 대해 알아보십시오

기여자 sureshthoppay

OpenNebula는 이기종 분산 데이터 센터 인프라 관리를 위한 오픈 소스 클라우드 관리 플랫폼입니다. 간단하면서도 모듈식이며 풍부한 기능을 갖춘 솔루션을 제공하여 클라우드 및 엣지 컴퓨팅 플랫폼을 구축할 수 있도록 지원합니다. OpenNebula는 KVM 기반 가상 머신, LXC 기반 Linux 컨테이너, 그리고 SUSE Rancher 기반의 CNCF 인증 Kubernetes 클러스터를 지원합니다.

개요

OpenNebula는 배포, 모니터링, 확장 및 해제를 포함하여 가상 머신과 컨테이너의 전체 수명 주기를 관리하는 데 필요한 포괄적인 기능 세트를 제공합니다. 또한 다양한 스토리지 및 네트워킹 옵션을 지원하여 다양한 사용 사례에 유연하게 적용할 수 있습니다.

OpenNebula 개요

OpenNebula는 관리자와 사용자가 플랫폼과 상호 작용할 수 있도록 사용자 친화적인 웹 인터페이스와 강력한 명령줄 인터페이스(CLI)를 제공합니다. 또한 자동화 및 다른 도구와의 통합을 위한 RESTful API도 제공합니다. 이 플랫폼은 멀티 테넌시(multi-tenancy)를 지원하여 여러 사용자와 그룹이 동일한 인프라를 안전하게 공유할 수 있도록 합니다.

OpenNebula 모듈형 아키텍처

OpenNebula는 모듈식 아키텍처를 통해 타사 도구 및 서비스와의 손쉬운 통합을 지원합니다. 플러그인과 드라이버를 통해 특정 요구 사항에 맞게 쉽게 확장할 수 있습니다.

프런트엔드 사용자 인터페이스

OpenNebula는 Sunstone이라는 웹 기반 사용자 인터페이스를 제공하여 사용자가 가상 머신과 컨테이너를 쉽게 관리할 수 있도록 합니다. 이 인터페이스는 직관적이고 사용자 친화적이어서 관리자와 최종 사용자 모두 쉽게 탐색하고 작업을 수행할 수 있습니다. 기본적으로 2616번 포트에서 실행됩니다. 영구 데이터는 백엔드 데이터베이스에 저장되며, SQLite(소규모 워크로드의 경우 기본값) 또는 MySQL/MariaDB(프로덕션 환경용)를 사용할 수 있습니다. 고가용성과 로드 밸런싱을 보장하기 위해 여러 프런트엔드 서버 인스턴스를 배포할 수 있습니다.

OpenNebula Sunstone 인터페이스

OpenNebula Sunstone은 사용자 정의 가능한 보기 및 대시보드를 제공하여 사용자가 특정 요구 사항에 맞게 인터페이스를 조정할 수 있도록 합니다. 또한 역할 기반 액세스 제어(RBAC)를 지원하여 관리자가 사용자 및 그룹에 대해 서로 다른 수준의 액세스 권한을 정의할 수 있습니다.

콘솔 액세스 기능을 통해 사용자는 웹 인터페이스에서 가상 머신에 직접 연결하여 인스턴스를 관리하고 상호 작용할 수 있는 원활한 환경을 제공받을 수 있습니다. 또한 사용자는 사전 구성된 가상 머신 템플릿과 애플리케이션을 검색하고 배포할 수 있는 마켓플레이스도 이용할 수 있습니다. 사용자는 웹 인터페이스에서 SSH 또는 기타 원격 액세스 방법을 통해 가상 머신에 접근할 수도 있습니다.

페더레이션 기능을 통해 여러 OpenNebula 인스턴스(영역)를 연결하여 서로 다른 데이터 센터 또는 지리적 위치에 걸쳐 리소스를 공유하고 워크로드를 분산할 수 있습니다. 액세스 정책은 페더레이션 전체에 걸쳐 정의되며, 사용자는 특정 영역 또는 영역 내의 특정 클러스터로 액세스가 제한될 수 있습니다.

컴퓨팅

OpenNebula는 가상 머신용으로 KVM을, Linux 컨테이너용으로 LXC를 지원합니다. 지원되는 운영 체제에는 Ubuntu, Debian, RHEL 및 AlmaLinux가 포함됩니다. 가상 머신은 사전 구성된 템플릿 또는 사용자 지정 이미지를 사용하여 배포할 수 있습니다. 서비스 템플릿을 사용하여 가상 머신(서비스) 세트를 배포할 수도 있습니다. OneFlow를 사용하면 상호 연결된 여러 가상 머신으로 구성된 다계층 애플리케이션을 정의하고 관리할 수 있습니다. OneGate를 사용하면 가상 머신 내부에서 OpenNebula 백엔드와 통신하여 고급 모니터링 및 관리 기능을 활용할 수 있습니다.

가상 머신 사용자 지정 기능을 사용하면 네트워크 구성, 호스트 이름, 암호 및 SSH 키를 포함하여 배포 중에 가상 머신 설정을 사용자 지정할 수 있습니다. 컨텍스트화 기능을 사용하면 부팅 시 가상 머신에 구성 데이터를 주입하여 배포 환경에 따라 동적으로 구성할 수 있습니다. VM 컨텍스트화에 대한 자세한 내용은 "OpenNebula 운영 참조"에서 확인할 수 있습니다.

하이퍼바이저 세트는 리소스 관리 및 스케줄링을 위해 클러스터로 그룹화됩니다. OneDRS(Distributed Resource Scheduler)를 사용하면 리소스 활용률 및 사전 정의된 정책을 기반으로 사용 가능한 하이퍼바이저 전체에 가상 머신을 자동으로 배치하고 로드 밸런싱할 수 있습니다. 정책은 pack 또는 balance일 수 있습니다.

OpenNebula 컴퓨팅 관리

OpenNebula는 가상 머신의 실시간 마이그레이션도 지원하여 다운타임 없이 원활한 워크로드 균형 조정 및 유지 관리를 가능하게 합니다.

물리적 호스트는 한 번에 하나의 클러스터에만 속할 수 있습니다. 하지만 클러스터 간에 스토리지 및 네트워크 리소스를 공유할 수 있습니다. 클러스터 리소스의 일부를 특정 가상 데이터 센터(VDC)에 할당하여 서로 다른 사용자 그룹에 대한 리소스 격리를 제공할 수 있습니다.

OpenNebula 클러스터 및 VDC

확장형 클러스터를 사용하면 여러 물리적 사이트에 걸쳐 고가용성을 갖춘 가상 머신을 배포할 수 있습니다. 한 사이트에 장애가 발생하더라도 가상 머신은 다른 사이트에서 중단 없이 계속 작동할 수 있습니다.

참고 확장 클러스터는 모든 사이트에서 액세스할 수 있는 공유 스토리지가 필요합니다. 일반적으로 사이트 간 데이터 일관성을 보장하기 위해 동기식 복제가 사용됩니다.

VM to VM affinity/anti-affinity 규칙을 정의하여 물리적 호스트에 가상 머신을 배치하는 방식을 제어할 수 있습니다. 이를 통해 애플리케이션 요구 사항에 따라 특정 가상 머신이 항상 함께 배포되거나 서로 분리되도록 할 수 있습니다. 마찬가지로 host affinity/anti-affinity 규칙을 정의하여 특정 물리적 호스트에 가상 머신을 배치하는 방식을 제어할 수 있습니다. 역할은 유사한 affinity/anti-affinity 규칙을 가진 가상 머신들을 그룹화하기 위해 정의됩니다.

OneKE 서비스를 사용하여 Kubernetes 클러스터를 배포할 수 있습니다. OneKE는 SUSE Rancher 기반의 CNCF 인증 Kubernetes 클러스터를 생성하고 관리할 수 있도록 지원합니다. 이러한 Kubernetes 클러스터는 OpenNebula 가상 머신 위에 배포되어 클라우드 인프라와 컨테이너 오케스트레이션을 원활하게 통합할 수 있습니다.

OpenNebula는 NVIDIA vGPU 및 MIG(Multi Instance GPU)를 지원하여 가상 머신이 고성능 컴퓨팅, 머신 러닝 및 기타 GPU 집약적인 워크로드에 GPU의 성능을 활용할 수 있도록 합니다.

스토리지

OpenNebula는 스토리지 리소스를 관리하기 위해 시스템, 이미지, 파일 및 백업 데이터 저장소의 네 가지 유형을 제공합니다. 시스템 데이터 저장소는 가상 머신 디스크와 구성 파일을 저장하는 데 사용됩니다. 이미지 데이터 저장소는 가상 머신 이미지, ISO 및 데이터 디스크를 저장하는 데 사용됩니다. 파일 데이터 저장소는 가상 머신에서 액세스할 수 있는 파일을 저장하는 데 사용됩니다. 백업 데이터 저장소는 가상 머신과 해당 데이터의 백업을 저장하는 데 사용됩니다.

참고 이미지 데이터 저장소는 클러스터 및 프런트엔드 서버 간에 공유할 수 있지만 시스템, 파일 및 백업 데이터 저장소는 특정 클러스터에 할당됩니다.

각 시스템 데이터스토어는 프런트엔드 서버에서 하이퍼바이저로의 전송 관리를 처리하는 모듈을 지정합니다. 지원되는 전송 관리자에는 SSH, 공유 파일 시스템(예: NFS, GlusterFS) 등이 있습니다. 데이터스토어는 일반적으로 /var/lib/one/datastores 폴더에 마운트되거나 /etc/one/oned.conf 파일의 DATASTORE_LOCATION 속성에 정의된 위치에 마운트됩니다. 각 시스템 데이터스토어는 해당 이미지 데이터스토어를 정의합니다. 가상 머신이 배포될 때 정의된 전송 관리자를 사용하여 디스크가 이미지 데이터스토어에서 시스템 데이터스토어로 복제됩니다.

OpenNebula 스토리지 샘플 디렉토리 구조

ONTAP FlexCache는 동일한 OpenNebula 영역 내의 원격 위치에 있는 이미지 데이터 저장소에 활용할 수 있습니다. 이를 통해 자주 액세스하는 이미지를 로컬에 캐싱하여 가상 머신 배포 시 지연 시간을 줄이고 성능을 향상시킬 수 있습니다.

OpenNebula의 엔터프라이즈 에디션에는 ONTAP API를 사용하여 NetApp 스토리지 시스템에서 가상 머신 디스크를 생성하고 관리하는 NetApp 드라이버가 포함되어 있습니다. 이를 통해 가상 머신 디스크에 대해 씬 프로비저닝, 데이터 중복 제거 및 스냅샷과 같은 고급 스토리지 기능을 활용할 수 있습니다.

이미지는 OpenNebula Marketplace, Linux Container 또는 http 또는 S3 스토리지에 호스팅된 Private Marketplace와 같은 공개 또는 비공개 이미지 저장소에서 다운로드할 수 있습니다. 비공개 마켓플레이스를 통해 조직은 연합 전체 사용자를 위해 엄선된 이미지 세트를 관리할 수 있습니다.

클라우드 이미지를 사용하려면 OpenNebula와 함께 컨텍스트화 계층을 사용해야 합니다. 이미지는 영구 이미지 또는 비영구 이미지일 수 있습니다. 영구 이미지는 가상 머신 실행 중에 변경된 내용을 유지하는 반면, 비영구 이미지는 가상 머신이 종료된 후에는 변경 사항을 유지하지 않습니다. 단, 시스템 데이터 저장소에 저장된 변경 사항은 가상 머신 전원이 꺼진 후에도 유지됩니다.

영구 이미지는 일반적으로 사용자 지정 가상 머신 이미지를 생성하는 데 사용됩니다. 영구 이미지에서는 한 번에 하나의 VM만 배포할 수 있습니다.

VM 디스크 스냅샷을 활용하면 실행 중인 가상 머신 데이터로부터 이미지를 생성할 수 있습니다. VM 디스크 크기는 배포 중 또는 런타임(온라인 크기 조정)에 조정할 수 있습니다.

Trident CSI 드라이버는 OneKE로 배포된 Kubernetes 클러스터에 영구 볼륨을 생성하는 데 사용됩니다. 이를 통해 Kubernetes 워크로드가 ONTAP 스토리지 기능을 활용할 수 있습니다. Trident Protect를 사용하면 Kubernetes 워크로드에 대한 애플리케이션 수준의 재해 복구 정책을 정의할 수 있습니다.

회로망

OpenNebula는 기존 네트워크 인프라에 연결되어 가상 머신과 컨테이너에 네트워킹 기능을 제공합니다. Linux 브리지, 802.1Q VLAN, VXLAN, Open vSwitch 네트워크 등 다양한 네트워크 모델을 지원합니다. VPC와 같은 네트워크 환경에서는 EVPN을 사용하는 VXLAN을 통해 테넌트 네트워크를 격리할 수 있습니다.

OpenNebula 네트워크 모델

모든 가상 네트워크에는 주소 범위가 정의되어 있어야 합니다. IPv4, IPv6, 둘 다 또는 (외부 DHCP 서버를 사용하는 경우) MAC 주소 범위도 가능합니다. IPAM(IP 주소 관리) 기능은 정의된 주소 범위에서 IP 주소를 관리하고 할당할 수 있도록 합니다. 자동 및 수동 IP 주소 할당은 물론 가상 머신에 특정 IP 주소를 예약하는 기능도 지원합니다.

OpenNebula IPAM을 사용하는 가상 네트워크

가상 머신 배포 시, 정의된 가상 네트워크 및 IP 주소 할당을 기반으로 네트워크 인터페이스가 자동으로 구성됩니다. 가상 머신 컨텍스트화 기능을 사용하면 네트워크 구성을 사용자 지정할 수 있습니다.

Sunstone 인터페이스의 Update VM Configuration 버튼을 사용하여 컨텍스트 정보를 업데이트할 수도 있습니다. 실행 중인 가상 머신에 추가 네트워크 인터페이스를 핫플러그할 수 있습니다.

가상 라우터를 배포하여 가상 네트워크에 대한 라우팅 및 NAT 서비스를 제공할 수 있습니다. 가상 네트워크는 여러 클러스터에 걸쳐 확장될 수 있어 유연한 네트워크 토폴로지를 구현할 수 있습니다.

모니터링 및 운영

OpenNebula는 클라우드 인프라의 성능과 상태에 대한 실시간 정보를 제공하는 포괄적인 모니터링 시스템을 포함하고 있습니다. 이 시스템은 하이퍼바이저, 가상 머신, 스토리지 및 네트워크 구성 요소에서 메트릭을 수집하여 관리자가 리소스 활용률을 모니터링하고 잠재적인 문제를 식별할 수 있도록 지원합니다.

OpenNebula는 Prometheus 기반 모니터링 시스템의 메트릭을 수집하기 위한 Prometheus 익스포터를 포함하고 있습니다. 또한 Grafana와 통합되어 수집된 메트릭을 시각화할 수 있는 맞춤형 대시보드를 제공합니다.

Grafana를 이용한 OpenNebula 모니터링

NetApp Data Infrastructure Insights는 OpenNebula와 함께 사용되는 ONTAP 스토리지 시스템을 모니터링하는 데 사용할 수 있습니다. 스토리지 성능, 용량 및 상태에 대한 자세한 정보를 제공하여 관리자가 가상 머신에 대한 스토리지 리소스를 최적화할 수 있도록 지원합니다.

OpenNebula CLI는 가상 머신 관리, 스토리지 관리, 네트워크 관리 등 클라우드 인프라에서 다양한 작업을 수행하는 데 사용됩니다. 강력하고 유연한 방식으로 작업을 자동화하고 다른 도구와 통합할 수 있습니다. OpenNebula CLI에 대한 자세한 정보는 "OpenNebula CLI 참조"에서 확인할 수 있습니다. 사용자 지정 CLI 출력에 대한 자세한 내용은 "CLI 구성 참조"를 참조하십시오.

사용자 지정 스크립트는 VM 수명 주기의 일부로 실행될 수도 있습니다. 후크를 사용하면 VM 배포, 종료 또는 마이그레이션과 같은 OpenNebula 플랫폼의 특정 이벤트에 따라 사용자 지정 작업을 트리거할 수 있습니다. 이를 통해 관리자는 워크플로를 자동화하고 외부 시스템과 통합할 수 있습니다.

OpenNebula 후크 및 VM 수명 주기

OpenNebula Hooks에 대한 자세한 내용은 "OpenNebula 후크 사용"을 참조하십시오.

"OneSwap 도구"는 vSphere에서 OpenNebula KVM 환경으로 가상 머신을 마이그레이션할 수 있습니다. vSphere VMDK 파일에서 이미지를 생성하고 해당 OpenNebula VM 템플릿을 생성합니다. NetApp Shift 툴킷은 vSphere VMDK 파일을 OpenNebula에서 사용할 수 있도록 QCOW2 형식으로 변환할 수 있습니다. NetApp Shift 툴킷 API를 OneSwap과 함께 사용하면 ONTAP 파일 공유에서 마이그레이션 프로세스를 빠르고 효율적으로 자동화할 수 있습니다. NetApp Shift 툴킷에 대한 자세한 내용은 "Shift Toolkit 변환"를 참조하십시오.

데이터 보호

OpenNebula는 rsync, restic 및 Veeam을 사용한 백업을 지원합니다. Veeam 통합은 Enterprise 에디션에서만 사용할 수 있습니다. 백업 데이터 저장소는 가상 머신과 해당 데이터의 백업을 저장하는 데 사용됩니다. 백업 작업은 특정 간격으로 실행되도록 예약할 수 있으므로 가상 머신이 정기적으로 백업됩니다.

백업은 백업 전략에 따라 증분 스냅샷 또는 전체 백업으로 수행될 수 있습니다. 증분 스냅샷은 마지막 백업 이후 변경된 내용만 캡처하여 스토리지 요구 사항과 백업 시간을 줄입니다. 전체 백업은 가상 머신과 해당 데이터의 전체 복사본을 생성합니다. qcow2 형식은 증분 백업에서 변경 블록 추적을 사용할 수 있도록 지원합니다.

OpenNebula는 Veeam Backup & Replication 소프트웨어와 통합할 수 있는 oVirt 호환 REST API 서버를 제공합니다. 자세한 내용은 다음을 참조하십시오 "OpenNebula Veeam 통합".