Spring Boot 2.2.x の Web アプリを 2.3.x へバージョンアップする ( その12 )( Docker コンテナの image をバージョンアップする、prometheus・grafana 編 )
概要
記事一覧はこちらです。
- 今回の手順で確認できるのは以下の内容です。
- 今回は以下の Docker コンテナの image をバージョンアップします。
- prom/prometheus
- grafana/grafana
- 今回は以下の Docker コンテナの image をバージョンアップします。
参照したサイト・書籍
目次
- docker-compose.yml を変更する
docker-compose up -d
コマンドを実行する- Grafana の各 dashboard を確認する
- PostgreSQL Statistics → PostgreSQL Database に切り替える
- Redis Dashboard for Prometheus Redis Exporter 1.x → Redis Dashboard for Prometheus Redis Exporter (helm stable/redis-ha) に切り替える
- 変更前の docker image を削除する
- 続く。。。
手順
docker-compose.yml を変更する
prometheus: image: prom/prometheus:v2.23.0 container_name: prometheus ports: - "9090:9090" # TZ=Asia/Tokyo を設定してみたが日本時間に変わらなかったのでコメントアウトしておく # environment: # - TZ=Asia/Tokyo volumes: - ./docker/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml - ./docker/prometheus/storage:/prometheus extra_hosts: - "app:${HOST_IP_ADDRESS}" grafana: image: grafana/grafana:7.3.6 container_name: grafana ports: - "3000:3000" environment: - TZ=Asia/Tokyo volumes: - ./docker/grafana/storage:/var/lib/grafana
image: prom/prometheus:v2.15.1
→image: prom/prometheus:v2.23.0
に変更します。image: grafana/grafana:6.5.2
→image: grafana/grafana:7.3.6
に変更します。
docker-compose up -d
コマンドを実行する
以下のコマンドを実行して docker image を更新・ダウンロードします(画面キャプチャはなし)。
docker-compose up -d
コマンドを実行してコンテナ一式(メールサーバ・rainloop を除く)を起動します。
Grafana の各 dashboard を確認する
PostgreSQL Statistics
- データを表示できていない Panel はありませんでした。
- 使用しているのは PostgreSQL Statistics、https://grafana.com/grafana/dashboards/6742
- 最新は Revision 1、Created July 1st 2018, 1:15 pm
- https://grafana.com/grafana/dashboards で
PostgreSQL
で検索して、ヒットした中で一番 Downloads が多いものを確認すると(AWS や Azure が付くものは除く)、PostgreSQL Database、https://grafana.com/grafana/dashboards/9628 - PostgreSQL Database の最新は Revision 6、Created December 3rd 2020, 6:02 am
- 今回は PostgreSQL Statistics を削除して PostgreSQL Database に切り替えることにします。
Prometheus Redis
- 以下の問題がありました。
- 画面上部の Variables の addr に何も表示されていませんでした。
- 以下の Panel にデータが表示されていませんでした。
- Uptime
- Clients
- Command Calls / sec
- 使用しているのは Redis Dashboard for Prometheus Redis Exporter 1.x、https://grafana.com/grafana/dashboards/763
- 最新は Revision 3、Created July 3rd 2019, 2:07 am
- https://grafana.com/grafana/dashboards で
Redis
で検索して、ヒットした中で一番 Downloads が多いものを確認すると(AWS や Azure が付くものは除く)、Redis Dashboard for Prometheus Redis Exporter (helm stable/redis-ha)、https://grafana.com/grafana/dashboards/11835 - Redis Dashboard for Prometheus Redis Exporter (helm stable/redis-ha) の最新は Revision 1、Created March 2nd 2020, 7:37 pm
- 今回は Redis Dashboard for Prometheus Redis Exporter 1.x を削除して Redis Dashboard for Prometheus Redis Exporter (helm stable/redis-ha) に切り替えることにします。
RabbitMQ Monitoring
- 以下の問題がありました。
- 以下の Panel にデータが表示されていませんでした。
- Connections, channels and consumers
- 画面上部の rabbit@rabbitmq1、rabbit@rabbitmq2、rabbit@rabbitmq3 の Panel はデータが表示されたりされなかったりします。
- 以下の Panel にデータが表示されていませんでした。
- 使用しているのは RabbitMQ Monitoring、https://grafana.com/grafana/dashboards/4279
- 最新は Revision 4、Created January 18th 2020, 12:22 am
- https://grafana.com/grafana/dashboards で
RabbitMQ
で検索して、ヒットした中で一番 Downloads が多いものを確認すると(AWS や Azure が付くものは除く)、RabbitMQ-Overview、https://grafana.com/grafana/dashboards/10991 - RabbitMQ-Overview の最新は Revision 7、Created November 13th 2020, 9:57 pm
- RabbitMQ-Overview の説明を読むと RabbitMQ 3.8 から Prometheus & Grafana がサポートされていて(Monitoring with Prometheus & Grafana に記述があります)、rabbitmq-prometheus を有効にする必要があるとのこと。
- 今回は RabbitMQ Monitoring を削除して RabbitMQ-Overview に切り替えることにします。
Spring Boot Statistics
- 以下の問題がありました。
- 以下の Panel にデータが表示されていませんでした。
- Process Open Files
- $memory_pool_nonheap (non-heap)
- Classes Loaded
- Classes Unloaded
- Threads
- 「HikariCP Statistics」の下の全ての Panel
- 「HTTP Statistics」の下の全ての Panel
- 「Tomcat Statistics」の下の全ての Panel
- 以下の Panel にデータが表示されていませんでした。
- 使用しているのは Spring Boot Statistics、https://grafana.com/grafana/dashboards/6756
- 最新は Revision 2、Created July 2nd 2018, 5:53 pm
- https://grafana.com/grafana/dashboards で
Spring Boot
で検索して、ヒットした中で一番 Downloads が多いものを確認すると(AWS や Azure が付くものは除く)、JVM (Micrometer)、https://grafana.com/grafana/dashboards/4701 - JVM (Micrometer) の最新は Revision 9、Created November 4th 2019, 1:59 am
- ただしこれは JVM の情報のみです。
- また検索結果を見ると Spring Boot Statistics、https://grafana.com/grafana/dashboards/12464 があり、
This is a fork of dashboard 6756, fixed for Spring Boot 2.3 and support for Jetty instead of Tomcat.
という記述がありました。使用しているのは Tomcat なので、これは選択できませんね。 - 今回は Spring Boot Statistics は残してデータが表示されていない Panel を修正しつつ、JVM (Micrometer) を追加してみることにします。
PostgreSQL Statistics → PostgreSQL Database に切り替える
最初に PostgreSQL Database を Dashboard に追加します。
画面左側のメニューから「Dashboards」-「Manage」をクリックします。
下の画面が表示されるので、「Import」ボタンをクリックします。
「Import」画面が表示されるので「Import via grafana.com」に 9628
を入力後「Load」ボタンをクリックします。
「DS_PROMETHEUS」で「spring-actuator」を選択した後、「Import」ボタンをクリックします。
PostgreSQL Database の画面が表示されます。画面右上を「Last 6 hours」「10s」→「Last 15 minutes」「5s」に変更しています。
次に PostgreSQL Statistics を削除します。
「Dashboards」-「Manage」の画面で「PostgreSQL Statistics」をチェックした後、「Delete」ボタンをクリックして削除します。
Redis Dashboard for Prometheus Redis Exporter 1.x → Redis Dashboard for Prometheus Redis Exporter (helm stable/redis-ha) に切り替える
「Import」画面で「Import via grafana.com」に 9628
を入力して import します。
Redis Dashboard for Prometheus Redis Exporter (helm stable/redis-ha) の画面が表示されます。画面右上を「Last 24 hours」「30s」→「Last 15 minutes」「5s」に変更しています。
「Dashboards」-「Manage」の画面で「Prometheus Redis」を削除します。
変更前の docker image を削除する
以下の docker image を削除します。
- prom/prometheus:v2.15.1
- grafana/grafana:6.5.2
続く。。。
RabbitMQ Monitoring → RabbitMQ-Overview 切替、Spring Boot Statistics のデータが表示されていない Panel の修正+JVM (Micrometer) 追加、の2つは次回以降に記載します。
履歴
2020/12/19
初版発行。
2020/12/20
変更前の docker image を削除する を追加しました。