Grafana は可視化とアラートのサービスです。本番環境のデプロイには、実行中のコンテナー だけでなく、永続的な状態、再現可能なプロビジョニング、認証されたアクセス、バックアップ とアップグレードの手順が必要です。
永続状態で Grafana を実行する #
Grafana は、ユーザー、UI で作成したダッシュボード、アラートデータ、構成メタデータを データベースに保存します。小規模なインストールではデフォルトの SQLite データベースを 永続化し、高可用性デプロイではサポートされている外部データベースを使用して、ロード バランサーの背後で複数の Grafana インスタンスを実行します。
services:
grafana:
image: grafana/grafana:11.2.0
ports:
- "3000:3000"
volumes:
- grafana-data:/var/lib/grafana
- ./provisioning:/etc/grafana/provisioning:ro
environment:
GF_SERVER_ROOT_URL: https://grafana.example.com/
GF_SECURITY_ADMIN_USER: admin
GF_SECURITY_ADMIN_PASSWORD__FILE: /run/secrets/grafana_admin_password
secrets:
- grafana_admin_password
volumes:
grafana-data:
secrets:
grafana_admin_password:
file: ./grafana_admin_password.txt浮動タグではなく、テスト済みのイメージバージョンを固定してください。示したシークレット ファイルは、ファイルシステム権限とデプロイ機構を管理できる場合に限り適しています。 本番環境ではプラットフォームのシークレットマネージャーを使用してください。
データソースとダッシュボードをプロビジョニングする #
プロビジョニングにより、構成をレビュー可能かつ再現可能にできます。Prometheus データ
ソースは provisioning/datasources/prometheus.yaml で定義できます。
apiVersion: 1
datasources:
- name: Prometheus
type: prometheus
access: proxy
url: http://prometheus:9090
isDefault: trueバージョン管理に保存したダッシュボードにはダッシュボードプロビジョニングを使用します。 所有権は慎重に決めてください。ソースファイルが変更されると、再起動時にプロビジョニング されたダッシュボードが上書きされる可能性があります。緊急の UI 変更に対応する手順を 文書化し、変更をソース管理にエクスポートして戻せるようにします。
セキュリティ、バックアップ、アップグレード #
Grafana または信頼できるリバースプロキシで TLS を終端し、公開 root_url を設定して、
正しい OAuth、SAML、LDAP、または匿名アクセスのポリシーを構成します。意図的に公開する
場合を除き、匿名アクセスを無効にしてください。組織とフォルダーの権限を使用して、チーム
が互いのダッシュボードやアラートルールを変更できないようにします。
データベースとプロビジョニングリポジトリを一緒にバックアップし、リストアをテストします。 アップグレード前にリリースノートを読み、データベースをバックアップし、データソースと アラート配信に対して対象バージョンをテストし、ロールバック計画を保持してください。 認証とレート制限の制御なしに、Grafana の管理エンドポイントを直接インターネットへ公開 しないでください。
コメント
GitHub で閲覧・コメントする(投稿にはログインが必要です)