데이터 최적화에서 시작하는 클라우드 비용 절감 전략

 | Elastic 2020.06.05
 
ⓒ Elastic

엘라스틱 클라우드의 엘라스틱서치 서비스(Elasticsearch Service, ESS)에 기반한 엘라스틱 로그(Elastic Logs), 엘라스틱 APM(Elastic APM), 엘라스틱 SIEM(Elastic SIEM) 같은 독점 제품을 사용하는 업체는 수천 개에 이른다. 엘라스틱서치 서비스는 7년 이상의 운영 기간 동안 모든 기능, 모든 솔루션, 모든 소스 지원을 갖춘 완전한 엘라스틱서치 환경을 제공하는 유일한 관리형 서비스이며, 수많은 운영 및 배포 혜택도 제공한다.

사용하는 SaaS 솔루션의 데이터센터가 서비스, 인프라, 로깅 기기와 다른 지역에 있을 경우 미처 파악하지 못한 네트워크 요금이 추가 과금되는 경우가 있다. 작업량이 늘어날 경우 엘라스틱 클라우드의 엘라스틱서치 서비스에서 비용을 통제하는 다양한 전략을 지원하는 방식과 유연성 전략을 중점적으로 알아본다.

특히 통합 가시성(모니터링)과 보안 부문이 성장할 경우, 로그, 메트릭, APM 추적, 애플리케이션 생성 보안 이벤트 저장에 필요한 인프라가 증가한다. 이것은 곧 추가 비용으로 이어지는데, 엘라스틱서치 서비스는 의미 있는 데이터를 더 오래 유지하고, 다양한 소스의 데이터 통합, 시각화 옵션, 경보, 이상 징후 탐색 등 엘라스틱 스택의 유용한 동일 기능을 제공하는 동시에, 비용을 통제하면서 데이터를 관리하는 다양한 방법을 제안한다.

여기에서는 가시성과 보안 사용례 등 시계열 데이터에 활용할 수 있는 비용 절약 방법과 그 예시로 엘라스틱 스택의 주 적용 분야인 인프라 모니터링을 자세히 다룬다. 

엘라스틱 스택에는 클라이언트에 상주하면서 데이터를 클러스터로 전송하는 경량 에이전트 컬렉션 비츠(Beats)가 포함된다. CPU 사용률, 디스크 IOPS, 쿠버네티스 애플리케이션의 컨테이너 텔레메트리 같은 시스템 메트릭 전송 시에는 메트릭비트(Metricbeat)가 널리 사용된다.

애플리케이션 사용 공간이 늘어나면 생성되는 메트릭도 늘어나고, 따라서 모니터링에도 더 많은 저장 공간이 필요하게 된다. 대규모 시계열 데이터를 관리하기 위해 보존 기간을 정의하는 전략을 사용한다. 엘라스틱서치 서비스에 기본 제공되는 효율적인 추가 저장 공간의 선택지를 탐색해보자.
 

작업량 최적화 시나리오

연속성을 위해, 각 에이전트가 메트릭당 100바이트를 수집하고 10초마다 100개의 메트릭을 수집하며 데이터 보존 기간이 30일인 1,000개의 호스트를 모니터링하는 클러스터를 위한 비용 절약 전략에 대해 알아보자. 고가용성을 위해 클러스터에 데이터 복제본을 저장하면 노드 작동에 장애가 생기면 데이터 손실을 방지할 수 있다. 저장 공간이 얼마나 필요할지 계산하는 공식은 다음과 같다.

호스트 1,000개ⅹ100바이트ⅹ메트릭 100개ⅹ60/10 분당 빈도수ⅹ60ⅹ24ⅹ30(30일 동안)ⅹ2(복제본당)= 5184000000000바이트 또는 5.184TB

따라서 이 메트릭을 저장하려면 5.2TB의 저장 공간이 필요하다. 간단히 하기 위해 엘라스틱서치 클러스터 운영에 필요한 저장 공간은 무시한다.
 
ⓒ Elastic


hot-warm 배포와 인덱스 수명 주기 관리를 통한 저장 공간 효율화

로깅과 메트릭 같은 가시성 사용례에서 데이터의 활용도는 시간이 지남에 따라 줄어든다. 보통 IT 부서는 최신 데이터를 활용해 시스템을 구입하고 네트워크 트래픽 급증이나 보안 경보를 조사한다. 그러나 오래된 데이터는 계속 클러스터에 머무르면서 똑 같은 컴퓨팅, 메모리, 저장 공간 리소스를 사용하는 데 반해 쿼리 요청 빈도는 점점 줄어들어 뚜렷하게 다른 2가지 데이터 액세스 패턴을 발견할 수 있다. 클러스터는 수집이 빠르고 요청이 빈번한 쿼리에만 최적화되어 있고, 액세스가 드문 데이터 저장에 최적화되지 않았다는 점이 문제다.

엘라스틱서치 서비스에 동일한 엘라스틱서치 클러스터에 두 개의 하드웨어 프로필을 제공하는 hot-warm 아키텍처를 적용해 보자. hot 노드는 새로 들어오는 모든 데이터를 처리하며, 신속하게 데이터를 수집하고 검색할 수 있도록 더 빠른 저장 공간을 사용한다. warm 노드는 저장 공간 밀도가 더 높으며, 데이터를 장기간 보존할 때 훨씬 비용 효율이 높다.

엘라스틱서치 Service에서 hot 노드는 통상적으로 로컬로 연결된 NVMe SSD를 1:30의 메모리 vs 디스크 비율로 프로비저닝하며, warm 노드는 고밀도 HDD를 1:160의 비율로 프로비저닝한다. 이 강력한 아키텍처는 또 다른 중요 기능인 인덱스 수명 주기 관리(ILM)와 밀접한 관련이 있는데, ILM은 시간이 지나면서 인덱스 관리를 자동화하는 방법을 제공한다. 이를 통해 인덱스 크기, 문서의 개수, 또는 인덱스가 오래된 정도 두등의 특정 기준에 따라 데이터를 hot 노드에서 warm 노드로 간편하게 옮길 수 있다. 이 두 기능을 함께 작동하면 클러스터에서 두 개의 구분되는 하드웨어 프로필을 얻게 되며, 인덱스 자동화 도구를 통해 계층(Tier) 간에 데이터를 이동할 수 있다.
 
ⓒ Elastic

이제 hot-warm 배포로 마이그레이션하고 ILM 정책을 구성해보면, 엘라스틱서치 서비스에서 새로운 hot-warm 배포를 생성하고 선택에 따라 다른 클러스터의 스냅샷을 복원할 수 있다. 이미 기존의 높은 I/O 배포가 있는 경우, 클러스터에 warm 노드를 추가하여 간단히 hot-warm 배포로 마이그레이션할 수 있다. ILM 정책을 사용하여 7일 동안에는 데이터를 hot 계층에 보관하고 그 다음에는 데이터를 warm 노드로 이동할 것이다.

내부적으로는 데이터가 warm 단계로 이동하면 더 이상 인덱스를 작성할 수 없다. warm 노드에서는 복제 데이터를 저장하지 않도록 선택할 수 있기 때문에 비용을 절약할 기회로 널리 활용된다. warm 노드 작동에 장애가 생기면, 복제본이 아니라 저장된 최신 스냅샷에서 복원하게 된다.

이러한 접근 방법의 단점은 스냅샷 복원이 보통 더 속도가 느리고, 장애 후 문제 해결 시간도 더 오래 걸린다는 점이다. 그러나 warm 노드는 통상적으로 쿼리 요청 빈도가 적은 데이터를 포함하므로 실제적 영향이 감소하기 때문에 대부분 용인할 수 있는 범위에 포함된다.

마지막은 데이터 보존 기본 정책에 따라 30일이 지나면 데이터를 삭제할 때의 접근 방법과 공식이다. 
 
ⓒ Elastic

이 접근 방법을 통해 검색 가능하고 복원력 있는 데이터를 보유하면서도, 월 비용에서 60%라는 상당한 금액을 절약할 수 있다. 또, ILM 정책을 미세하게 조정해 이상적인 롤오버 기간을 찾아내면, warm 노드에서의 저장을 최대한 활용할 수도 있다.
 

데이터 롤업으로 더 많은 저장 공간 확보

데이터 롤업이라는 또 다른 공간 절약 옵션을 고려해 보자. 엘라스틱서치에서는 단일한 요약 문서로 데이터를 “롤업”함으로써, 롤업 API의 데이터 요약과 저장 공간 절약을 지원한다. 따라서 원본 데이터를 아카이브로 보관하거나 삭제하여 저장 공간을 확보할 수 있다는 장점이 크다.

롤업을 생성할 때는 향후 분석에 필요한 모든 필드를 선택하고, 바로 그 롤업된 데이터만을 가지고 새로운 인덱스를 생성한다. 이 인덱스는 시간 경과에 따른 추세를 계속 보여주면서 분당, 시간당 또는 매일처럼 분할 단위가 큰 설정의 요약 수치를 주로 다루는 모니터링 사용례에서 특히 유용하다. 요약된 인덱스는 키바나(Kibana) 전체에 걸쳐 제공되며 기존 대시보드와 함께 손쉽게 추가되어 분석 작업이 장애로 중단되는 경우를 피할 수 있으며, 모두 Kibana에서 직접 구성할 수 있다.
 
ⓒ Elastic

앞서 소개한 시나리오를 계속 진행하면서, 고가용성을 위한 복제본 세트를 포함해 1,000개의 호스트에서 수집한 30일분의 메트릭 데이터 저장에 5.2TB라는 저장 공간이 필요했던 것을 기억해보자. 그 다음에는 hot-warm 배포 템플릿을 사용하는 시나리오를 설명했다. 이제 데이터 롤업 API를 사용해 데이터가 저장된 지 7일째에 수행할 롤업 작업을 구성하면 저장 공간은 훨씬 더 많이 확보하고, 분할 단위는 더 커진다. 

데이터 롤업 작업을 설정해 10초의 메트릭 데이터를 시간당 요약된 문서로 롤업하면 계속 시간당 간격으로 더 오래된 메트릭까지 쿼리하고 시각화할 수 있으며, 키바나와 렌즈(Lens)에서 데이터의 추세나 그 외 중요한 데이터 흐름을 나타내려고 할 때 사용할 수 있다. 또, 방금 롤업한 원본 문서를 삭제해 클러스터에서 대량의 저장 공간을 확보하기 위해 계산한다면, 방금 롤업한 데이터에 얼마의 저장 공간이 필요한지 계산할 수 있다.

호스트 1,000개ⅹ100바이트ⅹ메트릭 100개ⅹ60/3600 분당 빈도수ⅹ60ⅹ24ⅹ23(23일 동안)= 5520000000바이트 또는 5.52GB

롤업된 이 문서의 원본 데이터는 저장된 지 7일이 지났기 때문에 hot-warm 클러스터의 warm 노드에 저장되어 있다. 1.99TB의 데이터 전체를 간단히 삭제할 수 있으며, 오른쪽 열은 방금 작업이 끝난 상태를 나타낸다. 다음 표에서 보듯 이 차이는 매우 크다. 데이터 롤업을 기존의 hot-warm 클러스터에 추가하면 기존 비용의 31%를 줄일 수 있으며, 최종 시나리오를 일반적인 단일 하드웨어 계층 클러스터와 비교한 결과는 무려 73% 절감이라는 수치를 확인할 수 있다.
 
ⓒ Elastic


내가 원하는 방식으로 배포하기

지금까지 엘라스틱서치 클러스터의 메트릭 작업량 최적화 전략을 살펴봤다. 최적화의 결과물인 추가 저장 공간의 가능성은 무궁무진하다. 엘라스틱 스택의 사용례는 전 세계 여러 기업에서 로그, APM 추적, 감사(Audit) 이벤트, 엔드포인트 데이터 등 다양하다.

엘라스틱 클라우드(Elastic Cloud)의 엘라스틱서치 서비스는 개발자의 운영 전문 지식과 더불어 엘라스틱스택에서 전해줘야 하는 모든 것을 제공한다. 아직 새로운 사용례로 확장할 준비가 되지 않았다면, 저장 공간 최적화를 통해 계속 클러스터를 적극적으로 활용할 수 있으며, 데이터 보존 기간을 연장할 수도 있다. 또 예산 추가 없이 저장 용량을 늘릴 수도 있고, 클릭 몇 번만으로 가시성을 유지하면서 클러스터 크기와 비용 절감을 꾀할 수도 있을 것이다.

엘라스틱 클라우드는 14일 무료 체험판을 통해 엘라스틱서치 서비스의 다양한 장점과 비용 효율성을 경험할 기회를 제공하고 있다.

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.