2021.02.23

“모니터링의 새로운 경계” 관찰 가능성의 이해

Scott Carey | InfoWorld

관찰 가능성(Observability, 관측 가능성, 관찰성)이란 용어는 2018년 즈음에 소프트웨어 엔지니어링 분야에서 모니터링의 자연스러운 진화로 평가되며 상당한 추동력을 얻기 시작했다. 각종 측정 지표와 이벤트, 로그, 추적을 위한 원시 출력값을 한 곳에 모으면, 소프트웨어 개발자는 소프트웨어 시스템이 어떻게 동작하고 있으며 어디에서 문제가 일어나고 있는지 실시간으로 파악할 수 있다.

 

ⓒ Getty Images Bank


하지만 관찰 가능성이란 개념 자체는 좀 더 폭넓은 엔지니어링의 제어 이론에 뿌리를 두고 있는데, 외부 출력값만을 사용해 시스템의 내부 상태를 관찰할 수 있다는 것이 기본 개념이다. 마이크로서비스와 컨테이너를 통해 분산 소프트웨어 시스템이 광범위하게 확산하면서 ‘측정할 수 없는 것은 관리할 수 없다’는 오래 격언이 무색해지고 있다.
 

관찰 가능성 vs. 모니터링

많은 사람에게 관찰 가능성은 그저 애플리케이션 모니터링에 새로운 이름을 붙인 것에 불과하다고 느껴질 것이고, 이쪽 업계의 유행어에 대한 회의적인 시각도 적지 않을 것이다. 하지만 이 둘 간에는 기본적인 차이가 있다. 모니터링은 사용자가 수행하는 무엇이고, 관찰 가능성은 시스템의 속성이다.

한 단계 더 나아가, 엔지니어링 관리자이자 기술 블로거인 어네스트 뮬러는 2018년 당시 “관찰 가능성은 시스템의 속성이다. 다양한 계측기기를 사용해 시스템을 모니터링할 수 있지만, 만약 시스템이 실제로 내부에서 무슨 일이 일어나는지 파악할 수 있을 만큼 자신의 상태를 충분히 외부로 드러내지 않으면 아무 것도 할 수 없다”라고 강조했다.

이제 개발자는 애플리케이션을 마이크로서비스라는 작은 단위로 쪼개서 곳곳에 분산된 클라우드 서버에서 컨테이너로 호스팅한다. 이런 애플리케이션은 데브옵스팀의 전시안이 지켜보는 가운데 끊임없이 배치된다. 진정한 관찰 가능성에 대한 필요성은 날이 갈수록 중요해지고 있다.

소프트웨어 개발자 신디 스리다란은 자신의 책 ‘분산 시스템 관찰 가능성(Distributed Systems Observability)’에서 “시스템이 점점 분산되면서 이들을 구축하고 운영하는 방법론도 빠르게 진화하고 있다. 이 때문에 서비스와 인프라에 대한 가시성이 더없이 중요해졌다”라고 강조했다. 또 “관찰 가능성은 모니터링의 상위 집합이다. 시스템의 상태에 대한 높은 수준의 개요만이 아니라 시스템의 드러나지 않는 문제를 알 수 있는 극히 세밀한 인사이트도 제공한다. 여기에 더해 관찰 가능한 시스템은 내부 동작에 관한 풍부한 맥락 정보를 제공하며, 더 깊은 시스템 문제를 밝혀낼 수도 있다”고 설명했다.
 

관찰 가능성의 세 기둥

관찰 가능성의 핵심 요소로 모두가 동의하는 세 가지는 측정(Metrics), 추적(Traces), 로그(Log)이다.

개별적으로 보면, 이 세 가지 요소는 시스템을 구성하고 모니터링하는 개발자의 역량을 나타낸다. 일단 세 가지를 요소를 함께, 그리고 가능한 한 실시간에 가깝게 구현하면, 해당 시스템은 관찰 가능한 상태가 된다. 다시 말해, 세 가지 요소가 기적적으로 합쳐져서 관찰 가능성이 되는 것은 아니다. 스리다란은 “로그나 측정, 추적에 관한 것이 아니다. 관찰 가능성은 디버깅과 피드백을 사용해 과정을 반복하고 제품을 개선할 때 데이터 중심적으로 하는 것을 의미한다”라고 덧붙였다.

모니터링 솔루션 업체 뉴 렐릭(New Relic)의 EMA 지역 담당 CTO 그렉 오일런은 관찰 가능성을 클라우드 시대를 형성한 소프트웨어 엔지니어링과 모니터링 트렌드의 합일점으로 본다. 오일런은 “관찰 가능성은 모니터링을 다시 생각하고 새로운 기술 패러다임에 적응함으로써 여러 과제를 해결한다”라며, “모든 소프트웨어 원격 측정 데이터의 완전히 연결된 뷰를 한 곳에서 제공하면, 실시간 관찰 가능성은 디지털 아키텍처의 성능을 선제적으로 터득하고 혁신과 소프트웨어 속도를 가속화하고 운영 비용을 절감할 수 있다”고 강조했다.
 

관찰 가능성 솔루션 업계의 지형도

관찰 가능성 관련 솔루션 업계는 상당히 복잡한데, 로깅, 모니터링, APM 솔루션 업체 모두가 관찰 가능성 툴을 제공한다고 주장하기 때문이다. 가트너 애널리스트 조시 체스먼은 “관찰 가능성은 1년 전에는 유용한 용어였는데, 이제 유행어가 되어 버렸다”고 지적했다.

스플렁크(Splunk)나 수모 로직(Sumo Logic) 같은 로그 모니터링 전문업체는 기존 플랫폼을 중심으로 새로운 기능을 개발하고 핵심적인 인수 합병을 진행해 엔드 투 엔드 관찰 가능성 쪽으로 한 단계 더 진전했다. 스플렁크는 2020년 클라우드 네트워크 성능 모니터링 전문업체 플로우밀(Flowmill)과 애플리케이션 성능 모니터링 전문업체 플럼버(Plumbr)를 인수했다. 2019년 10억 달러 규모의 실시간 모니터링 전문업체 시그널에프엑스(SignalFx) 인수와 결합해 스플렁크는 관찰 가능성 툴 영역에서 원스톱 솔루션 업체가 되고자 한다.

다이나트레이스(DynaTrace)나 데이터 로그, 뉴 렐릭, 솔라윈즈, 스칼러(Scalyr, 최근 센티넬원에 인수), 그리고 신생업체인 허니콤(Honeycomb) 같은 솔루션 업체 역시 바로 사용할 수 있는 툴과 관찰 가능성을 엔지니어링팀을 위한 서비스로 제공하고자 한다.

오픈소스 진영에서는 그라파나 랩(Grafana Labs)이 큰 인기를 얻고 있는 오픈소스 모니터링 및 관찰 가능성 플랫폼을 구축했다. 아파치 스카이워커(Skywalker)도 오픈소스 관찰 가능성 툴로, 시스템 관리자가 문제를 파악하고 핵심 알람을 받고 전반적인 시스템 상태를 모니터링할 수 있다.



2021.02.23

“모니터링의 새로운 경계” 관찰 가능성의 이해

Scott Carey | InfoWorld

관찰 가능성(Observability, 관측 가능성, 관찰성)이란 용어는 2018년 즈음에 소프트웨어 엔지니어링 분야에서 모니터링의 자연스러운 진화로 평가되며 상당한 추동력을 얻기 시작했다. 각종 측정 지표와 이벤트, 로그, 추적을 위한 원시 출력값을 한 곳에 모으면, 소프트웨어 개발자는 소프트웨어 시스템이 어떻게 동작하고 있으며 어디에서 문제가 일어나고 있는지 실시간으로 파악할 수 있다.

 

ⓒ Getty Images Bank


하지만 관찰 가능성이란 개념 자체는 좀 더 폭넓은 엔지니어링의 제어 이론에 뿌리를 두고 있는데, 외부 출력값만을 사용해 시스템의 내부 상태를 관찰할 수 있다는 것이 기본 개념이다. 마이크로서비스와 컨테이너를 통해 분산 소프트웨어 시스템이 광범위하게 확산하면서 ‘측정할 수 없는 것은 관리할 수 없다’는 오래 격언이 무색해지고 있다.
 

관찰 가능성 vs. 모니터링

많은 사람에게 관찰 가능성은 그저 애플리케이션 모니터링에 새로운 이름을 붙인 것에 불과하다고 느껴질 것이고, 이쪽 업계의 유행어에 대한 회의적인 시각도 적지 않을 것이다. 하지만 이 둘 간에는 기본적인 차이가 있다. 모니터링은 사용자가 수행하는 무엇이고, 관찰 가능성은 시스템의 속성이다.

한 단계 더 나아가, 엔지니어링 관리자이자 기술 블로거인 어네스트 뮬러는 2018년 당시 “관찰 가능성은 시스템의 속성이다. 다양한 계측기기를 사용해 시스템을 모니터링할 수 있지만, 만약 시스템이 실제로 내부에서 무슨 일이 일어나는지 파악할 수 있을 만큼 자신의 상태를 충분히 외부로 드러내지 않으면 아무 것도 할 수 없다”라고 강조했다.

이제 개발자는 애플리케이션을 마이크로서비스라는 작은 단위로 쪼개서 곳곳에 분산된 클라우드 서버에서 컨테이너로 호스팅한다. 이런 애플리케이션은 데브옵스팀의 전시안이 지켜보는 가운데 끊임없이 배치된다. 진정한 관찰 가능성에 대한 필요성은 날이 갈수록 중요해지고 있다.

소프트웨어 개발자 신디 스리다란은 자신의 책 ‘분산 시스템 관찰 가능성(Distributed Systems Observability)’에서 “시스템이 점점 분산되면서 이들을 구축하고 운영하는 방법론도 빠르게 진화하고 있다. 이 때문에 서비스와 인프라에 대한 가시성이 더없이 중요해졌다”라고 강조했다. 또 “관찰 가능성은 모니터링의 상위 집합이다. 시스템의 상태에 대한 높은 수준의 개요만이 아니라 시스템의 드러나지 않는 문제를 알 수 있는 극히 세밀한 인사이트도 제공한다. 여기에 더해 관찰 가능한 시스템은 내부 동작에 관한 풍부한 맥락 정보를 제공하며, 더 깊은 시스템 문제를 밝혀낼 수도 있다”고 설명했다.
 

관찰 가능성의 세 기둥

관찰 가능성의 핵심 요소로 모두가 동의하는 세 가지는 측정(Metrics), 추적(Traces), 로그(Log)이다.

개별적으로 보면, 이 세 가지 요소는 시스템을 구성하고 모니터링하는 개발자의 역량을 나타낸다. 일단 세 가지를 요소를 함께, 그리고 가능한 한 실시간에 가깝게 구현하면, 해당 시스템은 관찰 가능한 상태가 된다. 다시 말해, 세 가지 요소가 기적적으로 합쳐져서 관찰 가능성이 되는 것은 아니다. 스리다란은 “로그나 측정, 추적에 관한 것이 아니다. 관찰 가능성은 디버깅과 피드백을 사용해 과정을 반복하고 제품을 개선할 때 데이터 중심적으로 하는 것을 의미한다”라고 덧붙였다.

모니터링 솔루션 업체 뉴 렐릭(New Relic)의 EMA 지역 담당 CTO 그렉 오일런은 관찰 가능성을 클라우드 시대를 형성한 소프트웨어 엔지니어링과 모니터링 트렌드의 합일점으로 본다. 오일런은 “관찰 가능성은 모니터링을 다시 생각하고 새로운 기술 패러다임에 적응함으로써 여러 과제를 해결한다”라며, “모든 소프트웨어 원격 측정 데이터의 완전히 연결된 뷰를 한 곳에서 제공하면, 실시간 관찰 가능성은 디지털 아키텍처의 성능을 선제적으로 터득하고 혁신과 소프트웨어 속도를 가속화하고 운영 비용을 절감할 수 있다”고 강조했다.
 

관찰 가능성 솔루션 업계의 지형도

관찰 가능성 관련 솔루션 업계는 상당히 복잡한데, 로깅, 모니터링, APM 솔루션 업체 모두가 관찰 가능성 툴을 제공한다고 주장하기 때문이다. 가트너 애널리스트 조시 체스먼은 “관찰 가능성은 1년 전에는 유용한 용어였는데, 이제 유행어가 되어 버렸다”고 지적했다.

스플렁크(Splunk)나 수모 로직(Sumo Logic) 같은 로그 모니터링 전문업체는 기존 플랫폼을 중심으로 새로운 기능을 개발하고 핵심적인 인수 합병을 진행해 엔드 투 엔드 관찰 가능성 쪽으로 한 단계 더 진전했다. 스플렁크는 2020년 클라우드 네트워크 성능 모니터링 전문업체 플로우밀(Flowmill)과 애플리케이션 성능 모니터링 전문업체 플럼버(Plumbr)를 인수했다. 2019년 10억 달러 규모의 실시간 모니터링 전문업체 시그널에프엑스(SignalFx) 인수와 결합해 스플렁크는 관찰 가능성 툴 영역에서 원스톱 솔루션 업체가 되고자 한다.

다이나트레이스(DynaTrace)나 데이터 로그, 뉴 렐릭, 솔라윈즈, 스칼러(Scalyr, 최근 센티넬원에 인수), 그리고 신생업체인 허니콤(Honeycomb) 같은 솔루션 업체 역시 바로 사용할 수 있는 툴과 관찰 가능성을 엔지니어링팀을 위한 서비스로 제공하고자 한다.

오픈소스 진영에서는 그라파나 랩(Grafana Labs)이 큰 인기를 얻고 있는 오픈소스 모니터링 및 관찰 가능성 플랫폼을 구축했다. 아파치 스카이워커(Skywalker)도 오픈소스 관찰 가능성 툴로, 시스템 관리자가 문제를 파악하고 핵심 알람을 받고 전반적인 시스템 상태를 모니터링할 수 있다.



X