본문 바로가기

PRODUCT/OS

SQL Server on Linux 신박한 조합!

마이크로소프트SQL Server를 어떤 운영체제에서 운영하세요? 좀 이상한 질문이라 느껴지나요? 대부분 마이크로소프트 SQL Server (이하 MS SQL Server)는 당연히 윈도우 서버에서 쓰는 거 아닌가? 2020년 최신 기술 유행에 민감한 분이 아니라면 당연히 떠올리는 답변입니다. 하지만 새로운 트렌드에 민감하다면 아마 레드햇을 떠올릴 것입니다. 리눅스와 컨테이너를 중심으로 애플리케이션 운영 기반을 현대화하고 있는 조직의 경우 관리의 일관성 측면에서 레드햇 엔터프라이즈 리눅스(이하 RHEL)에서 SQL Server를 운영하는 것을 진지하게 고려합니다. 이외에도 고가용성 보장, 성능 최적화, 보안 강화 측면에서도 RHEL에서 MS SQL Server를 운영하는 것이 갖는 이점이 크다 보니 요즘 RHEL에서 MS SQL Server 운영을 검토하는 곳이 늘고 있습니다. ‘SQL Server on Linux’라는 신박한 조합이 갖는 장점을 간단히 살펴보겠습니다.

 

! RHEL인가? 

 

MS SQL Server를 위한 최고의 리눅스로 RHEL를 꼽는 이유는 간단합니다. 엔터프라이즈 시장에서 오랜 기간 인정받은 배포판으로 지금까지 시장 1위 자리를 놓치지 않고 있기 때문입니다. 이는 레드햇이 꾸려온 생태계, 보안과 규제 그리고 운영 효율 측면에서 엔터프라이즈의 기준을 충족하는 기술력에 대한 시장의 믿음이 없다면 불가능한 일입니다.

 

그렇다면 RHEL에서 MS SQL Server를 운영하려는 이유는 무엇인가? 기업이 MS SQL Server를 다양한 환경에 배포할 일이 늘고 있기 때문입니다. 전통적인 데이터베이스 구축과 운영 조건에서 벗어나는 배포 조건이 늘고 있는 것입니다. 실제 많은 기업이 SQL Server를 온프레미스, 클라우드 VM, 컨테이너 등 다양한 환경에 배포하고 있습니다. 이때 RHEL MS SQL Server 구축을 위한 운영체제로 선택하는 경우가 많습니다. 기업의 하이브리드 클라우드, 멀티 클라우드 전략 수용 그리고 마이크로서비스 아키텍처 전환 등 로드맵을 고려해 윈도우 서버가 아니라 RHEL을 고르는 것입니다.

 기업의 클라우드 전략 지원을 위해 레드햇은 마이크로소프트와 긴밀히 협력하고 있습니다. 그 첫 시작은 MS SQL Server 2017 버전부터였습니다. 이후 양사 엔지니어는 아키텍처 리뷰, 기능 테스트, 성능 테스트 등을 위해 노력하였습니다. 그 결과 운영체제와 데이터베이스를 매우 높은 수준으로 통합할 수 있게 되었습니다. 그 정점에 있는 것이 바로 MS SQL Server 2019 RHEL 8 버전입니다.

 

RHEL 8에서 MS SQL Server 2019를 운영하면 성능, 관리, 보안 등 여러 면에서 매우 강력한 경험을 할 수 있습니다. 성능의 경우 시스템 레벨 성능 모니터링과 관리 도구인 PCP(Performance CO-Pilot) 지원으로 RHEL 8상에서 MS SQL Server 2019를 운영할 때 복잡한 성능 이슈를 더 쉽게 해결할 수 있게 되었습니다. 더불어 FUA(Forced Unite Access) I/O 지원을 통해 데이터 트랜잭션 성능도 크게 개선하였습니다.

 

한편, Azure와의 연계도 편합니다. 하이브리드 또는 공용 클라우드 환경에 RHEL MS SQL Server 조합을 구축할 경우 Azure 마켓 플레이스에서 사전 최적화된 이미지를 가져와 사용하면 됩니다. 컨테이너 이미지도 제공하여 다양한 조건에 맞게 배포하기 쉽습니다. 또한 클라우드 관리 측면에서 Azure Arc가 지원되므로 사설, 하이브리드, 공용 어디에 배포하건 투명하고 일관성 있는 운영 환경을 제공합니다.

 

MS SQL Server를 위한 레드햇 포트폴리오

 

RHEL MS SQL Server 조합이 제공하는 이점으로 레드햇의 다양한 솔루션 포트폴리오 이용을 빼놓을 수 없습니다. 인프라 측면에서 OpenShift를 이용해 사설 클라우드의 IaaS를 구축하고, 플랫폼 측면에서 OpenShift를 이용해 PaaS를 구축한 환경에서 MS SQL Server 및 관련 워크로드를 매우 편리하게 배포하고 운영할 수 있습니다. 또한, 자동화 기반 관리 도구의 이점도 누릴 수 있습니다. 가령 레드햇 Insight를 이용한 예측 기반 트러블슈팅, Ansible을 이용한 자동 배포로 MS SQL Server와 관련 워크로드 운영의 편의성을 높일 수 있습니다. 참고로 평소 리눅스 시스템을 주로 운영하던 인프라 관리자는 RHEL 상에서 MS SQL Server 및 데이터웨어하우스, BI, 분석 기반 서비스 등의 워크로드 운영에 있어 친숙함의 이점을 누릴 수 있습니다. 평소 하던 데로 yum을 이용해 MS SQL Server 업데이트 패치 작업을 할 수 있고, T-QL 구문과 스크립트가 리눅스 파일 경로를 지원하므로 일관된 인터페이스를 제공합니다. 또한, 고가용성 구성에서도 익숙한 레드햇의 HPE ServiceGuard 같은 솔루션을 이용하면 됩니다. 도구 호환성도 뛰어납니다. 레드햇은 마이크로소프트와 힘을 모아 크로스 플랫폼 도구의 편의성도 상당 수준으로 보장합니다. MS SQL Server CLI 도구인 sqlcmd, bcp를 리눅스에서 쓸 수 있고, SSMS(SQL Server Management Studio), SSDT(SQL Server Data Tools), 파워쉘 모듈인 sqlps도 리눅스에서 사용할 수 있습니다.

Azure 환경에서 엔터프라이즈 고가용성 확보하는 방법

 

주제를 공용 클라우드에서 RHEL MS SQL Server를 이용하는 쪽으로 전환해보겠습니다. RHEL MS SQL Server 이용에 있어 가성비가 가장 높은 선택지는 단연 Azure입니다. 다음 표는 VM 상에서 RHEL MS SQL Server를 올려 운영했을 때 TPS 성능 그리고 같은 인스턴스를 Azure AWS에서 3년간 운영했을 때 성능당 비용 차이를 GIGAOM에서 벤치마크한 결과입니다.

 

 

Azure 상에서 RHEL MS SQL Server를 이용하는 방법은 크게 두 가지입니다. 하나는 VM 상에 RHEL MS SQL Server 이미지를 올리는 것이고 다른 하나는 MS SQL Server 컨테이너를 위한 UBI 기반 이미지를 이용하는 것입니다. 배포 대상에 따라 VM과 컨테이너 이미지를 고르면 됩니다.

 

Azure에서 MS SQL Server 기반 데이터웨어하우스, BI, 첨단 분석 기반 서비스 워크로드를 운영할 때 기업이 가장 크게 우려하는 것은 고가용성 보장입니다. 중요한 시스템인 만큼 다운타임 없이 운영해야 하다 보니 고가용성에 대한 SLA를 매우 높게 잡습니다. 평소 온프레미스에서 적용하던 고가용성 SLA를 공용 클라우드까지 이어갈 수 있을까? 정답은 Azure 및 하이브리드 환경에서도 충분히 가능하다는 것입니다.

 

레드햇은 고가용성 보장에 대한 기업의 고민 해결책으로 RHEL High Availability 애드온을 제공합니다. 이를 이용하면 운영체제 수준의 고가용성 보장까지 챙길 수 있습니다. 참고로 VM 수준의 고가용성 보장은 Azure가 제공하는 가용성 그룹, 백업 및 복구 같은 MS SQL Server 재해복구 옵션으로 할 수 있습니다. 여기에 RHEL High Availability 애드온까지 적용하면 더욱 강력한 고가용성 보장이 가능합니다.

 

이상으로 ‘SQL Server on Linux’라는 신박한 조합이 왜 화제를 모으고 있는지 살펴보았습니다.

 

 

락(樂)플레이스

운영체제, 미들웨어, 데이터베이스, 마이그레이션(U2L, DB, WAS), 가상화, 클라우드 및 빅데이터 컨설팅 서비스 관련하여

궁금하신 점은 언제든 문의해 주시기 바랍니다. 아래 링크를 클릭해주세요.

1:1 문의 바로가기 click