[책만 브랜드전] 라마와 앵무새 에코백 증정 (포인트 차감)
이미 소장하고 있다면 판매해 보세요.
|
[1부] 프로메테우스를 시작하며
1장 프로메테우스란 무엇인가 __모니터링이란 무엇인가 __프로메테우스 아키텍처 __프로메테우스 사용시 고려사항 2장 프로메테우스 시작하기 __프로메테우스 실행 __수식 브라우저 사용하기 __노드 익스포터 실행하기 __알림 [2부] 애플리케이션 모니터링 3장 계측 __간단한 예제 프로그램 __카운터 __게이지 __서머리 __히스토그램 __단위 테스팅 계측 __계측 적용 방법 4장 메트릭 게시 __파이썬 __고 __자바 __푸시게이트웨이 __브릿지 __파서 __메트릭 게시 형식 5장 레이블 __레이블의 정의 __계측 레이블과 대상 레이블 __계측 __집계 __레이블 패턴 __레이블 사용 시점 6장 그라파나를 활용한 대시보드 __설치 __데이터 소스 __대시보드와 패널 __그래프 패널 __단일 상태 패널 __테이블 패널 __템플릿 변수 [3부] 인프라스트럭처 모니터링 7장 노드 익스포터 __CPU 수집기 __filesystem 수집기 __diskstats 수집기 __netdev 수집기 __meminfo 수집기 __hwmon 수집기 __stat 수집기 __uname 수집기 __loadavg 수집기 __textfile 수집기 8장 서비스 검색 __서비스 검색 메커니즘 __레이블 재지정 __수집 방법 9장 컨테이너와 쿠버네티스 __cAdvisor __쿠버네티스 10장 일반적인 익스포터 __컨설 익스포터 __HAProxy 익스포터 __그록 익스포터 __블랙박스 11장 다른 모니터링 시스템 사용하기 __다양한 모니터링 시스템 __인플럭스디비 __StatsD 12장 익스포터 작성하기 __컨설 원격측정 __사용자 정의 수집기 __가이드라인 [4부] PromQL 13장 PromQL 활용 __집계 기본 사항 __선택기 __HTTP API 14장 집계 연산자 __그룹화 __집계 연산자 15장 이진 연산자 __스칼라로 작업하기 __벡터 매칭 __연산자 우선순위 16장 함수 __타입 변경 __수학 함수 __시간 및 날짜 함수 __레이블 함수 __카운터 함수 __게이지 변화 __시간의 흐름에 따른 집계 17장 기록 규칙 __기록 규칙 사용하기 __언제 기록 규칙을 사용하는가 __기록 규칙의 이름 지정 방법 [5부] 알림 18장 알림 __알림 규칙 __알림매니저 구성하기 19장 알림매니저 __통보 파이프라인 __구성 파일 __알림매니저 웹 인터페이스 [6부] 배치 20장 배치와 유지보수 __롤아웃 계획하기 __페더레이션 기능을 통한 전역화 __장기 저장소 __프로메테우스 실행 __장애에 대한 계획 세우기 __성능 관리 __변경 관리 __더 읽을거리 |
Brian Brazil
김영기의 다른 상품
김현진의 다른 상품
|
1부 프로메테우스를 시작하며
1부에서는 일반적인 모니터링 방법에 대해 알아보고 프로메테우스를 구체적으로 다룬다. 1장에서는 모니터링의 다양한 의미와 접근 방법, 프로메테우스에서의 메트릭 접근 방법, 프로메테우스의 아키텍처 등을 알아본다. 2장에서는 머신 메트릭의 수집과 쿼리 계산, 알림 통보를 위해 직접 프로메테우스를 설정하고 수행해본다. 2부 애플리케이션 모니터링 자신의 애플리케이션에 직접 추가한 메트릭(metric)에 쉽게 접근할 수 있는 경우, 프로메테우스의 모든 혜택을 누릴 수 있을 것이다. 2부에서는 계측(instrumentation) 기능을 추가하고 사용하는 방법을 알아본다. 3장에서는 기본적인 계측 기능의 추가 방법과 계측이 갖는 혜택에 대해 배워본다. 4장에서는 프로메테우스에서 애플리케이션의 메트릭을 사용하는 방법을 설명한다. 5장에서는 프로메테우스의 가장 강력한 기능 중 하나를 살펴보고, 계측 시에 해당 기능을 사용하는 방법을 살펴본다. 6장에서는 사용자의 애플리케이션 메트릭이 프로메테우스에 추가되고 난 후, 관련 그래프들을 모두 함께 그룹화하는 대시보드를 생성하는 방법에 대해 살펴볼 것이다. 3부 인프라스트럭처 모니터링 세상은 프로메테우스를 중심으로 돌아가지 않으며, 특별히 프로메테우스 메트릭을 별도로 제공하지도 않는다. 익스포터는 다른 시스템의 메트릭을 프로메테우스가 이해할 수 있는 형식으로 변환하는 도구다. 7장에서는 가장 먼저 사용할 가능성이 높은 익스포터 중 하나인 노드 익스포터(Node Exporter)에 대해 자세히 다룬다. 8장에서는 프로메테우스로 가져와야 하는 메트릭이 무엇인지 알아내는 방법과 메트릭을 가져오는 방법을 알아본다. 9장에서는 도커(Docker)와 쿠버네티스(Kubernetes) 같은 컨테이너 기술의 모니터링에 대해 자세히 다룬다. 프로메테우스 생태계에는 말 그대로 수백 개의 익스포터가 있다. 10장에서는 다양하고 전형적인 익스포터의 사용 방법에 대해 살펴본다. 이미 다른 메트릭 기반 모니터링 시스템을 사용할 수도 있으니, 11장에서는 이러한 시스템에 프로메테우스를 통합하는 방법에 대해 살펴본다. 익스포터는 갑자기 나타나지 않는다. 원하는 익스포터가 없는 경우, 12장의 내용을 활용해 익스포터를 생성할 수 있다. 4부 PromQL PromQL, 즉 프로메테우스 쿼리 언어(Prometheus Query Language)는 모든 종류의 집계, 분석, 연산을 할 수 있는 기능을 제공하며, 메트릭을 활용해 우리 시스템의 성능에 대해 더 잘 이해할 수 있게 해준다. 4부에서는 2장에서 생성한 프로메테우스 및 노드 익스포터 설정을 다시 사용하고 쿼리를 실행하기 위해 수식 브라우저를 사용한다. 13장은 PromQL의 기본 사항과 표현식을 실행하기 위해 HTTP API를 사용하는 방법을 다룬다. 14장에서는 집계가 동작하는 방법을 심도 있게 살펴본다. 15장은 추가 및 비교 연산자 같은 다양한 연산자를 다루고, 다양한 메트릭을 함께 조인(Join)하는 방법을 다룬다. 16장에서는 시간을 알아내는 함수부터 언제 하드 디스크가 다 채워질지 예상하는 함수까지 PromQL이 제공하는 광범위하고 다양한 함수에 대해 살펴본다. 17장은 프로메테우스 기록 규칙의 특징을 다룬다. 프로메테우스의 기록 규칙을 지키면 PromQL을 사용한 더 빠르고 정교한 쿼리를 사용해 메트릭을 미리 계산할 수 있다. 5부 알림 새벽 3시에도 모니터링 시스템에서 알림을 받고 이를 확인하기 위해 잠에서 깨길 원한다면, 이번 장은 바로 그런 내용을 다룬다. 앞 장의 내용을 기반으로, 18장에서는 단순히 임계치에 대한 알림 이외의 더 많은 이상 상태에 대한 알림을 가능하게 하는 프로메테우스의 알림 규칙에 대해 다룬다. 프로메테우스에서 알림이 발생하면, 19장에서 설명하는 것처럼 알림매니저는 각 통보를 더 가치있게 하기 위해 그룹화 및 압축하며 알림을 통보로 변환한다. 6부 배치 로컬 머신에서 프로메테우스를 다루는 것은 간단한 작업이지만, 실제 운영 시스템에 프로메테우스를 배치하는 것은 또 다른 문제다. 마지막 20장에서는 운영 환경에서 프로메테우스를 실행하는 실질적인 측면과 프로메테우스의 롤아웃(rolling out) 방법에 대해 살펴본다. - 예제 코드와 구성파일 다운로드 https://github.com/prometheus-up-and-running/examples [이 책의 주요 특징] - 애플리케이션 코드 계측의 대상과 방법 - 레이블을 통한 메트릭의 식별: 고유한 키-값 쌍 - 대시보드 구축용 인기 도구인 그라파나(Grafana) - 인프라스트럭처 모니터링을 위한 노드 익스포터(Node exporter)의 사용 방법 - 머신 및 서비스에 대한 다양한 뷰 제공을 위한 서비스 검색 활용 - 프로메테우스와 쿠버네티스의 연동 방법 - 컨테이너와 함께 사용 가능한 익스포터 - 다른 모니터링 시스템 데이터를 프로메테우스 형식으로 변환하기 [이 책의 독자 대상] 이 책에서는 애플리케이션과 인프라스트럭처 성능에 대한 모니터링, 그래프 작성, 알림 설정 등 프로메테우스 모니터링 시스템의 사용 방법을 자세하게 설명한다. 애플리케이션 개발자, 시스템 관리자, 데브옵스 실무자에게 인프라스트럭처와 애플리케이션의 모니터링, 대시보드 작성과 알림, 직접 코드 계측, 익스포터를 통한 서드파티 시스템에서의 메트릭 수집을 포함해 프로메테우스의 중요한 기능에 대해 실용적인 내용을 소개한다. [지은이의 말] 모니터링에서는 시스템의 동작 여부를 파악하는 것이 중요하지만 그것이 전부는 아니다. 모니터링의 가장 큰 성과는 시스템의 성능을 이해하는 것이다. 성능(performance)이란 각 요청의 응답 시간과 이에 사용된 CPU 사용량뿐만 아니라 더 넓은 의미를 지닌다. 고객의 주문을 처리하기 위해 얼마나 많은 데이터베이스 요청이 필요한가? 처리량이 더 큰 네트워크 장비를 구매해야 할 시점일까? 캐시 미스(cache miss) 를 처리하기 위해 얼마나 많은 머신이 필요한가? 복잡한 기능(feature)을 유지하는 것이 당연할 만큼 사용자가 해당 기능을 충분하게 사용하고 있는가? 메트릭 기반 모니터링 시스템은 이런 종류의 질문에 대한 답을 구할 때 도움이 되며, 단지 답을 구하는 것을 넘어서 그런 답이 왜 나왔는지 이유를 살펴보는 데도 도움이 된다. 모니터링이란 고수준의 개요부터 디버깅에 유용한 핵심 세부사항에 이르기까지, 시스템 전반에 걸쳐 통찰을 얻는 것이라 할 수 있다. 디버깅과 분석을 위한 전체 모니터링 도구에는 메트릭뿐 아니라 로그(logs), 추적(traces), 프로파일링(profiling)도 포함된다. 그러나 시스템 수준의 질문에 대한 답을 구하려는 경우에는 메트릭이 첫 번째 항목이 되어야 한다. 프로메테우스(Prometheus)를 활용하면 애플리케이션에서 베어 메탈(bare metal)까지 시스템 전반에 걸쳐 자유롭게 계측(instrumentation)을 수행할 수 있다. 계측을 통해 모든 서브시스템과 컴포넌트가 상호작용하는 방법을 관찰하고, 관찰한 내용을 통해 미처 몰랐던 내용을 파악할 수 있다. |
|
쿠버네티스가 컨테이너 오케스트레이터로 등장하고 클라우드 네이티브라는 단어가 널리 퍼지면서 애플리케이션을 포함한 시스템에 대한 가시성(visibility)이 더욱 중요하게 대두되고 있습니다. 프로메테우스는 CNCF(클라우드 네이티브 컴퓨팅 재단) 프로젝트 중에서 쿠버네티스에 이어 두 번째로 졸업(graduate)한 프로젝트로, 쿠버네티스 클러스터 및 관련 애플리케이션에 대한 표준 모니터링 툴로 여겨지고 있습니다. 하지만 이상하게도 프로메테우스에 대해 자세히 설명한 책은 거의 찾기 어려웠습니다.
이 책은 프로메테우스의 개념부터, 개발, 구축, 사용법까지 자세하게 설명합니다. 쿠버네티스 클러스터를 운영하며 이와 관련된 모니터링을 구축하고 싶다면 이 책이 적절한 가이드를 줄 수 있습니다. 그뿐 아니라 자신이 개발한 애플리케이션을 커스텀 메트릭으로 모니터링 하고 싶을 때도 이 책에서 많은 도움을 얻을 수 있습니다. 프로메테우스를 처음 배우거나, 좀 더 자세히 알고 싶다면 최우선으로 이 책을 보실 것을 추천드립니다. - 안승규 (SK텔레콤 클라우드 네이티브 개발팀, 쿠버네티스 코리아 그룹 대표) |
|
프로메테우스는 클라우드 네이티브와 컨테이너 네이티브 환경에서 다양한 시스템 메트릭 데이터를 모니터링하는 목적으로 이미 광범위하게 사용되고 있습니다. 하지만 안타깝게도 그간 한글 자료가 부족하던 차에 적절한 시기에 좋은 책이 번역 출간되어 반가운 마음에 책 리뷰에 참여하게 되었습니다. 이 책은 프로메테우스의 역사에서부터 아키텍처, 그라파나, 그리고 PromQL까지 프로메테우스를 활용하기 위한 내용을 알차게 담고 있어, 프로메테우스에 입문하기 위한 책으로 적격이라 생각합니다. 무엇보다도 프로메테우스의 첫 책이라 용어 번역 등의 어려움이 많이 있었음에도 독자들의 이해를 돕는 좋은 책이 출간되었기에 더욱 추천드립니다. - 강인호 (한국 오라클 클라우드 엑설런스팀 부장)
|
|
쿠버네티스와 마찬가지로 모니터링 분야에서 프로메테우스의 성장세는 단연 돋보입니다. 운영하는 클러스터나 컨테이너의 개수가 점점 증가하고 있는 오늘날, 저뿐만 아니라 대다수 사용자가 모니터링의 중요성은 인식하지만 원하는 결과물에 접근하기가 쉽지 않을 것입니다. 이 책에서는 프로메테우스의 사용법과 함께 그라파나를 통해 가시적으로 확인하는 방법을 설명하며, 알림매니저를 통해 특정 상황에 대한 알림을 받아 시스템 운영자들이 장애에 유연하게 대처할 수 있는 방법을 알려줍니다. 개발자들에게는 웹이나 애플리케이션을 모니터링해 성능을 분석하고 문제를 예방하는 데 큰 도움이 될 것입니다. - 이호광 (삼성전자 네트워크사업부 데브옵스 엔지니어)
|
|
다양한 전문 모니터링 도구가 넘쳐나는 지금 '왜 프로메테우스이어야 하는가'에 대한 답을 이 책에서 찾을 수 있었습니다. 전문 모니터링 솔루션인 프로메테우스가 사실상의 표준처럼 사용되는 이유는 CNCF에 소속된 오픈소스 프로젝트 중 두 번째 졸업생이기도 하지만, CNCF의 프로젝트인 쿠버네티스 등과 잘 정합되어 쉽게 모니터링 시스템을 구축할 수 있기 때문입니다. 이 책에서는 프로메테우스의 개념과 설치부터 설정, 예제프로그램의 활용 및 익스포터, PromQL, 대쉬보드인 그라파나에 이르는 매우 방대한 내용을 독자가 따라 할 수 있도록 잘 가이드해줍니다. 웹상의 분산되고 정제되지 않은 정보의 검색에 지친 개발자들에게 이 책은 프로메테우스에 대한 좋은 레퍼런스가 될 것입니다. - 최일환 (삼성전자 네트워크사업부 소프트웨어 아키텍트)
|
|
모니터링은 엔지니어가 시스템을 정상 상태로 유지할 수 있게 도우며, 주요한 모든 비즈니스 서비스의 기초사항이기도 합니다. 프로메테우스의 출시는 모니터링 분야의 분수령과도 같았으며, 모니터링의 수행 방법을 완전히 변화시켰습니다. 이 책은 프로메테우스의 핵심 팀원들이 참여해 저술하고 검토했습니다. 이 책은 독자들이 손에 넣을 수 있는 공식 레퍼런스에 가깝습니다. - 리차드 하트만(Richard Hartmann) (스페이스넷(SpaceNet) 사의 모니터링 책임자)
|
|
이 책에 제시된 모범 사례와 원칙들은 개발자 여러분의 운영 오버헤드를 줄이는 데 도움이 될 것입니다. 프로메테우스를 일일 모니터링 도구로 활용하기 바랍니다. - 올렉 메이코(Oleg Mayko) (스위스컴(Swisscom)의 데브옵스 엔지니어)
|