ローカル環境にprometheusをインストール
概要
このドキュメントでは、ローカル環境にprometheusをインストールする手順について説明します。
prometheusは、システムの監視やアラートの生成を行うためのツールです。
本手順では、Dockerを使用して作成したDjangoアプリケーションに対して、prometheusを導入します。
前提条件
- Dockerがインストールされていること
- Docker Composeがインストールされていること
- Djangoアプリケーションが作成されていること
- DjangoアプリケーションがDockerで動作していること
手順
-
prometheusの設定ファイルを作成します。
prometheusの設定ファイルは、prometheus.yml
というファイル名で作成します。
以下は、prometheusの設定ファイルの例です。prometheus.yml 1 2 3 4 5 6 7
scrape_configs: - job_name: 'django' static_configs: - targets: ['web:8080'] # Djangoのホストとポート - job_name: 'prometheus' static_configs: - targets: ['prometheus:9090'] # Prometheusのホストとポート
-
djangoにprometheusを導入するためのライブラリをインストールします。
requirements.txt
に以下のライブラリを追加します。requirements.txt 1
django-prometheus # 追加
-
Djangoアプリケーションの
settings.py
に以下の設定を追加します。settings.py 1 2 3 4 5 6 7 8 9 10 11 12 13 14
INSTALLED_APPS = [ ... 'django_prometheus', # 追加 ] # MIDDLEWAREの最初と最後に以下の設定を追加 MIDDLEWARE = [ 'django_prometheus.middleware.PrometheusBeforeMiddleware', ... 'django_prometheus.middleware.PrometheusAfterMiddleware', ] # prometheusの設定 PROMETHEUS_EXPORT_MIGRATIONS = True
-
prometheusを起動するための
docker-compose.yml
を作成します。 -
docker-compose.yml
に以下の設定を追加します。-docker-compose.yml 1 2 3 4 5 6 7 8 9 10
version: '3' services: ... prometheus: image: prom/prometheus volumes: - ./prometheus.yml:/etc/prometheus/prometheus.yml ports: - 9090:9090
image
: prometheusのイメージを指定します。 -volumes
: prometheusの設定ファイルをマウントします。
./prometheus.yml
は、1で作成した設定ファイルのパスを指定します。 -ports
: prometheusのポートを指定します。 -
prometheusを起動します。
-1
$ docker-compose up -d prometheus
-d
: バックグラウンドで起動します。 -
ブラウザで
http://localhost:9090
にアクセスします。 -
prometheusのダッシュボードが表示されれば、インストールは完了です。