본문 바로가기

PRODUCT/Virturalization

Red Hat OpenShift Virtualization 적용을 위한 레퍼런스 아키텍처와 가이드 문서를 제공하는 숨은 주역

 모든 조직의 클라우드 전환 전략의 공통 분모를 꼽으라면? 아마 가상 머신(VM)과 컨테이너가 떠오를 것입니다. 최근 기술 트렌드는 VM과 컨테이너를 독립적인 환경이 아니라 단일 플랫폼 관점에서 바라보는 것입니다. 레드햇의 경우 레드햇 OpenShift 가상화(Red Hat OpenShift Virtualization)를 통해 ‘통합’ 관점을 제시합니다.

 

 

클라우드 네이티브 전환을 가속하는 Red Hat OpenShift Virtualization

 

레드햇 OpenShift 가상화는 클라우드 전환에 있어 인프라와 플랫폼을 VM과 컨테이너 중심으로 전환하는 것을 가속합니다. 이 플랫폼은 기존 VM과 새로운 컨테이너화된 애플리케이션을 하나의 통합된 플랫폼에서 관리할 수 있는 가능성을 엽니다. 또한, 많은 기업이 기존에 사용하던 VM 기반 애플리케이션을 클라우드 환경으로 더 쉽게 이전할 방안도 제시합니다.

 

레드햇 OpenShift 가상화는 클라우드 네이티브 기술, 특히 쿠버네티스(Kubernetes)와의 결합으로 유연하고 확장할 수 있는 인프라를 제공합니다. 참고로 레드햇 OpenShift 가상화는 KubeVirt 오픈 소스 프로젝트를 기반으로 합니다. KubeVirt는 쿠버네티스 환경 내에서 VM을 실행할 수 있도록 하는 확장 기능입니다.

 

개발팀과 IT 운영팀은 레드햇 OpenShift 가상화를 통해 컨테이너와 VM을 동일한 방식으로 배포하고 관리할 수 있어 DevOps 기반 개발, 배포, 운영 효율성을 높일 수 있습니다. 간단한 소개만 봐도 레드햇 OpenShift 가상화가 기존 IT 인프라를 현대화하고 클라우드 중심의 환경으로 효과적으로 전환하는 데 큰 도움이 됨을 알 수 있습니다.

 

 

숨은 주역: Performance and Scale 팀

 

레드햇에는 퍼포먼스와 스케일(Performance and Scale)이란 이름의 팀이 있습니다. 이 팀이 하는 일은 레드햇의 다양한 솔루션 개발 프로세스 초기부터 참여해 개발자와 긴밀히 협력하며 소프트웨어가 엔터프라이즈 환경에서 제대로 작동하고 확장되는지 검증하는 역할을 합니다. 이 팀의 검증하는 솔루션 목록에 당연히 레드햇 OpenShift 가상화가 올라와 있습니다. 퍼포먼스와 스케일 팀은 KubeVirt 오픈 소스 프로젝트 초기부터 성능 측정 및 분석에 깊이 관여하였고 새로운 기능 평가, 워크로드 튜닝, 확장성 테스트를 통해 기술의 성숙도를 높이는 데 기여했습니다. 더불어 레드햇 OpenShift 가상화를 실제 환경에 적용하는 데 도움이 되는 레퍼런스 아키텍처와 가이드를 제공하고 있습니다.

 

이번 포스팅에서는 퍼포먼스와 스케일 팀의 노력과 노하우가 어떻게 실제 레드햇 OpenShift 가상화 도입과 운영에 도움이 될 수 있는지 알아보겠습니다.

 

 

 

튜닝 및 확장 가이드 & 레퍼런스 아키텍처

 

퍼포먼스와 스케일 팀이 공유하는 지식 중 먼저 살펴볼 것은 튜닝 및 확장 가이드입니다. 이 가이드는 빠르게 많은 VM을 생성할 수 있도록 가상화 관리 시스템을 최적화하는 방법과, VM에서 운영하는 워크로드의 성능을 끌어올리기 위해 호스트와 VM 각각에서 적용할 수 있는 다양한 성능 조정 옵션들을 제안합니다.

 

다음으로 레퍼런스 아키텍처도 중요한 노하우입니다. 퍼포먼스와 스케일 팀은 OpenShift 클러스터, Red Hat Ceph Storage (RHCS) 클러스터 및 네트워크 튜닝 세부 사항을 포함한 심층적인 레퍼런스 아키텍처를 제공합니다. 이 아키텍처는 VM의 배포 및 초기 부팅 속도(Boot Storm), I/O 대기 시간의 확장 가능성, VM 마이그레이션 및 병렬 처리 기능, 그리고 대규모 환경에서 클러스터 업그레이드를 어떻게 수행하는지에 대한 정보를 담고 있습니다. 더불어 VM 관리 및 성능 최적화를 위한 실질적인 지침도 제공합니다.

 

 

Performance and Scale 팀은 어떻게 평가를 수행하나?

 

이제 주제를 퍼포먼스와 스케일 팀의 관심 영역과 OpenShift에서 실행되는 VM 성능을 특성화하고 개선하기 위해 수행하는 평가 방법으로 옮겨 보겠습니다. 팀의 관심 영역은 다음 그림과 같습니다.

 

워크로드 성능 평가

 

퍼포먼스와 스케일 팀은 컴퓨팅, 네트워킹, 스토리지 등 주요 기술 영역에서 워크로드 처리를 최적화하기 위해 노력합니다. 그들은 다양한 하드웨어 모델에 대한 데이터를 수집하고, 새로운 레드햇 OpenShift 가상화 버전이 출시될 때마다 성능 결과를 업데이트하면서 최고의 성능을 달성하기 위한 다양한 최적화 방법을 탐구합니다.

 

팀은 특히 데이터베이스 성능에 중점을 두고 있습니다. 그들은 HammerDB를 사용하여 MariaDB, PostgreSQL, MSSQL 등 다양한 데이터베이스 유형의 성능을 테스트하고 비교합니다. 이를 통해 각기 다른 데이터베이스의 작동 방식을 깊이 있게 이해합니다. SAP HANA와 같은 중요한 워크로드도 주요 테스트 대상입니다. 퍼포먼스와 스케일 팀은 VM 환경에서 베어 메탈과의 성능 차이를 최대 10% 이내로 유지하는 것을 목표로 합니다. 이를 위해 CPU 관리, 프로세스 친화성 조정, 대용량 메모리 페이지 사용 및 고급 네트워크 연결 등의 튜닝 방법을 적용합니다.

 

팀은 스토리지 성능 최적화에도 노력하고 있습니다. 그들은 Vdbench 워크로드를 사용하여 다양한 I/O 애플리케이션 패턴을 실험합니다. 이 실험들은 블록 크기, I/O 작업 유형, 파일 및 디렉토리의 크기와 수, 읽기와 쓰기 비율을 조정하여 다양한 I/O 동작과 그 성능 특성을 분석합니다. 또한, 팀은 Fio라는 일반적인 스토리지 벤치마크를 사용하여 다양한 스토리지 프로필을 측정합니다. 특히 OpenShift Data Foundation과 VM 내에서 사용되는 RADOS 블록 디바이스 볼륨에 중점을 둡니다.

 

팀은 네트워킹 성능 최적화에도 노력하고 있습니다. 그들은 uperf와 같은 도구를 사용하여 다양한 네트워크 환경에서의 성능을 테스트합니다. 이외에도 팀은 컴퓨팅 성능 최적화에도 노력하고 있습니다. 그들은 stress-ng, blackscholes, SPECjbb2005 등의 벤치마크 도구를 사용하여 컴퓨팅 관련 작업의 성능을 측정하고 최적화 방법을 찾습니다.

 

 

회귀 테스트

 

성능 못지않게 중요한 것이 회귀 테스트입니다. 레드햇 OpenShift 가상화의 안정성 보장, 버그 발견과 수정, 품질 관리, 신뢰성 강화 등을 위해 팀은 회귀 테스트를 수행합니다.

 

퍼포먼스와 스케일 팀은 'benchmark-runner'라는 자동화된 프레임워크를 활용하여 레드햇 OpenShift 가상화의 성능을 지속해서 모니터링하고 테스트합니다. 이 프레임워크는 레드햇 OpenShift 가상화의 사전 릴리스 버전에서 발견되는 성능 저하나 문제점을 탐지하고 해결하는 데 중요한 역할을 합니다. 베어 메탈 시스템에서 실행되는 이 테스트는 가상화 성능에 중점을 두고 있으며, 파드, VM 및 샌드박스 컨테이너의 성능을 비교분석하여 상대적인 성능 차이를 이해합니다.

 

이 자동화 프로세스를 통해 OpenShift 및 관련 운영자들의 새로운 사전 릴리스 버전을 신속하게 설치하고 테스트할 수 있습니다. 이를 통해 고객에게 제공되기 전에 발생할 수 있는 성능 문제를 조기에 발견하고, 새로운 기능이 포함된 최신 릴리스의 성능 개선 사항을 시간 경과에 따라 비교 분석할 수 있습니다.

 

현재 팀이 정기적으로 수행하는 테스트에는 다양한 데이터베이스 벤치마크, 컴퓨팅 관련 마이크로벤치마크, 네트워킹 성능 테스트인 uperf, 스토리지 성능 테스트인 Vdbench 및 Fio, 그리고 VM의 빠른 시작과 클러스터 내에서 대규모 파드 시작의 지연 시간을 측정하는 테스트가 포함됩니다. 이러한 테스트를 통해 클러스터 내에서 한 번에 많은 수의 파드 또는 VM을 얼마나 빠르게 시작할 수 있는지를 평가합니다.

 

 

마이그레이션

 

중요 워크로드를 마이그레이션 하는 것은 철저한 사전 준비가 필요합니다. 사전 계획이 순조롭게 실행으로 옮겨지려면 플랫폼 수준의 성능 보장이 필요합니다. 이런 이유로 퍼포먼스와 스케일 팀은 마이그레이션 성능도 주요 평가 대상으로 삼습니다.

 

팀은 VM이 중요한 워크로드 중단 없이 마이그레이션할 수 있는 속도를 지속해서 개선하기 위해 노력합니다. 여기에는 마이그레이션에 안전한 기본값을 제공하고 이전 작업의 병목을 유발하는 제한 값과 정책을 테스트하여 더 나은 값을 권장하는 것 등이 포함됩니다. 또한, 전용 마이그레이션 네트워크를 만드는 이점을 측정하고 노드 수준 네트워킹 및 VM별 마이그레이션 지표를 분석하여 네트워크를 통한 마이그레이션 진행 상황을 측정하고, 측정 결과를 이해하고, 그 결과를 사용하여 향후 개선을 위한 방향을 잡습니다.

 

 

확장성

 

퍼포먼스와 스케일 팀은 대규모 환경에서의 성능을 정기적으로 테스트하여 시스템의 병목 현상을 파악하고 이를 해결하는 방법도 찾습니다. 이러한 확장성 테스트는 다양한 영역을 포함합니다. 예를 들어 OpenShift의 전반적인 관리 시스템 용량에서부터 가상화 관리 시스템의 용량, 워크로드의 I/O 지연 시간의 증가, VM 마이그레이션 병렬 처리 능력, 데이터 볼륨의 복제 및 VM의 빠른 생성 속도 튜닝 등이 이에 해당합니다.

 

이러한 테스트를 통해 팀은 시스템의 다양한 부분에서 발생하는 확장성 관련 문제점들을 발견하게 되었습니다. 이러한 문제점들을 개선하여 팀은 다음 단계의 확장성 테스트를 더 높은 수준으로 진행할 수 있게 됩니다. 그 과정에서 발견한 확장성 관련 최적의 방법들은 팀의 튜닝 및 스케일링 가이드에 업데이트됩니다.

 

 

호스팅된 클러스터 성능

 

최근 기업의 컴퓨팅 환경은 하이브리드 멀티 클라우드를 향하고 있습니다. 이런 변화에 발맞춰 팀은 최근 호스팅된 클러스터 성능 평가에 주목하고 있습니다.

 

퍼포먼스와 스케일 팀은 현재 호스팅된 컨트롤 플레인과 호스팅된 클러스터의 성능에 대해 중점적으로 연구하고 있습니다. 특히, 온프레미스 베어메탈 환경에서 운영되는 컨트롤 플레인과 KubeVirt 클러스터 제공자를 사용하는 레드햇 OpenShift 가상화 환경에서의 호스팅된 클러스터 성능을 검토하고 있습니다.

 

이 연구의 초기 단계에는 여러 중요한 작업 영역이 포함됩니다. 첫째로, etcd의 다중 인스턴스에 대한 스케일 테스트를 진행하고 있습니다. 이 테스트는 스토리지 성능을 최적화하는 데 중요한 요소입니다. 둘째로, 무거운 API 워크로드를 처리하는 호스팅된 컨트롤 플레인의 확장성을 테스트하고 있습니다. 마지막으로, OpenShift 가상화에서 호스팅된 컨트롤 플레인 클러스터를 관리하는 동안의 워크로드 성능을 평가하고 있습니다. 팀은 테스트 결과를 바탕으로 호스팅된 클러스터 크기 조정에 참조할 수 있는 가이드라인을 마련했습니다.

 

 

Performance and Scale 팀의 존재 이유와 가치

 

살펴본 바와 같이 퍼포먼스와 스케일 팀은 성능 테스트, 회귀 테스트, 확장성 테스트, 그리고 호스팅된 클러스터의 성능 평가 등을 통해 기술의 성숙도를 높이고, 최신 레드햇 OpenShift 가상화 버전의 성능 문제를 조기에 발견하며, 다양한 데이터베이스, 컴퓨팅, 네트워킹 및 스토리지 관련 워크로드의 성능을 최적화합니다. 그리고 평가와 최적화 과정에서 얻은 통찰력을 바탕으로 레퍼런스 아키텍처와 가이드 문서를 제공합니다. 레드햇 OpenShift 가상화를 활용해 VM과 컨테이너는 단일 플랫폼에 통합하는 것에 관심이 있다면? 퍼포먼스와 스케일 팀의 가이드 문서와 레퍼런스 아키텍처를 참조하는 것을 추천합니다.

 

이러한 작업의 결과로 팀은 호스팅된 클러스터의 크기를 조정하는 방법에 대한 중요한 가이드라인을 마련했습니다. 이 가이드라인은 최근 우리의 연구 결과 중 하나로 클러스터 크기를 적절하게 조정하는 데 도움이 됩니다.

 

이상으로 퍼포먼스와 스케일 팀이 어떤 역할과 기여를 하며 레드햇 OpenShift 가상화 도입 확대에 기여하고 있는지 살펴보았습니다. 레드햇 OpenShift 가상화에 대한 상세 정보를 락플레이스로 문의 바랍니다.