본문으로 이동
문서

StarRocks 운영기: Resource Group으로 멀티테넌트 워크로드 격리하기

이유진 토스 · 토스 기술 블로그

원문 보기

AI 핵심 요약

서비스 조회와 배치·적재·대시보드 쿼리가 StarRocks 클러스터를 공유하면서 서비스 응답이 밀리자, 토스 DOP 팀은 워크로드를 분류하고 CPU 우선순위를 설계했습니다. 기본은 경합 시 CPU를 비율대로 나누는 cpu_weight로 두고, 서비스 SLA 보호나 과도한 적재 제한이 필요할 때 exclusive_cpu_cores를 적용했으며, 메모리·동시성·폭주 쿼리에는 별도 제한을 더했습니다. 운영 과정에서 Classifier의 매칭 우선순위, Docker의 cpuset과 bind_cpus 및 CPU borrowing 간 의존성, 이종 스펙 노드의 코어 상한을 확인하고 쿼리 이력으로 동작을 검증했습니다. Resource Group은 워크로드 간 간섭을 줄이는 수단이지 용량 증설을 대신하지 않으므로, 총부하가 클러스터 한계에 가까우면 물리적 분리나 증설이 필요하다는 점을 강조합니다.

  • CPU 경합이 주된 문제라면 cpu_weight로 시작하고, SLA가 여전히 흔들릴 때 exclusive_cpu_cores를 검토하세요.
  • Classifier는 매칭 점수에서 db 조건의 영향이 크므로, user 기반과 db 기반 규칙이 겹치지 않도록 설계하세요.
  • concurrency_limit은 동시 쿼리를 큐에 넣고, big_query 제한은 노드별 기준을 넘긴 개별 쿼리를 종료합니다.
  • Docker에서 CPU 바인딩과 코어 대여를 쓰려면 cpuset-cpus, enable_resource_group_bind_cpus, borrowing 설정의 의존 관계를 확인하세요.
  • pendingTimeMs와 쿼리 이력의 상태·리소스 그룹 필드를 모니터링해 설정이 실제로 적용되는지 검증하세요.

소개

서비스 쿼리가 밀리기 시작했을 때, 우리가 선택한 격리 전략

비슷한 학습 자료

컨퍼런스 SLASH

서버를 증설하지 않으면서 트래픽을 2배 이상 받으려면 어떻게 해야 할까요? Kubernetes 환경에서 CPU를 최적화한 경험을 나눕니다. 김동석 / DevOps Team Leader 이재성 / DevOps Team Leader 토스 개발자 컨퍼런스 SLASH에 대한 자세한 정보는 👉🏻 https://toss.im/slash-24 컨퍼런스 및 세션에 대한 문의는 👉🏻 slash@toss.im 토스에 합류하고 싶다면 👉🏻 https://toss.im/career/jobs #토스 #개발자컨퍼런스 #SLASH #SLASH24 #devops #kubernetes #토스뱅크 유의 사항 *본 발표자료의 저작권은 연사에 있으며, 저작권자의 사전 서면 동의 없이 자료의 일부 또는 전부를 이용하거나 배포할 수 없습니다. *또한 해당 자료를 복제하여 SLASH 행사 홈페이지를 제외한 온라인상에 게재하는 행위는 연사가 동의한 저작권 및 배포전송권에 위배됩니다. *토스가 다루는 모...

데브옵스 · 인프라

문서 장재영/김진웅

토스증권이 Kubernetes GPU 클러스터의 운영 한계를 해결한 방법

데브옵스 · 인프라 클라우드

문서 이세찬

토스페이먼츠 데이터 엔지니어링 팀이 50억 건의 데이터를 1초 이내로 조회하는 시스템을 구축한 이야기를 들려드려요.

백엔드 데이터베이스

문서 김진웅

자원 낭비 없이 H100을 제대로 활용하기 위한 MIG 도입부터 운영까지의 기록을 공유합니다.

데브옵스 · 인프라

문서 김진웅

이번 포스트에서는 토스증권에서 어떻게 고성능 GPU 클러스터를 구축했는지 자세히 공유하겠습니다.

데브옵스 · 인프라 딥러닝 · 머신러닝

문서 정진우/문현경

SSR 서버 최적화로 비용 아끼기

문서 정진우/문현경

오늘은 SSR 아키텍처 운영을 위해 반드시 알아두어야 할, SSR 서버의 최적화와 관련된 이야기를 해보려 합니다. 최적화를 통해 토스는 서비스 운영에 필요한 SSR 서버의 수를 절감하여 비용을 개선할 수 있었습니다.

프론트엔드 데브옵스 · 인프라