대시보드 모범 사례 - Amazon Managed Grafana

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

대시보드 모범 사례

이 설명서 항목은 Grafana 버전 10.x를 지원하는 Grafana 작업 영역을 위해 설계되었습니다.

Grafana 버전 9.x를 지원하는 Grafana 작업 영역에 대한 내용은 을 참조하십시오. Grafana 버전 9에서 작업하기

Grafana 버전 8.x를 지원하는 Grafana 작업 영역에 대한 내용은 을 참조하십시오. Grafana 버전 8에서 작업하기

이 섹션에서는 Grafana 관리자 및 사용자를 위한 Grafana 대시보드 구축 및 유지 관리 방법에 대한 모범 사례에 대한 정보를 제공합니다.

만들 수 있는 다양한 종류의 대시보드에 대한 자세한 내용은 Grafana 대시보드: Grafana Labs 웹 사이트에서 블로그 게시물을 작성할 수 있는 모든 유형에 대한 전체 안내서를 참조하십시오.

참고

이 섹션은 모니터링 및 대시보드 유지 관리를 위한 전략을 수립하는 데 도움이 될 수 있습니다. 시스템을 가장 잘 알고 있으므로 이 섹션을 참고하여 이해해야 합니다. 궁극적으로 시스템에 가장 적합한 전략을 수립하는 것은 사용자의 책임입니다.

일반적인 옵저버빌리티 전략

서버 팜과 같이 모니터링해야 할 것이 많은 경우에는 모니터링할 만큼 중요한 대상을 결정하는 전략이 필요합니다. 이 페이지에서는 모니터링 대상을 선택하는 몇 가지 일반적인 방법을 설명합니다.

논리적 전략을 사용하면 통일된 대시보드를 만들고 옵저버빌리티 플랫폼을 더 쉽게 확장할 수 있습니다.

전략 가이드라인

  • USE 방법은 시스템 만족도를 나타내고, RED 방법은 사용자 만족도를 나타냅니다.

  • 문제 원인에 대한 USE 보고서.

  • RED는 사용자 경험을 보고하며 문제 증상을 보고할 가능성이 더 높습니다.

  • 시스템을 이해하려면 두 가지를 모두 모니터링하는 것이 중요합니다. 원인보다는 증상에 대해 경고하는 것이 가장 좋습니다. 일반적으로 알림은 RED 대시보드에서 구성됩니다.

사용 방법

USE는 다음을 의미합니다.

  • 사용률 — 리소스 사용량 (예: 노드 CPU 사용량) 의 백분율입니다.

  • 채도 — 리소스가 수행해야 하는 작업량 (대개 대기열 길이 또는 노드 로드) 입니다.

  • 오류 — 오류 이벤트 수입니다.

이 방법은 CPU, 메모리, 네트워크 장치와 같은 인프라의 하드웨어 리소스에 가장 적합합니다. 자세한 내용은 브렌던 그레그의 블로그 게시물인 USE Method를 참조하십시오.

RED 메소드

빨간색은 다음을 의미합니다.

  • 속도 — 초당 요청 수

  • 오류 — 실패한 요청 수입니다.

  • 기간 - 요청에 소요되는 시간, 지연 시간 측정치 분포

이 방법은 서비스, 특히 마이크로서비스 환경에 가장 적합합니다. 각 서비스에 대해 코드를 계측하여 각 구성 요소에 대한 이러한 메트릭을 노출하십시오. 빨간색 대시보드는 알림 및 SLA에 적합합니다. 잘 설계된 RED 대시보드는 사용자 경험을 위한 프록시입니다.

자세한 내용은 Tom Wilkie의 블로그 게시물인 RED 방법: 서비스 계측 방법을 참조하십시오.

네 개의 골든 시그널

Google SRE 핸드북에 따르면, 사용자 대면 시스템에서 측정할 수 있는 측정항목이 4개뿐이라면 이 네 가지에 집중하세요.

이 방법은 RED 방법과 비슷하지만 채도도 포함됩니다.

  • 지연 시간 — 요청을 처리하는 데 걸린 시간입니다.

  • 트래픽 — 시스템에 가해지는 수요의 양.

  • 오류 — 실패한 요청의 비율.

  • 포화도 — 시스템이 얼마나 “꽉 찼는지”,

대시보드 관리 성숙도 모델

대시보드 관리 성숙도는 대시보드 에코시스템이 얼마나 잘 설계되고 효율적인지를 나타냅니다. 대시보드 설정을 주기적으로 검토하여 현재 상황과 개선 방법을 파악하는 것이 좋습니다.

대시보드 성숙도는 대체로 낮음, 중간 또는 높음으로 정의할 수 있습니다.

이 주제에 대한 대부분의 내용은 KubeCon 2019년 강연에서 수면이 부족한 온콜을 위한 Fool-Proof Kubernetes 대시보드에서 발췌했습니다.

낮음 — 기본 상태

이 단계에서는 일관된 대시보드 관리 전략이 없습니다. 거의 모든 사람이 여기서부터 시작합니다.

당신이 여기 있다는 걸 어떻게 알 수 있죠?

  • 누구나 대시보드를 수정할 수 있습니다.

  • 복사된 대시보드가 많으며 대시보드 재사용은 거의 또는 전혀 없습니다.

  • 오래 사용할 수 있는 일회용 대시보드.

  • 버전 제어가 없습니다 (버전 제어의 대시보드 JSON).

  • 적절한 대시보드를 찾느라 대시보드를 많이 찾아다닙니다. 따라서 필요한 대시보드를 찾는 데 많은 시간을 낭비할 수 있습니다.

  • 올바른 대시보드로 안내해 주는 알림이 없습니다.

중형 — 체계적인 대시보드

이 단계에서는 체계적인 대시보드를 통해 대시보드 사용을 관리하기 시작합니다. 전략을 세웠을 수도 있지만 개선해야 할 부분이 몇 가지 있습니다.

당신이 여기 있는지 어떻게 알 수 있나요?

  • 템플릿 변수를 사용하여 스프롤을 방지하세요. 예를 들어 각 노드에 대해 별도의 대시보드가 필요하지 않고 쿼리 변수를 사용할 수 있습니다. 더 좋은 점은 데이터 원본을 템플릿 변수로 만들어 여러 클러스터와 모니터링 백엔드에서 동일한 대시보드를 재사용할 수 있다는 것입니다.

    아이디어를 얻으려면 의 Variables 예제 목록을 참조하십시오.

  • 옵저버빌리티 전략에 따른 체계적인 대시보드.

  • 다음 단계로 드릴다운할 수 있는 계층적 대시보드.

  • 대시보드 디자인은 서비스 계층 구조를 반영합니다. 예를 들어 서비스당 행 하나와 함께 RED 메서드를 사용할 수 있습니다. 대시보드를 아래로 스크롤할 때 행 순서는 데이터 흐름을 반영할 수 있습니다.

  • 규모가 다를 경우 서비스 대시보드를 분할하는 것과 같이 비교해 보세요. 집계된 지표로 인해 중요한 정보가 빠지지 않도록 하세요.

  • 의미 있는 색상과 정규화 축을 최대한 활용하여 표현력이 풍부한 차트.

    • 의미 있는 색상의 예: 파란색은 양호함을 의미하고 빨간색은 나쁘다는 의미입니다. 임계값이 이에 도움이 될 수 있습니다.

    • 축 정규화의 예: CPU 사용량을 비교할 때는 시스템의 코어 수가 다를 수 있으므로 원시 숫자가 아닌 백분율로 측정하십시오. CPU 사용량을 코어 수로 정규화하면 사용자가 CPU 수를 몰라도 100% 모든 코어가 사용되고 있다고 신뢰할 수 있기 때문에 인지 부하가 줄어듭니다.

  • 다이렉트 브라우징은 추측을 줄여줍니다.

    • 템플릿 변수를 사용하면 무작위로 또는 목적 없이 탐색하기가 더 어려워집니다.

    • 대부분의 대시보드는 알림을 통해 연결되어야 합니다.

    • 탐색은 링크로 안내됩니다. 자세한 정보는 대시보드 링크 관리을 참조하세요.

  • 버전 제어 대시보드 JSON.

고도로 최적화된 사용

이 단계에서는 일관되고 신중한 전략으로 대시보드 관리 사용을 최적화했습니다. 유지 관리가 필요하지만 결과는 그만한 가치가 있습니다.

  • 스프롤을 적극적으로 줄입니다.

    • 기존 대시보드를 정기적으로 검토하여 여전히 관련성이 있는지 확인하세요.

    • 승인된 대시보드만 마스터 대시보드 목록에 추가되었습니다.

    • 대시보드 사용 추적. 사용량 통계를 활용할 수 있습니다.

  • 설계에 따른 일관성.

  • 스크립팅 라이브러리를 사용하여 대시보드를 생성하고 패턴과 스타일의 일관성을 보장하세요.

    • 그라포넷 (Jsonnet)

    • 그라파날립 (Python)

  • 브라우저에서 편집할 수 없습니다. 대시보드 뷰어는 변수를 사용하여 뷰를 변경합니다.

  • 대시보드 탐색은 예외일 뿐 규칙이 아닙니다.

  • 프로덕션 인스턴스가 아닌 해당 용도에 맞는 별도의 Grafana 인스턴스에서 실험 및 테스트를 수행합니다. 테스트 환경의 대시보드가 유용한 것으로 확인되면 해당 대시보드를 기본 Grafana 인스턴스에 추가하세요.

대시보드 생성 모범 사례

이 섹션에서는 Grafana 대시보드를 만들 때 따라야 할 몇 가지 모범 사례를 간략하게 설명합니다.

시작하기 전에

대시보드를 만들기 전에 고려해야 할 몇 가지 원칙은 다음과 같습니다.

대시보드는 스토리를 전달하거나 질문에 답해야 합니다.

대시보드를 통해 전달하려는 스토리는 무엇입니까? 큰 데이터에서 작은 데이터로 또는 일반 데이터에서 특정 데이터로 데이터를 논리적으로 발전시켜 보세요. 이 대시보드의 목표는 무엇입니까? (힌트: 대시보드에 목표가 없다면 대시보드가 정말 필요한지 자문해 보세요.)

그래프를 단순하게 작성하고 질문에 대한 답을 찾는 데 집중하세요. 예를 들어, 질문이 “어떤 서버에 문제가 있습니까?” 인 경우 그러면 모든 서버 데이터를 표시할 필요가 없을 수도 있습니다. 문제가 있는 사람들을 위한 데이터만 보여주세요.

대시보드는 인지 부하를 가중시키는 것이 아니라 줄여야 합니다.

인지 부하란 기본적으로 무언가를 파악하기 위해 얼마나 열심히 생각해야 하는지를 나타냅니다. 대시보드를 해석하기 쉽게 만드세요. 다른 사용자들과 미래의 당신 (오전 2시에 무엇이 고장났는지 알아내려고 할 때) 은 고마워할 것입니다.

스스로에게 물어보세요.

  • 각 그래프가 정확히 무엇을 나타내는지 알 수 있을까요? 당연한 걸까요, 아니면 곰곰이 생각해 봐야 할까요?

  • 이걸 다른 사람에게 보여주면 알아내는 데 얼마나 걸릴까요? 길을 잃게 될까요?

모니터링 전략을 세워보세요

새 대시보드를 만드는 것은 쉽습니다. 대시보드 생성을 최적화하고 계획을 준수하는 것은 더 어렵지만 그만한 가치가 있습니다. 이 전략은 전체 대시보드 체계를 관리하고 개별 대시보드 디자인의 일관성을 강화해야 합니다.

자세한 내용은 일반적인 옵저버빌리티 전략대시보드 관리 성숙도 수준을 참조하십시오.

기록해 두세요.

전략 또는 설계 가이드라인을 정한 후에는 시간이 지나도 일관성을 유지하는 데 도움이 되도록 이를 기록해 두십시오.

따라야 할 모범 사례

  • 새 대시보드를 만들 때는 의미 있는 이름을 지정해야 합니다.

    • 플레이하거나 실험할 대시보드를 만들려면 이름에 or라는 단어를 TEST 넣으세요. TMP

    • 대시보드 소유자를 사람들이 알 수 있도록 대시보드 이름이나 태그에 이름이나 이니셜을 포함하는 것을 고려해 보세요.

    • 실험 대시보드 사용을 완료하면 임시 실험 대시보드를 제거하세요.

  • 관련 대시보드를 여러 개 만드는 경우 쉽게 탐색할 수 있도록 상호 참조하는 방법을 생각해 보세요. 자세한 내용은 이 섹션 뒷부분에 나오는 대시보드 관리 모범 사례를 참조하십시오.

  • Grafana는 데이터 소스에서 데이터를 검색합니다. 일반적인 데이터 소스와 특정 데이터 데이터 원본에 연결 소스에 대한 기본적인 이해가 중요합니다.

  • 네트워크 또는 백엔드의 부하를 줄이기 위해 불필요한 대시보드 새로 고침을 피하세요. 예를 들어 데이터가 1시간마다 변경되는 경우 대시보드 새로 고침 빈도를 30초로 설정할 필요가 없습니다.

  • 단위 또는 범위가 다른 시계열을 표시할 때는 왼쪽 및 오른쪽 Y축을 사용합니다.

  • 대시보드와 패널에 문서를 추가합니다.

    • 대시보드에 문서를 추가하려면 대시보드에 텍스트 패널 시각화를 추가하십시오. 대시보드의 목적, 유용한 리소스 링크, 사용자가 대시보드와 상호 작용하는 데 필요할 수 있는 지침 등을 기록해 두십시오.

    • 패널에 문서를 추가하려면 패널 설정을 편집하고 설명을 추가하세요. 패널 왼쪽 상단의 작은 i 부분에 커서를 갖다 대면 추가한 모든 텍스트가 나타납니다.

  • 템플릿과 변수를 사용하여 대시보드를 재사용하고 일관성을 유지하세요.

  • 그래프 데이터를 쌓을 때는 주의해야 합니다. 시각화는 오해의 소지가 있고 중요한 데이터를 숨길 수 있습니다. 대부분의 경우 이 기능을 끄는 것이 좋습니다.

대시보드 관리 모범 사례

이 페이지에서는 Grafana 대시보드를 관리할 때 따라야 할 몇 가지 모범 사례를 간략하게 설명합니다.

시작하기 전에

대시보드 관리를 시작하기 전에 고려해야 할 몇 가지 원칙은 다음과 같습니다.

전략적 관찰 가능성

몇 가지 일반적인 옵저버빌리티 전략이 있습니다. 이를 조사해서 그 중 하나가 자신에게 맞는지 아니면 자신만의 방법을 생각해 내고 싶은지 결정해야 합니다. 어느 쪽이든, 계획을 세우고, 적어두고, 고수하세요.

필요에 따라 변화하는 요구 사항에 맞게 전략을 조정하세요.

성숙도 수준

대시보드 성숙도는 어떻게 되나요? 현재 대시보드 설정을 분석하고 이를 대시보드 관리 성숙도 모델과 비교하십시오. 현재 위치를 이해하면 원하는 곳으로 가는 방법을 결정하는 데 도움이 될 수 있습니다.

따라야 할 모범 사례

  • 대시보드가 무분별하게 확장되어 대시보드가 무분별하게 확장되는 현상을 방지하세요. 대시보드의 무분별한 확장은 적절한 대시보드를 찾는 데 걸리는 시간에 부정적인 영향을 미칩니다. 대시보드를 복제하고 “한 가지” (더 나쁜 것은 원래 태그를 유지하는 것) 를 변경하는 것이 가장 쉬운 유형입니다.

    • 정기적으로 대시보드를 검토하고 불필요한 대시보드를 제거하세요.

    • 테스트 목적으로 임시 대시보드를 만드는 경우 이름에 접두사를 붙이세요. TEST: 작업을 마치면 대시보드를 삭제하세요.

  • 큰 변경 사항이 없는 대시보드를 복사하는 것은 좋은 생각이 아닙니다.

    • 문서 변경, 버그 수정, 지표 추가 등 원래 대시보드에 대한 업데이트를 놓치게 됩니다.

    • 대부분의 경우 템플릿 매개변수를 설정하여 뷰를 간단히 사용자 지정하기 위해 복사본이 만들어지고 있습니다. 대신 마스터 대시보드에 대한 링크를 유지하고 URL 매개변수로 뷰를 사용자 지정하여 이 작업을 수행해야 합니다.

  • 대시보드를 복사해야 하는 경우에는 대시보드 이름을 분명히 바꾸고 대시보드 태그를 복사하지 마십시오. 태그는 검색 중에 사용되는 대시보드의 중요한 메타데이터입니다. 태그를 복사하면 잘못된 일치가 발생할 수 있습니다.

  • 대시보드 또는 상호 참조 대시보드로 구성된 대시보드를 유지 관리하세요. 다음과 같은 여러 가지 방법으로 이 작업을 수행할 수 있습니다.

    • 대시보드 링크, 패널 또는 데이터 링크를 만들 수 있습니다. 링크는 다른 대시보드나 외부 시스템으로 이동할 수 있습니다. 자세한 내용은 대시보드 링크 관리를 참조하십시오.

    • 대시보드 목록 패널 추가. 그런 다음 태그 또는 폴더 검색을 수행하여 표시되는 내용을 사용자 지정할 수 있습니다.

    • 텍스트 패널을 추가하고 마크다운을 사용하여 표시를 사용자 지정합니다.