Grafana Cloud 마이그레이션 어시스턴트

Grafana Cloud 마이그레이션 어시스턴트 (Grafana Cloud Migration Assistant)

Grafana Cloud Migration Assistant는 Grafana OSS/Enterprise 인스턴스의 리소스를 Grafana Cloud로 자동 마이그레이션해줘요. 자체 관리 인스턴스를 Grafana Cloud 인스턴스에 안전하게 연결하고, 대시보드·데이터 소스·폴더 같은 리소스를 몇 가지 간단한 단계로 마이그레이션하며, 리소스 마이그레이션 상태를 실시간으로 볼 수 있죠.

출처: 문서

본문

마이그레이션 어시스턴트의 장점:

  • 사용 용이성: UI가 제공하는 단계를 따라 모든 리소스를 Grafana API나 스크립트 없이 쉽게 마이그레이션해요.
  • 보안: 리소스를 암호화해 연결된 Grafana Cloud 인스턴스로 안전하게 마이그레이션해요.
  • 속도: 몇 분 안에 모든 리소스를 마이그레이션하고 Grafana Cloud로의 전환을 가속화해요.

지원되는 리소스

  • Dashboards
  • Folders
  • Data sources
  • App Plugins
  • Panel Plugins
  • Library Panels
  • Grafana Alerting 리소스

시작하기 전에

  • 자체 관리 Grafana 인스턴스.
  • 리소스를 마이그레이션할 Grafana Cloud Stack.
  • Grafana Cloud Stack에 대한 Admin 접근. 접근 레벨 확인: https://grafana.com/orgs/<YOUR-ORG-NAME>/members.
  • 기존 자체 관리 Grafana 인스턴스에 대한 Grafana 서버 관리자 접근. 확인: https://<GRAFANA-ONPREM-URL>/admin/users.
  • 자체 관리 인스턴스에서 인터넷 접근.
  • 고가용성 설정에서 Grafana를 실행한다면 알려진 버그를 피하기 위해 Grafana를 단일 replica로 축소하는 것을 권장해요.
  • 네트워크가 외부 서비스 허용 목록을 요구한다면 다음 IP와 URL을 허용 목록에 추가해요: Hosted Grafana, Hosted Alerts, S3 서비스용 AWS IP address ranges, *.grafana.net.

어시스턴트 접근

Grafana OSS에서는 어시스턴트 접근이 서버 관리자로 제한돼요. Grafana Enterprise에서는 서버 관리자가 기본적으로 접근하며, 역할 기반 접근 제어(RBAC) 역할로 다른 관리자에게 Grafana Cloud에 리소스 보기·스냅샷 빌드·업로드 권한을 부여할 수 있어요.

Grafana Enterprise에서 접근 부여

Note: 다른 관리자에게 Grafana Migration Assistant 접근을 부여하려면 먼저 RBAC를 구성해야 해요.

  1. 서버 관리자로 Grafana에 로그인해요.
  2. Grafana 사이드바에서 Home > Administration > Users and access > Users로 이동해요.
  3. Admin을 클릭해요.
  4. Organizations 섹션에서 Change role을 클릭해요.
  5. Migration Assistant 아래 역할 선택 메뉴에서 Organization resource migrator를 선택해요.
  6. Apply를 클릭해요.

어시스턴트 사용하기

어시스턴트로 Grafana Cloud 인스턴스에서 마이그레이션 토큰을 생성하고, 그 토큰으로 자체 관리 인스턴스를 연결하며, 자체 관리 인스턴스의 스냅샷을 만들어 Grafana Cloud에 업로드해요.

대상 클라우드 인스턴스에서 마이그레이션 토큰 생성:

  1. 리소스를 마이그레이션할 클라우드 인스턴스에서 Home > Administration > General > Migrate to Grafana Cloud로 이동해요.
  2. Generate a migration token 버튼을 클릭해요.
  3. 토큰을 클립보드에 복사해 사본을 만들어요. 토큰은 자체 관리 인스턴스를 Grafana Cloud Stack과 인증하는 데 필요해요.

자체 관리 Grafana 인스턴스를 Grafana Cloud Stack에 연결:

  1. 자체 관리 인스턴스에서 Home > Administration > General > Migrate to Grafana Cloud로 이동해요.
  2. Migrate this instance to Cloud 버튼을 클릭해요.
  3. Migration token 필드에 토큰을 입력하고 Connect to this Stack을 클릭해요.

스냅샷 빌드: 클라우드 스택에 연결한 뒤 어시스턴트는 빈 상태예요. 자체 관리 인스턴스의 스냅샷을 만들어 클라우드 스택에 업로드해야 해요.

  1. 클라우드 스택으로 마이그레이션할 각 리소스 옆의 체크박스를 선택해요.

Note: 일부 리소스는 다른 리소스에 의존하므로 단독으로 업로드할 수 없어요:

Desired resource Requires
Dashboards Library Elements, Data Sources, Plugins, Folders
Library Elements Folders
Data Sources Plugins
Plugins Nothing else
Folders Nothing else
All Alert rule groups All other resources
Alert Rules Dashboards, Library Elements, Data Sources, Plugins, Folders, Notification Policies, Notification Templates, Contact Points, Mute Timings
Notification Policies Notification Templates, Contact Points, Mute Timings
Notification Templates Nothing else
Contact Points Notification Templates
Mute Timings Nothing else
  1. Build snapshot을 클릭해요.

클라우드로 리소스 업로드: 스냅샷이 만들어지면 Type과 Status가 "Not yet uploaded"로 채워진 리소스 목록이 나타나요.

  1. Upload snapshot을 클릭해 리소스를 Grafana Cloud 인스턴스로 복사해요.
  2. 어시스턴트의 실시간 진행 상황 추적으로 마이그레이션을 모니터링해요. 성공적으로 복사된 리소스는 상태가 'Uploaded to cloud'로 바뀌어요.
  3. 마이그레이션 중·후에 리소스를 그룹화하고 정렬할 수 있어요: Name(알파벳순 정렬), Type(리소스 유형별 그룹·정렬), Status(업로드 상태별 그룹·정렬 — 대기, 성공, 오류). Snapshot 정보도 총 리소스·오류·성공 마이그레이션 수를 알려줘요.
  4. 수동 해결이 필요한 문제에 대한 오류 세부 정보를 검토해요.

어시스턴트가 만든 스냅샷

어시스턴트는 현재 Grafana에서 사용 가능한 전체 리소스의 일부만 지원해요 (Supported Resources 참고). 스냅샷을 만들면 선택한 모든 리소스의 사본이 스냅샷에 저장돼요. 스냅샷은 빌드 시점의 리소스 상태를 반영하며 인스턴스에 로컬로 저장되어 마지막 단계에서 업로드할 준비를 해요. 스냅샷에 저장된 리소스는 조직 내에 저장된 리소스로만 엄격히 제한돼요 — Grafana 인스턴스에 여러 조직을 쓴다면 중요해요. 여러 조직을 마이그레이션하려면 "Migrate multiple organizations" 문서를 참고하세요.

리소스 마이그레이션 세부 정보

마이그레이션 중 리소스 UID가 보존되어 로컬과 클라우드 리소스를 대응시킬 수 있어요. 같은 마이그레이션을 여러 번 수행하면 이전에 마이그레이션된 Grafana Cloud 스택 리소스가 업데이트돼요. 어시스턴트는 자체 관리 리소스나 스냅샷에서 오지 않은 클라우드 리소스는 절대 수정하지 않아요.

  • 대시보드와 폴더: 대시보드 이름과 UID, 데이터 소스 참조가 보존되고 폴더 계층도 보존되어 동일한 폴더 위치에서 대시보드를 찾을 수 있어요.
  • 데이터 소스: 자격 증명을 포함한 데이터 소스가 안전하게 클라우드 인스턴스로 마이그레이션되므로 다시 입력할 필요가 없어요.
  • 플러그인: 플러그인 카탈로그에 있는 모든 플러그인을 지원해요. 서명되었거나 Grafana 내장 코어 플러그인이라면 마이그레이션할 수 있어요. 보안상 Grafana Cloud는 서명되지 않은 플러그인을 지원하지 않아요. 서명되지 않은 비공개 플러그인을 쓰고 있다면 카탈로그에서 대안을 찾거나 일부 기능을 폐기하는 전략을 세우세요. 마이그레이션할 플러그인은 어시스턴트 사용 전에 업그레이드하세요 — 마이그레이션된 플러그인은 Grafana Cloud 인스턴스에서 최신 버전으로 구성되기 때문이에요.

Caution: Enterprise 플러그인을 마이그레이션하려면 Grafana Cloud 인스턴스의 플랜 종류와 그 플랜이 Enterprise 플러그인 애드온을 요구하는지 확인하세요.

  • Grafana Alerting 리소스: 알림 규칙, 알림, 연락처(contact points), 음소거 타이밍(mute timings), 알림 정책 트리, 알림 템플릿을 마이그레이션할 수 있어요. 이것으로 최소한의 노력으로 Alerting 구성을 Grafana Cloud에서 실행할 수 있어요.

Alerting 리소스의 어시스턴트 제한: 어시스턴트는 Silences(침묵) 마이그레이션을 지원하지 않으므로 수동으로 구성해야 해요. Alert History도 마이그레이션할 수 없어요. 많은 수의 알림 규칙을 마이그레이션하려 하면 다음 오류가 발생할 수 있어요:

Maximum number of alert rule groups reached: Delete some alert rule groups or upgrade your plan and try again.

이를 피하려면 알림 규칙 마이그레이션 시 Grafana Cloud의 Alert rule limits를 참고하세요.

중복 알림 방지: Alerting 리소스를 성공적으로 마이그레이션하면 두 세트의 알림이 발생할 수 있어요 — 1) OSS/Enterprise 인스턴스에서, 2) 새로 마이그레이션된 Grafana Cloud 인스턴스의 알림. 이중 알림을 피하기 위해 custom.ini 또는 grafana.ini 파일의 새 alert_rules_state 구성 옵션이 Alert Rules를 Grafana Cloud 인스턴스로 마이그레이션하는 방식을 제어하며, 기본적으로 paused로 설정되어 중복 알림 없이 Alerting 리소스를 검토·테스트할 수 있게 해요.

  • paused: Cloud 인스턴스에서 모든 Alert rules를 paused 상태로 만듭니다. 이중 알림을 피하는 데 유용해요.
  • unchanged: Alert rules가 소스 인스턴스에서 온 원래 상태를 유지해요. Grafana Cloud 인스턴스의 알림 규칙과 알림 사용을 시작할 준비가 되면 alert_rules_state = unchanged로 다시 마이그레이션해요.

리소스 권한: 어시스턴트는 아직 팀이나 RBAC 권한을 마이그레이션하지 않으므로 리소스는 기본 권한으로 마이그레이션돼요. 마이그레이션 후 클라우드 스택에서 권한을 필요에 따라 재구성해요.

여러 조직 마이그레이션

Grafana Cloud는 organizations 기능을 지원하지 않지만, 대신 폴더와 RBAC로 리소스를 보호하고 권한을 부여할 수 있어요. 권장 경로는 여러 조직을 단일 클라우드 스택으로 마이그레이션하는 것이에요 — 가장 간단하고 사용자 경험이 좋아요. 어시스턴트는 특정 조직 내 리소스를 기반으로 스냅샷을 만들고 업로드해요. 여러 조직이 있는 Grafana 인스턴스 전체를 한 번에 마이그레이션하는 옵션은 없으며, 마이그레이션하려는 각 조직마다 프로세스를 실행해야 해요. Grafana 서버 관리자는 기본적으로 어시스턴트 접근 권한이 있으며, 조직을 전환하며 각각 실행해 마이그레이션할 수 있어요. 또한 RBAC "Migration Assistant:Organization resource migrator" 역할로 조직 관리자에게 어시스턴트 접근을 부여해 각자 조직에 대한 마이그레이션을 실행하게 할 수 있어요.

Cloud 인스턴스에서 접근 제어와 리소스 관리

조직을 처음 설정하는 주된 이유는 리소스 격리예요. Grafana Cloud에서는 리소스를 폴더로 구성하고 조직에 대응하는 팀과 권한을 설정해 이를 달성할 수 있어요. 팀과 권한 구성에 대한 자세한 내용은 "Configure Grafana Teams" 문서를 참고하세요.

더 알아보기 (Learn more)