뒤로
2025/03/13
6. 오라클 리눅스 KVM 하드 파티셔닝 설정
이전 기사에서 우리는 가상 서버 환경에 대한 “오라클 라이선스 개념”과 “파티셔닝 정책”을 설명했습니다. 이제 여러분은 가상 서버 환경에서 오라클 제품을 사용할 때 주의해야 할 많은 점이 있다는 것을 알게 되었을 것입니다.
또한 오라클 리눅스 KVM의 하드 파티셔닝 기능이 오라클 제품의 라이선스 비용을 최적화할 수 있다고 설명했습니다. 하지만 오라클 리눅스를 사용하는 것만으로는 라이선스 수를 제한할 수 없으며, 가상 머신에 특정 CPU 코어를 핀(pin) 형태로 지정해야 합니다.
이는 지난번 소개한 “오라클 리눅스 KVM을 사용한 하드 파티셔닝” 섹션에도 나와 있지만, 실제로 이를 구축하는 것은 상당히 어렵습니다.
따라서 이번 기사에서는 설정 시 주의할 점에 초점을 맞추겠습니다. 단, 이 기사는 운영 검증 목적을 위한 것이므로 실제 운영 환경과는 다릅니다. 특히 프로덕션 환경에서는 가용성과 보안 등 고려해야 할 요소가 많지만, 이 기사에서는 이러한 요소를 무시하겠습니다.
또한 환경 구축에는 KVM에 대한 지식이 필요하지만, 이는 주요 문제가 아니므로 간략히 언급만 하겠습니다. 리눅스와 KVM에 대한 자세한 내용은 기사 끝에 있는 오라클 리눅스 및 레드햇 엔터프라이즈 리눅스 매뉴얼을 참조하세요.
하드 파티셔닝 요구 사항
오라클 리눅스 하드 파티셔닝에 대한 백서 “오라클 리눅스 KVM을 사용한 하드 파티셔닝“을 읽고 나면 olvm-vmcontrol 명령어를 사용해 하드 파티셔닝을 쉽게 수행할 수 있다고 생각할 수도 있겠죠?
현실은 전혀 다릅니다. 오라클 리눅스 KVM을 하이퍼바이저로 사용하는 것 외에도 관리 도구인 오라클 리눅스 가상화 관리자(Oracle Linux Virtualization Manager)가 필요합니다. 그리고 이를 설정하는 것은 꽤 어렵습니다. 이전 세대의 가상화 제품인 오라클 VM 서버에서는 설정 파일을 약간 수정하는 것만으로 하드 파티셔닝을 설정할 수 있었습니다. 현재 상황은 매우 다릅니다.
따라서 전제 조건을 설명하겠습니다.
오라클 리눅스 KVM과 오라클 리눅스 가상화 관리자
먼저 기본 구성 요소를 검토해 보겠습니다.
오라클 리눅스 KVM
오라클 리눅스 KVM은 오라클 리눅스 커널에 내장된 KVM을 활용하는 하이퍼바이저입니다. RHCK와 UEK 모두 커널을 사용할 수 있습니다. 게스트 OS로는 RHEL 기반 리눅스뿐만 아니라 Ubuntu, SUSE 리눅스, 마이크로소프트 윈도우도 지원합니다. 참고로, 오라클 리눅스 KVM이라는 별도의 제품은 없으며, 오라클 리눅스 7, 오라클 리눅스 8, 오라클 리눅스 9에 가상화 패키지를 통합하여 구현됩니다.
오라클 리눅스 가상화 관리자
오라클 리눅스 가상화 관리자(OLVM)는 VMware의 vCenter에 해당하는 가상 환경 관리 도구입니다. 오라클 리눅스 KVM 호스트와 가상 머신을 관리하는 등 운영에 필요한 작업을 수행할 수 있습니다. 아래에서는 OLVM으로 약칭될 수 있습니다.
오라클 리눅스 가상화 관리자는 오픈 소스 oVirt를 기반으로 하며, 레드햇 가상화(RHV)에서도 동일한 oVirt 기반 관리 도구가 사용됩니다. 정확히 말하면, 레드햇 가상화의 오픈 소스 구현이 oVirt입니다. 각각은 다음 표와 같은 관계를 가집니다.
벤더 | KVM 관리 도구 | 인프라 구성 관리 도구 |
---|---|---|
레드햇 | 레드햇 가상화 | 레드햇 새틀라이트 |
오픈 소스 구현 | oVirt | 스페이스워크 |
오라클 | 오라클 리눅스 가상화 관리자 | 오라클 리눅스 매니저 |
오라클 리눅스 가상화 관리자가 필요합니다
하드 파티셔닝을 위해 CPU를 고정하려면 대상 오라클 리눅스 KVM이 오라클 리눅스 가상화 관리자에 의해 관리되어야 합니다.
이는 매우 중요합니다. 오라클 리눅스 KVM을 관리하는 데 오라클 리눅스 가상화 관리자가 필수적이지는 않습니다. 그러나 하드 파티셔닝에는 필요합니다. 문제는 오라클 리눅스 가상화 관리자를 사용하는지 여부에 따라 구축 및 운영 방식이 완전히 달라진다는 점입니다.
리눅스 KVM에서는 GUI 도구인 virt-manager나 CLI인 virsh로 관리할 수 있습니다. 웹 기반 관리 도구인 Cockpit도 사용할 수 있습니다. 그러나 오라클 리눅스 가상화 관리자로 마이그레이션하면 이러한 도구를 전혀 사용할 수 없게 됩니다. 기본은 웹 기반 오라클 리눅스 가상화 관리자이며, 그 다음은 REST 인터페이스입니다.
오라클 리눅스 가상화 관리자로 마이그레이션하면 virt-manager나 virsh로 더 이상 관리할 수 없습니다.
다음은 하드 파티셔닝에 대한 요구 사항 요약입니다.
- 오라클 리눅스 KVM 호스트가 오라클 리눅스 가상화 관리자에 의해 관리됨
- 오라클 리눅스 가상화 관리자에 olvm-vmcontrol이 설정됨
오라클 리눅스 가상화 관리자 아키텍처
오라클 리눅스 가상화 관리자를 사용하는 핵심은 아키텍처를 이해하는 것입니다. 오라클 리눅스 가상화 관리자와 레드햇 가상화 모두에서 아키텍처를 설명하는 매뉴얼이 문서 목록의 맨 위에 작성되어 있습니다. 이 섹션에서는 주요 구성 요소와 이를 구성하는 방법을 설명합니다.
오라클 리눅스 가상화 관리자의 주요 구성 요소
오라클 리눅스 가상화 관리자는 두 가지 주요 구성 요소로 이루어져 있습니다:
oVirt 엔진
오라클 리눅스 가상화 관리자의 주요 구성 요소로, GUI 및 REST API를 위한 서비스를 제공하여 자원을 관리합니다. Java로 작성되었으며 내장 Java EE 컨테이너인 WildFly(이전 JBoss)에서 실행됩니다. 데이터 관리는 PostgreSQL을 사용합니다.
VDSM (가상 데스크톱 서버 관리자)
관리되는 KVM 호스트에 설치되는 oVirt 엔진용 에이전트입니다.
두 가지 구성 방법
오라클 리눅스 가상화 관리자로 시스템을 구성하는 방법은 다음 두 가지가 있습니다. 올바르게 구축하려면 각각의 특성을 이해해야 합니다. 자세한 내용은 매뉴얼을 참조하시고, 여기서는 간략히 설명하겠습니다.
- 셀프 호스티드 엔진
- 스탠드 얼론 매니저
셀프 호스티드 엔진
가장 일반적인 방법은 오라클 리눅스 KVM 호스트의 가상 머신에서 오라클 리눅스 가상화 관리자를 실행하는 것입니다. 다이어그램은 두 호스트 구성을 보여주지만, 가용성이 필요하지 않을 때는 단일 호스트 구성도 사용할 수 있습니다.
장점
- oVirt 엔진이 가상 머신에서 실행되므로 물리적 서버가 하나 적게 필요함
- oVirt 엔진에 쉽게 중복성을 추가할 수 있음
단점
- oVirt 엔진이 KVM 호스트에서 실행되므로 KVM 호스트에서 사용할 수 있는 CPU와 메모리가 감소함
스탠드 얼론 매니저
이 방법에서는 oVirt 엔진이 관리되는 오라클 리눅스 KVM 호스트가 아닌 다른 호스트에서 실행됩니다. 물리적 서버나 다른 가상 환경에서 호스팅되는 가상 머신이 사용됩니다.
장점
- oVirt 엔진이 관리 호스트와 독립적이므로 호스트에 부하가 없음
단점
- oVirt 엔진을 중복으로 만들려면 HA 클러스터 소프트웨어 등을 사용한 클러스터 구성이 필요함
지원되지 않는 방법
아래와 같이 관리되는 오라클 리눅스 KVM 호스트에 오라클 리눅스 가상화 관리자를 설치하는 것은 지원되지 않습니다.
오라클과 타사 매뉴얼 간의 용어 차이
오라클 리눅스 가상화 관리자 매뉴얼을 읽을 때 용어 번역과 매뉴얼 구성이 혼란스럽습니다. 다음 표에서 이를 비교합니다.
출처 | KVM 상의 가상 머신 방식 | KVM과 별도로 호스팅 |
---|---|---|
oVirt/RHV 영어 매뉴얼 | Self-Hosted Engine | Stand Alone Manager(*1) |
RHV 일본어 매뉴얼 | Self-Hosted Engine | Stand Alone Manager |
OLVM 영어 매뉴얼 | Self-Hosted Engine | Engine(*2) |
OLVM 일본어 매뉴얼 | 자기 호스트 엔진 (Self-Hosted Engine) | Engine (*2) |
*1 이전에는 Stand Alone Manager 대신 Stand Alone Engine이라고 불린 적도 있는 것으로 보입니다.
*2 Stand Alone Manager도 몇몇 곳에서 사용되지만, 구성을 명확히 구분하는 설명은 없습니다. 때로는 Engine이라고도 불립니다.
기계 번역을 기반으로 했지만 “Self-Hosted Engine”의 일본어 번역은 좋지 않습니다. 또한 시작 가이드에서 “Stand Alone Manager” 방식을 명확히 나타내는 이름이 없어 혼란스럽습니다.
오라클 리눅스 가상화 관리자 구축 계획
오라클 리눅스 가상화 관리자를 구축하려면 오라클 리눅스 가상화 관리자 아키텍처와 시스템 요구 사항을 이해해야 합니다.
셀프 호스티드 엔진과 스탠드 얼론 매니저 선택
오라클 리눅스 가상화 관리자를 처음 구축할 때는 아래에 표시된 스탠드 얼론 매니저 방식을 추천합니다. 프로덕션 환경에서는 셀프 호스티드 엔진 방식을 추천하지만, 스탠드 얼론 매니저 방식이 구축하기 더 쉽습니다. 사용 가능한 서버가 적을 때는 셀프 호스티드 엔진 시스템을 사용하세요. 또한 직접 관리할 수 있는 DNS 서버도 필요합니다.
오라클 리눅스 KVM 호스트와 오라클 리눅스 가상화 관리자 호스트
이것은 용어 정리로 설명됩니다. 오라클 리눅스 가상화 관리자가 설치된 서버는 오라클 리눅스 가상화 관리자 호스트(OLVM 호스트) 또는 엔진 호스트라고 불립니다. 오라클 리눅스 가상화 관리자에 의해 관리되는 오라클 리눅스 KVM 서버는 오라클 리눅스 KVM 호스트 또는 KVM 호스트라고 불립니다. 공식 매뉴얼에서는 오라클 리눅스 가상화 관리자 호스트를 단순히 호스트라고 부르는 곳이 있으므로 문맥에서 판단하세요.
VirtualBox로 검증 환경을 구축할 수 있나요?
VirtualBox로 구축을 시도했을 때 오라클 리눅스 가상화 관리자를 설치하고 KVM 호스트를 추가할 수 있었습니다. 그러나 “호스트 CPU 유형이 이 클러스터 호환성에서 지원되지 않음” 오류가 발생하여 더 이상 작업을 진행할 수 없었습니다. 다른 PC나 가상 환경에서는 가능할 수도 있습니다.
시도해 보고 싶다면 오라클 클라우드 인프라에서 다음 서비스를 사용하는 것이 좋을 수도 있습니다.
- 오라클 리눅스 가상화 관리자: 컴퓨트 가상 머신
- 오라클 리눅스 KVM 호스트: 컴퓨트 베어 메탈 인스턴스
시스템 요구 사항
오라클 리눅스 가상화 관리자 호스트와 오라클 리눅스 KVM 호스트의 시스템 요구 사항은 다음과 같습니다.
오라클 리눅스 가상화 관리자 호스트 요구 사항
- oVirt 4.4용 오라클 리눅스 8.5 이상
- CPU: 2코어, 메모리: 4GB, 디스크: 25GB (모두 최소 요구 사항)
오라클 리눅스 KVM 호스트 요구 사항
- oVirt 4.4용 오라클 리눅스 7.6 이상 또는 오라클 리눅스 8.5 이상
- CPU: 2코어, 메모리: 2GB, 디스크: 60GB (모두 최소 요구 사항)
여기서 중요한 점은 지원되는 OLVM 호스트와 KVM 호스트 요구 사항이 오라클 리눅스 가상화 관리자 버전에 따라 다르다는 것입니다. 사용할 버전에 대한 “오라클 리눅스 가상화 관리자 매뉴얼“의 “아키텍처 및 계획”에서 “요구 사항 및 확장성 제한”을 확인하세요.
오라클 리눅스 가상화 관리자 구축 팁
절차의 복잡성과 매뉴얼의 난이도로 인해 리눅스와 KVM 경험이 있더라도 오라클 리눅스 가상화 관리자 환경 구축은 혼란스럽습니다. 이 섹션에서는 검증 환경 구축을 위한 팁을 소개합니다.
또한 적어도 현재로서는 레드햇 가상화 문서가 더 완벽합니다. 설치 중 실행하는 명령어는 다르지만 전체 흐름과 제한 사항은 동일합니다. 한 번 살펴보는 것을 추천합니다.
오라클 리눅스 가상화 관리자 구축 절차
다음 다이어그램은 하드 파티셔닝을 달성하기 위해 오라클 리눅스 가상화 관리자를 구축하는 단계를 보여줍니다. 스탠드 얼론 매니저와 셀프 호스티드 엔진에 따라 절차가 다릅니다.
오라클 리눅스 서버 구축 시 주의 사항
이 섹션에서는 오라클 리눅스 가상화 관리자를 설치하기 전에 오라클 리눅스 서버를 구축할 때의 주의 사항을 설명합니다. 오라클 리눅스 가상화 관리자 호스트는 오라클 리눅스 KVM 호스트와 동일합니다.
선택할 설치 유형
오라클 리눅스는 “최소 설치”로 설치됩니다. 그러나 운영 검증에 필요한 명령어가 설치되지 않을 수 있으므로 최소한 다음 명령어를 설치하는 것이 좋습니다:
dnf install bind-utils nc tmux tree -y
기타 요구 사항
기타 요구 사항은 다음과 같습니다. 매뉴얼에 쓰여 있지 않은 사항도 있으니 주의하세요.
- 정방향 및 역방향 DNS로 이름 확인이 가능해야 함. 즉, 오라⠄클 리눅스 가상화 관리자나 오라클 리눅스 호스트 외에 DNS를 실행하는別の 서버가 필요함
- 방화벽이 활성화되어 있어야 함. 필요한 포트 열기는 설정 도구에 의해 자동으로 설정됨
- SELinux가 활성화되어 있어야 함
- 오라클 리눅스 가상화 관리자 호스트의 로케일은 en_US.utf8이어야 함
오라클 리눅스 가상화 관리자 호스트의 로케일은 en_US.utf8이어야 합니다. 다음과 같다면 문제가 없습니다.
# localectl System Locale: LANG=en_US.utf8 VC Keymap: jp X11 Layout: jp
로케일이 en_US.UTF-8과 같이 en_US.utf8이 아닌 경우, 다음을 수행하여 변경하세요:
# dnf install glibc-langpack-en -y # localectl set-locale LANG=en_US.utf8
사용할 저장소 선택
오라클 리눅스 가상화 관리자 시작 가이드는 설치 전 설정으로 다음 두 가지 유형의 호스트를 설명합니다.
- ULN 등록 호스트용
- 오라클 리눅스 Yum 서버 호스트용
전자는 오라클 리눅스 프리미어 지원에 가입하여 ULN 등록 호스트를 사용할 때의 절차입니다. 후자는 프리미어 지원 계약 여부와 관계없이 공개 Yum 저장소(https://yum.oracle.com)를 참조하는 호스트 절차입니다. 절차가 약간 다르므로 적절한 것을 선택하세요. 이 절차는 오라클 리눅스 KVM 호스트에도 동일합니다.
KVM 호스트 추가 시 공개 키 추가 방법
오라클 리눅스 가상화 관리자에서 KVM 호스트를 추가할 때 비밀번호 방식 또는 SSH 공개 키 방식을 선택할 수 있습니다. SSH 공개 키 방식을 추천합니다. 이때 관리 포털에서 생성된 공개 키가 KVM 호스트 측에 추가됩니다.
# mkdir -p /root/.ssh # vi /root/.ssh/authorized_keys ←수동으로 추가할 때 # cat kvmhost.pub >> /root/.ssh/authorized_keys ←저장된 파일에서 추가할 때 # chmod 600 /root/.ssh/authorized_keys
다른 FQDN으로 오라클 리눅스 가상화 관리자에 액세스
오라클 리눅스 가상화 관리자 관리 포털은 https://olvm.sample.com/ovirt-engine과 같은 FQDN으로 액세스됩니다. 그러나 포트 포워딩 등으로 인해 다른 호스트 이름으로 액세스하면 로그인 화면이 표시되지 않습니다. 그럴 때는 오라클 리눅스 가상화 관리자 호스트에 대체 호스트 이름을 정의하세요.
정의 파일을 생성하겠습니다.
vi /etc/ovirt-engine/engine.conf.d/99-custom-sso-setup.conf
추가할 내용은 다음과 같습니다. 여러 호스트는 공백으로 구분합니다.
SSO_ALTERNATE_ENGINE_FQDNS="localhost hostname1 hostname2"
서비스를 재부팅하세요.
systemctl restart ovirt-engine
virsh를 사용할 수 있나요?
오라클 리눅스 가상화 관리자에서는 virsh 명령어를 사용할 수 없다고 썼습니다. 그러나 읽기 전용 모드는 사용할 수 있습니다. 다음과 같이 -r 또는 –readonly를 추가하세요.
# virsh -r list --all Id Name State ---------------------------------- 0 o19v1 running 1 o19v2 running # virsh -r vcpuinfo o19vm1 --pretty VCPU: 0 CPU: 0 State: running CPU time: 5.4s CPU Affinity: 0-1 (out of 12) VCPU: 1 CPU: 1 State: running CPU time: 2.9s CPU Affinity: 0-1 (out of 12)
문제가 발생한 경우
제대로 설정할 수 없는 경우, 온라인 검색 외에도 다음 정보를 확인하세요:
- 오라클 리눅스 가상화 관리자 관리 포털의 “이벤트”
- 로그 파일:
/var/log/ovirt-engine/engine.log
- My Oracle Support

결론
오라클 리눅스 가상화 관리자를 구성한 후에는 백서 오라클 리눅스 KVM을 사용한 하드 파티셔닝의 지침에 따라 하드 파티셔닝을 설정하세요.
마지막으로 주의할 점이 하나 더 있습니다. 하드 파티셔닝이 구성된 가상 머신의 가용성입니다. 여러 오라클 리눅스 KVM 호스트로 구성된 클러스터의 경우 가상 머신을 라이브 마이그레이션할 수 있습니다. 그러나 하드 파티셔닝에서 CPU가 고정된 가상 머신은 라이브 마이그레이션 대상이 아닙니다. 어느 정도의 가용성이 필요한 경우 라이선스도 고려한 복구 계획을 검토해야 합니다.