1.4. Grafana 대시보드 설계
grafana-dev
인스턴스를 생성하여 Grafana 대시보드를 설계할 수 있습니다.
1.4.1. Grafana 개발자 인스턴스 설정
먼저 stolostron/multicluster-observability-operator/
리포지토리를 복제하여 도구
폴더에 있는 스크립트를 실행할 수 있습니다. Grafana 개발자 인스턴스를 설정하려면 다음 단계를 완료합니다.
setup-grafana-dev.sh
를 실행하여 Grafana 인스턴스를 설정합니다. 스크립트를 실행하면secret/grafana-dev ,
,deployment.apps/grafana-dev
service/grafana-dev
,ingress.extensions/grafana-dev
,persistentvolumeclaim/grafana-dev
:./setup-grafana-dev.sh --deploy secret/grafana-dev-config created deployment.apps/grafana-dev created service/grafana-dev created ingress.extensions/grafana-dev created persistentvolumeclaim/grafana-dev created
switch-to-grafana-admin.sh
스크립트를 사용하여 사용자 역할을 Grafana 관리자로 전환합니다.-
Grafana URL,
https://$ACM_URL/grafana-dev/
를 선택하고 로그인합니다. 그런 다음 다음 명령을 실행하여 switched 사용자를 Grafana 관리자로 추가합니다. 예를 들어
kubeadmin
를 사용하여 로그인한 후 다음 명령을 실행합니다../switch-to-grafana-admin.sh kube:admin User <kube:admin> switched to be grafana admin
-
Grafana URL,
Grafana 개발자 인스턴스가 설정됩니다.
1.4.2. Grafana 대시보드 설계
Grafana 인스턴스를 설정한 후 대시보드를 설계할 수 있습니다. Grafana 콘솔을 새로고침하고 대시보드를 설계하려면 다음 단계를 완료합니다.
- Grafana 콘솔에서 탐색 패널에서 생성 아이콘을 선택하여 대시보드를 만듭니다. Dashboard 를 선택한 다음 새 패널 추가 를 클릭합니다.
- 새 대시보드/편집 패널 보기에서 쿼리 탭으로 이동합니다.
-
데이터 소스 선택기에서
Observatorium
을 선택하고 PromQL 쿼리를 입력하여 쿼리를 구성합니다. - Grafana 대시보드 헤더에서 대시보드 헤더에 있는 저장 아이콘을 클릭합니다.
- 설명이 포함된 이름을 추가하고 저장 을 클릭합니다.
1.4.2.1. ConfigMap을 사용하여 Grafana 대시보드 설계
ConfigMap을 사용하여 Grafana 대시보드를 설계하려면 다음 단계를 완료합니다.
generate-dashboard-configmap-yaml.sh
스크립트를 사용하여 대시보드 ConfigMap을 생성하고 ConfigMap을 로컬로 저장할 수 있습니다../generate-dashboard-configmap-yaml.sh "Your Dashboard Name" Save dashboard <your-dashboard-name> to ./your-dashboard-name.yaml
이전에 언급한 스크립트를 실행할 수 있는 권한이 없는 경우 다음 단계를 완료합니다.
- 대시보드를 선택하고 대시보드 설정 아이콘을 클릭합니다.
- 탐색 패널에서 JSON 모델 아이콘을 클릭합니다.
-
대시보드 JSON 데이터를 복사하여
data
섹션에 붙여넣습니다. 이름을
수정하고$your-dashboard-name
을 바꿉니다.uid
필드에data.$your-dashboard-name.json.$$your_dashboard_json
에 UUID(Universally unique identifier)를 입력합니다. uuidegen 과 같은 프로그램을 사용하여 UUID를 만들 수 있습니다. ConfigMap은 다음 파일과 유사할 수 있습니다.kind: ConfigMap apiVersion: v1 metadata: name: $your-dashboard-name namespace: open-cluster-management-observability labels: grafana-custom-dashboard: "true" data: $your-dashboard-name.json: |- $your_dashboard_json
참고: 대시보드가 일반 폴더에 없는 경우 이 ConfigMap의
annotations
섹션에 폴더 이름을 지정할 수 있습니다.annotations: observability.open-cluster-management.io/dashboard-folder: Custom
ConfigMap에 대한 업데이트를 완료한 후 설치하여 대시보드를 Grafana 인스턴스로 가져올 수 있습니다.
1.4.3. Grafana 개발자 인스턴스 설치 제거
인스턴스를 설치 제거하면 관련 리소스도 삭제됩니다. 다음 명령을 실행합니다.
./setup-grafana-dev.sh --clean secret "grafana-dev-config" deleted deployment.apps "grafana-dev" deleted service "grafana-dev" deleted ingress.extensions "grafana-dev" deleted persistentvolumeclaim "grafana-dev" deleted