[서평 작성] 데브옵스 엔지니어를 위한 실전 관찰 가능성 엔지니어링
목차.
Part 1 관찰 가능성으로 가는 길
Chapter 1. 관찰 가능성이란?
Chapter 2. 관찰 가능성과 모니터링의 디버깅은 어떻게 다를까?
Chapter 3. 관찰 가능성 없이 확장하며 배운 교훈
Chapter 4. 관찰 가능성은 어떻게 데브옵스, SRE, 클라우드 네이티브를 연결하는가
Part 2 관찰 가능성 기초
Chapter 5. 정형화된 이벤트: 관찰 가능성의 기본 구성 요소
Chapter 6. 이벤트를 추적으로 연결하기
Chapter 7. OpenTelemetry를 이용한 계측
Chapter 8. 관찰 가능성 확보를 위한 이벤트 분석
Chapter 9. 관찰 가능성과 모니터링 공존
Part 3 팀을 위한 관찰 가능성
Chapter 10. 관찰 가능성 사례 적용하기
Chapter 11. 관찰 가능성 주도 개발
Chapter 12. 신뢰성을 위한 SLO의 활용
Chapter 13. SLO 기반 알람 대응과 디버깅
Chapter 14. 관찰 가능성과 소프트웨어 공급망
Part 4 규모에 맞는 관찰 가능성 시스템 구축
Chapter 15. 투자 회수 관점에서 본 구축과 구매
Chapter 16. 효율적인 데이터 스토리지
Chapter 17. 샘플링: 비용과 정확성 모두를 위한 선택
Chapter 18. 파이프라인을 이용한 원격 측정 관리
Part 5 관찰 가능성 문화의 확산
Chapter 19. 관찰 가능성 비즈니스 사례
Chapter 20. 관찰 가능성의 이해관계자와 조력자
Chapter 21. 관찰 가능성 성숙도 모델
Chapter 22. 관찰 가능성의 미래
들어가며.
안녕하세요? 정리하는 개발자 워니즈입니다. 이번시간에는 데브옵스 엔지니어를 위한 실전 관찰 가능성 엔지니어링이라는 책을 리뷰를 해보려고합니다. 필자도 현재 DevOps Engineer로 로 근무한지 꽤 됐습니다. 데브옵스의 범주가 워낙 넓고 각 회사마다의 일하는 문화도 상이한데요. 여러가지 분야가 있겠지만 SRE영역에 관심이 많습니다. SRE는 데브옵스를 구현하여 실제 운영상의 많은 부분 안정화에 기여하는 역할을 한다고 생각하고있습니다.
자연스럽게 서비스 안정화를 고려하다보니 모니터링, 로그 수집, 어플리케이션 성능영역에 관심이 많아졌습니다. 이 책은 필자가 궁금해하던 영역을 모두 해소하게 해주는 책인것 같습니다.
관측 가능성 이란 시스템 내부를 살펴보지 않고도 연관 정보많으로 문제를 예방하고, 문제 발생시에는 손쉽게 유발 원인을 찾아 나갈 수 있도록 보조하는 장칠라고 생각합니다.
그럼 본격적으로 각 장마다의 어떤 이야기를 담고 있는지 서평해보겠습니다.
Part 1. 관찰 가능성으로 가는 길
이 파트에서는 옵저버빌리티에 대한 개념영역이라고 보면 될것 같습니다. 처음 접하는 사람에게는 관찰 가능성이 어떤 의미인지를 알 수 있습니다.
관찰 가능성은 엔지니어가 원격 측정 데이터를 유연한 방법을 통해 자유자재로 다루도록 해줌으로써, 예상치 못한 방식으로 발생한 모든 이슈의 근본적인 원인을 찾을 수 있다라고 되어있습니다.
이 파트에서 카디널리티, 디멘셔널리티에 대해서도 설명을 하고 있습니다.
**카디널리티 : ** 데이터베이스에서 카디널리티는 한 집합에 포함된 데이터 값의 고유성을 말합니다. 높은 카디널리티는 완전히 고유한 값들이 열에 많이 포함되어 있다는 것을 의미합니다.
디멘셔널리티 : 디멘셔널리티는 데이터의 키 개수에 관한 것입니다. 어떤 한 데이터에 대해서 시간, 앱, 호스트, 사용자, 엔드포인트, 상태로 정의된 스키마를 예로 들 수 있습니다.
Parse라고 하는 기업사례를 들어가며 관찰 가능성 없이 애플리케이션을 확장하며 배운 교육에 대해서도 기술하고있습니다. 직접적인 사례를 들어 설명하니 좀 더 와 닿는 부분이 있어서 좋았습니다.
Part2. 관찰 가능성 기초
이 파트에서는 기술적인 측면에서 관찰 가능성을 깊이 살펴보고 관찰 가능한 시스템에서 특정 요구사항이 필요한 이유를 세부적으로 기술하고 있습니다.
비정형, 정형 이벤트에 대해서 설명하고, 이러한 데이터 형식은 나중에 분석을 하근ㅇ하게 해주는 원격 측정 정보를 위한 기본 데이터 형식이라는것을 설명합니다.
필자가 특히나 관심있게 본 분산 추적 개념에 대해서도 소개를 합니다. 예제코드까지 첨부되어 설명을 이해하기 쉽게 기술해두었습니다. 그리고 이러한 분산 추적이 가능하게 도와주는 OpenTelemetry라는 라이브러리에 대해서도 소개를 하고 있습니다.
Part3. 팀을 위한 관찰 가능성
1-2파트까지는 관측 가능성의 개념, 기술적 이해 그리고 이슈를 디버깅할 수 있는 패턴에 대해서 기술했다면, 이 파트부터는 여러 조직의 관찰 가능성 도입을 촉진시킬 수 있는 사회적, 문화적 변화에 초점을 맞추어 기술하고있습니다.
관찰 가능성을 처음 도입할 떄 팀이 직면하는 여러가지 공통적인 어려움에 대해서 기술하고있습니다. 막상 이 책이 좋았던 점이 여기에 있습니다. 단순히 옵저버빌리티에 대해서 소개하는 것이 아니라 사례를 기반으로 설명하고있고 실질적인 적용에 대해서 설명을 하고 있습니다.
관찰 가능성을 적용한 이후에는 각 개발자 혹은 운영자 입장에서 일하는 방식의 변화까지도 일으킨다고 기술되어있습니다. 현대 어플리케이션에서는 이러한 내용이 반드시 필요로 하기에 좋은 내용으로 다가왔습니다.
특히 요즘 필자가 관심을 갖고 있는 서비스 수준 목표(SLO) 대해서도 설명을 해주고있습니다. SLO와 SLI에 대한 설명 그리고 Budget을 통한 알림 관리등에 대해서 실제로 적용해볼 만한 내용들이 다수 기재되어있어서 너무 도움이 많이 되었습니다.
Part4. 규모에 맞는 관찰 가능성 시스템 구축
이 파트에서는 관찰 가능성이 성공적으로 채택되어 적절한 규모로 적용되면 무슨일이 일어나는지에 대해서 소개하고있습니다. 관찰 가능성을 위한 솔루션들은 시중에 많이 나와있습니다. 물론 오픈소스로도 제공을 해주고있고 상용툴도 다수 존재합니다.
관찰 가능성 솔루션을 외부에서 구매할 것인지 아니면 직접 구축할 것인지 의사 결정을 내리는 과정에 대해서도 소개가 되어있습니다.
특히나 대규모로 관찰 가능성 시스템을 운영하면 수집되는 모든 정보들을 저장할 저장소를 구성하는 방법도 필요하고 많은 양의 원격 측정 데이터를 관리하는 부담도 있는데 이런부분들에 대해서도 해소할 방법에 대해서 소개가 잘 되어있다고 생각합니다.
Part 5. 관찰 가능성 문화의 확산
관찰 가능성의 이론부터 기술적 이해, 팀을 위한 관찰 가능성 그리고 규모에 맞는 시스템 구축까지 설명이 이어졌습니다. 이 파트에서는 마지막으로 관찰 가능성이란 하나의 기술 혹은 단어가 아닌 그 이상의 의미를 지니고 문화로 이해를 하고있습니다. 이러한 문화가 어떻게 조직내 전파가 될 수 있을지에 대해서 소개하고있습니다.
관찰 가능성의 관행을 채택했을 때의 이점을 소개하며 책의 내용은 마무리 됩니다.
마치며..
필자가 데브옵스 엔지니어 이면서 동시에 SRE에 대해서 관심이 많아서인지 책의 기본적인 내용들은 무리 없이 읽을 수 있었습니다. 더군다나 사례기반으로 설명이 되어있고 중간 중간 각 기업들에 디테일한 내용까지 섞여있어서 이해하는데 많은 도움이 되었습니다.
다만, 실질적으로 관찰 가능성을 도입하고자 했을 때 명확한 지침이라던지 예시를 좀더 활용했다면 좋았을 것 같다는 생각을 했습니다. 다소 이론적인 부분도 있고 텍스트 위주의 설명이다보니 내용을 잘 모르는 독자에게는 어려움으로 다가갈수도 있다는 생각을 해봤습니다.
책을 모두 읽고 난 뒤에는 관찰 가능성에에 대해서 좀 더 이해할 수 있는 계기가 되었습니다.
본 포스팅은 “한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.”