단일 인스턴스 Git Sync

단일 인스턴스 Git Sync

하나의 Grafana 인스턴스를 Git 저장소와 동기화하는 가장 기본적인 Git Sync 시나리오를 소개하는 문서예요. 이 단일 인스턴스 구성은 Git Sync의 기초가 되며, 양방향 동기화가 어떻게 동작하는지 이해하는 데 도움을 줘요.

Git 저장소 구조, 아키텍처, 구성 파라미터, 그리고 Grafana와 Git 사이의 동기화 흐름을 단계별로 확인해 보세요.

출처: 문서

본문

Git 저장소와 동기화되는 단일 Grafana 인스턴스를 사용하는 구성이에요. 이 방식은 Git Sync의 기초가 되며, 양방향 동기화를 이해하는 데 도움을 줍니다.

언제 사용하나요

  • 시작하기(Getting started): 복잡한 시나리오를 구현하기 전에 Git Sync가 어떻게 동작하는지 배우고 싶을 때
  • 개인 프로젝트(Personal projects): 개발자 개인이 자신의 대시보드를 관리할 때
  • 소규모 팀(Small teams): 여러 환경이나 복잡한 워크플로가 없는 단순한 구성을 가진 경우
  • 개발 환경(Development environments): 빠른 프로토타이핑과 테스트가 필요할 때

아키텍처

┌─────────────────────────────────────────────────────┐
│           GitHub Repository                         │
│   Repository: your-org/grafana-manifests          │
│   Branch: main                                      │
│                                                     │
│   grafana-manifests/                              │
│   └── grafana/                                     │
│       ├── dashboard-1.json                         │
│       ├── dashboard-2.json                         │
│       └── dashboard-3.json                         │
└─────────────────────────────────────────────────────┘
                        ↕
              Git Sync (bidirectional)
                        ↕
        ┌─────────────────────────────┐
        │    Grafana Instance         │
        │                             │
        │  Repository Resource:       │
        │  - url: grafana-manifests  │
        │  - branch: main             │
        │  - path: grafana/           │
        │                             │
        │  Creates folder:            │
        │  "grafana-manifests"       │
        └─────────────────────────────┘

저장소 구조

Git에서:

your-org/grafana-manifests
└── grafana/
    ├── dashboard-1.json
    ├── dashboard-2.json
    └── dashboard-3.json

Grafana 대시보드 보기에서:

Dashboards
└── 📁 grafana-manifests/
    ├── Dashboard 1
    ├── Dashboard 2
    └── Dashboard 3
  • 저장소 이름에서 유래한 "grafana-manifests"라는 폴더에 모든 동기화된 대시보드가 들어 있어요.
  • 각 JSON 파일은 대시보드가 되어 폴더 안에 그 제목으로 표시됩니다.
  • 사용자는 이 폴더 구조 아래에 정리된 대시보드를 탐색해요.

구성 파라미터

Grafana 인스턴스가 동기화할 대상을 다음과 같이 구성하세요.

  • 저장소(Repository): your-org/grafana-manifests
  • 브랜치(Branch): main
  • 경로(Path): grafana/

동작 방식

  1. Grafana에서 Git으로: 사용자가 Grafana에서 대시보드를 만들거나 수정하면, Git Sync가 변경 사항을 main 브랜치의 grafana/ 디렉터리에 커밋해요.
  2. Git에서 Grafana로: grafana/ 디렉터리에 대시보드 JSON 파일이 추가되거나 수정되면, Git Sync가 이 변경 사항을 Grafana로 가져와요.

더 알아보기 (Learn more)