Grafanaダッシュボードサービス
GitLab 11.9 で導入されました。
Grafanaは、組み込まれたPrometheusモニタリングシステムからパフォーマンスメトリクスを可視化するために使用できる強力なダッシュボード構築システムです。
GitLab 12.0 からは、Grafana がデフォルトで有効になり、GitLab との SSO が自動的に設定されます。 Grafana はhttps://gitlab.example.com/-/grafana
で利用可能になります。
ユーザー名とパスワードを使用したログインを有効にします。
Grafanaへのユーザー名/パスワードによるログインは無効化されており、デフォルトではGitLab SSOのみが利用可能です。 しかし、管理者アカウントにアクセスするには、ユーザー名/パスワードによるログインを有効にする必要があります。そのためには、/etc/gitlab/gitlab.rb
ファイルに以下の行を追加し、再設定します:
grafana['disable_login_form'] = false
管理者パスワードの指定
admin_password
の設定は何の効果もなく、手動でパスワードをリセットする必要があります。また、管理者アカウントにアクセスするには、ユーザー名とパスワードを使用したログインを有効にする必要があります。管理者パスワードを指定するには、/etc/gitlab/gitlab.rb
ファイルに以下の行を追加して再設定します:
grafana['admin_password'] = 'foobar'
管理者パスワードが提供されない場合、GitLabはセキュリティ対策として管理者ユーザー用のランダムなパスワードを自動生成します。 しかし、その場合、管理者ユーザーにアクセスするには手動でパスワードをリセットする必要があります。
Grafanaの無効化
-
/etc/gitlab/gitlab.rb
を編集し、以下の行を追加/編集します:## Set to true/false to enable/disable respectively grafana['enable'] = false
-
ファイルを保存し、変更を有効にするために GitLab を再設定します。
認証
ユーザーにGrafanaへのアクセス権を与えたい場合、2つの選択肢があります。
Grafanaの認証システムの使用
Grafanaでユーザーが自分のアカウントを作成できるようにするため:
-
/etc/gitlab/gitlab.rb
を編集し、以下の行を追加します:grafana['allow_user_sign_up'] = true
-
ファイルを保存し、変更を有効にするために GitLab を再設定します。
GitLabをOAuthプロバイダとして使う場合
GitLabをOAuthプロバイダとして使用し、GitLabインスタンスのユーザがGrafanaにアクセスできるようにします:
-
まず、アプリケーションIDとシークレットを作成します。
-
external_url
に基づいてコールバックURLを設定します。例えばhttps://gitlab.example.com/-/grafana/login/gitlab
。 -
そして、
/etc/gitlab/gitlab.rb
を編集し、以下の行を追加します:grafana['gitlab_application_id'] = 'GITLAB_APPLICATION_ID' grafana['gitlab_secret'] = 'GITLAB_SECRET'
ここで
GITLAB_APPLICATION_ID
とGITLAB_SECRET
は前のステップで作成したアプリケーション ID とそのシークレットです。 -
オプションで、ログインを許可するGitLabグループのリストを選択できます:
grafana['allowed_groups'] = [my_group, group_one/group_two]
-
ファイルを保存し、変更を有効にするために GitLab を再設定します。
管理者パスワードのリセット
初回起動後、管理者パスワードは Grafana データストアに保存され、gitlab.rb
から変更することはできません。
更新するには、以下のコマンドを使用します:
gitlab-ctl set-grafana-password
詳細はGrafana CLIのドキュメントを参照してください。
ダッシュボード
GitLab 11.10から、Omnibus GitLabを監視するためのダッシュボードがプリロードされ、初回ログイン時に利用できるようになります。
GitLabの以前のバージョンでは、Omnibusインストール用に調整されたビルド済みのダッシュボードを手動でインポートすることができます。
Grafanaメトリクス
GrafanaはPrometheusがスクレイピングするメトリクスを提供することができます。
デフォルトでは、バンドルされているGrafanaインスタンスではメトリクスAPIは無効になっています。
GrafanaのメトリクスAPIの有効化
GrafanaのメトリクスAPIをベーシック認証で有効にします:
-
/etc/gitlab/gitlab.rb
を編集し、以下の行を追加/編集します:grafana['metrics_enabled'] = true grafana['metrics_basic_auth_username'] = 'grafana_metrics' grafana['metrics_basic_auth_password'] = 'please_set_a_unique_password'
-
ファイルを保存し、変更を有効にするために GitLab を再設定します。
-
メトリクスは、
https://gitlab.example.com/-/grafana/metrics
でベーシック認証で利用できるようになります。ベーシック認証のユーザー名とパスワードは、/etc/gitlab/gitlab.rb
で設定したmetrics_basic_auth_username
とmetrics_basic_auth_password
になります。