컨테이너를 확장한다는 것은 단순히 서비스 앞에 프록시를 하나 두고 끝내는 것 이상의 의미를 갖습니다. 확장에는 단순한 분산 외에도 고려해야 할 요소가 있으며, 빠르게 변화하는 컨테이너 환경에서 확장성을 보장하려면 다음과 같은 다섯 가지 핵심 기능이 필요합니다: 재시도, 서킷 브레이커, 서비스 디스커버리, 분산, 그리고 모니터링.
컨테이너 확장 기술을 다루는 이번 글에서는 모니터링을 자세히 살펴보겠습니다.
모니터링
모니터링. 우리가 얼마나 빨리 운전하는지부터 냉장고 안에 무엇이 들어 있는지까지 모든 것이 듣고 지켜보는 듯한 시대에, 이 단어를 불편하게 여기는 사람이 많습니다. 대신 ‘가시성’이라는 말을 사용할 수도 있고 실제로도 자주 그렇게 하지만, 그런 의미론적 말장난을 한다고 해서 우리가 하는 일이 달라지는 것은 아닙니다. 우리는 면밀히 지켜보고 있습니다.
확장성의 모든 측면은 모니터링, 즉 요청을 분산하는 리소스의 상태를 파악하는 데 달려 있습니다. 리소스에 장애가 발생했거나 최근 종료되어 ‘응답 불가 영역’이 된 곳으로 요청을 보내는 것은 빠져나갈 길 없는 막다른 골목으로 들어서는 것과 같습니다. 시간 낭비일 뿐입니다.
모니터링에는 여러 방식이 있습니다. 네트워크 계층에서 ping 을 통해 “연결할 수 있는지” 확인하는 모니터링이 있고, TCP 연결을 통해 “접속 가능한 상태인지” 확인하는 모니터링도 있습니다. 또한 HTTP 요청으로 “응답하는지” 확인할 수도 있습니다. 더 나아가 서비스가 올바르게 응답하는지를 판단하는 “정상적으로 작동할 준비가 되었는지” 확인하는 모니터링도 있습니다.
서비스의 상태와 실행 여부를 확인하는 것뿐만 아니라 성능 모니터링도 필요합니다. 응답 시간을 기준으로 요청을 분산하는 경우에는 서비스가 얼마나 빠르게 응답했는지가 매우 중요합니다. 갑작스러운 성능 변화는 문제의 징후일 수 있으므로, 성능 데이터는 과거 추이를 파악하는 데 중요한 자료이며 지속적으로 모니터링해야 합니다.
능동 모니터링(실제 요청을 보내 볼게요!), 합성 모니터링(가상의 요청을 보내 볼게요), 수동 모니터링(여기 가만히 앉아서 실제 요청에 어떤 일이 일어나는지 지켜볼게요)이 있습니다. 각각 장단점이 있으며, 모두 유효한 모니터링 방식입니다. 핵심은 프록시가 상태를 판단할 수 있어야 한다는 것입니다. 작동 중인가요? 중단되었나요? 아니면 엘비스와 함께 자취를 감췄나요?
도달 가능성, 가용성 및 성능은 모두 모니터링의 측면이며 확장성을 보장하는 데 필수적입니다. 즉, 단순히 모니터링하는 데 그치는 것이 아니라 로드 밸런싱 프록시가 요청을 전달할 수 있는 각 리소스의 상태에 관한 최신 정보를 확보하도록 해야 합니다.
컨테이너의 특성과 이를 마이크로서비스 기반 아키텍처와 함께 사용하는 경향을 생각해 보면, 모니터링이 순식간에 악몽 같은 일이 될 수 있음을 알 수 있습니다. 컨테이너 환경에서 가장 널리 사용되는 부하 분산 모델이 포워드 프록시(및 사이드카 프록시)이기 때문입니다. 두 모델 모두 각 노드가 요청을 전송할 가능성이 있는 모든 리소스의 상태와 정상 작동 여부를 파악해야 합니다. 즉, 사실상 모든 리소스를 모니터링해야 한다는 뜻입니다.

특정 리소스가 자신의 상태를 묻는 15개 또는 20개의 포워드 프록시에 응답하느라 한정된 자체 리소스를 소모하는 것은 그다지 효율적이지 않다는 점을 쉽게 짐작할 수 있습니다. 이러한 모델에서 모니터링은 성능과 용량 모두에 상당한 악영향을 미치므로 확장이 더욱 어려워집니다.
모니터링이 확장성에 미치는 영향이 컨테이너 환경에서처럼 크게 나타난 적은 없었습니다.
하지만 앞서 언급했듯이 이는 매우 중요합니다. 가능하다면 ‘막다른 길’에 이르는 리소스에 시간을 낭비하고 싶지 않기 때문입니다.
필수적인 모니터링이 수반하는 어려움은 서비스 메시가 컨테이너 환경에서 미래의 확장 모델로 계속해서 각광받고 실제 도입도 늘어나는 이유 중 하나입니다.
모니터링은 선택 사항이 아니지만, 그렇다고 부담이 되어서는 안 됩니다.
작성자 소개

Lori MacVittie는 F5 CTO 오피스의 수석 엔지니어이자 최고 에반젤리스트로, 애플리케이션 딜리버리, 자동화 전략 및 인프라 분야에서 깊이 있는 전문성을 보유하고 있습니다. AI 에이전트를 위한 가드레일을 정의하고, 취약한 멀티클라우드 아키텍처를 분석하며, 확장 가능한 시스템의 한계를 탐구하는 등 복잡한 문제를 명확하게 풀어내는 것으로 잘 알려져 있습니다. 애플리케이션 개발, IT 아키텍처, 네트워크 및 시스템 운영 전반에 걸쳐 30년 이상의 업계 경험을 쌓았습니다. F5에 합류하기 전에는 수상 경력이 있는 기술 편집자로 활동했습니다. MacVittie는 컴퓨터 과학 석사 학위를 보유하고 있으며, 보안, 클라우드 및 엔터프라이즈 아키텍처 분야를 아우르는 다수의 저서를 집필한 작가입니다. 또한 보드게임과 비디오 게임을 열정적으로 즐기며, 치즈에 대해서는 거리낌 없이 확고한 견해를 갖고 있습니다.
Lori Mac Vittie의 다른 블로그 게시물관련 블로그 게시물
성평등을 향한 여정: 사이버 보안 분야에서 성공적인 커리어를 개척하는 방법에 관한 Jenn Gile과의 Q&A
F5의 ‘성평등을 향한 여정’ 시리즈 네 번째 Q&A에서는 Rachael Shah와 NGINX 제품 마케팅 책임자 Jenn Gile이 사이버 보안 직종에 대한 오해를 바로잡고, 사이버 보안 분야의 성별 격차를 해소하기 위한 조언과 그 이점에 대해 이야기합니다.
TLS 검사에서 피터 파커 원칙 다루기
“큰 힘에는 큰 책임이 따른다.” 볼테르와 처칠도 이와 비슷한 말을 남겼지만, 이 문구는 스파이더맨 코믹스에서 벤 삼촌의 말로 가장 널리 알려져 있습니다. 물론 이 문구가 문화적으로 널리 통용되는 이유 중 하나는 TLS 검사를 비롯해 수많은 상황과 주제에 적용할 수 있기 때문입니다.
Venafi와 F5를 통한 머신 아이덴티티 보호
‘머신 아이덴티티’란 간단히 말해 자동화된 프로세스가 자신의 신원을 식별할 수 있도록 하고, 다른 자동화 시스템과 프로세스가 관련 리소스에 적절한 수준의 접근 권한을 부여하도록 하는 방법을 의미합니다. 이 개념 자체는 새로운 것이 아닙니다. 비교적 새로운 점은 이를 구현해야 하는 규모입니다.
마이너와 미니언: 데이터 유출만이 비용을 초래하는 것은 아닙니다
물론 데이터 유출은 더 큰 비용을 초래할 수 있고(적어도 지금은), 실패 사실을 세상에 드러낼 수밖에 없게 합니다(통지 의무가 있으니까요). 하지만 보안을 단순히 데이터 노출 문제로만 봐서는 안 됩니다. 요즘은 데이터가...
내 클라우드에서 나가!
F5의 Jay Kelley가 전하는 최신 소식에는 Microsoft Office 365용 신규 ID 및 액세스 솔루션을 배포할 때 고려해야 할 사항이 정리되어 있습니다.
Shift(웹 앱) 보안 레터
웹 앱 보안을 개발 초기 단계로 앞당기세요. F5 블로그에서 DevOps 파이프라인 초기에 보안을 통합하여 취약점을 예방하고 시간을 절약하는 방법을 알아보세요.