【素人の備考録】Raspberry Pi のCPU温度をMonitorixで可視化した

##1.はじめに
３台所有しているRaspberryPiケース(３台とも)には静音目的でファンがついていません。一番気になるのはCPU温度です。CPU温度を可視化する為に監視ツールを検討、インストールの容易さを考えMonitorixをインストールしました。
>参照サイトは下記です
【CPU温度やI/Oの監視】Rapberry Pi4サーバにMonitorixをインストールする方法
https://debimate.jp/2020/11/28/

　
##2. それぞれのRaspberry Pi (CPU温度をモニターするにはvcgencmdが必要)
　　
#2.1 Raspberry Pi 3 Model B

```
OS:Raspberry Pi OS 32bit
$ uname -a
Linux raspberrypi 5.4.79-v7+ #1373 SMP Mon Nov 23 13:22:33 GMT 2020 armv7l GNU/Linux
```       
2.1.1 stretchをbusterにアップデートする(monitorixインストールする為) 

```
$ sudo apt update
$ sudo apt dist-upgrade
$ sudo apt autoremove
```
>**トラブル：アップデート作業後、MySQLが消えた。wordpressサイトに接続すると
     『データベース接続確立エラー』が表示されサイトにアクセスできませんでした。
     対応：MariaDBをインストールして回避できました。**

```
#MariaDBをインストールする。
$ sudo apt-get install -y mariadb-server
#PHPと連携するための拡張機能をインストールする。
$ sudo apt-get install -y php-mysql
#MariaDBを有効にして起動する。
$ sudo systemctl enable mariadb
$ sudo systemctl start mariadb
$ mysql -uroot -p
Enter password: →消えたmysqlのパスワード
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 37
Server version: 10.3.27-MariaDB-0+deb10u1 Raspbian 10
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| wordpress          |
+--------------------+
4 rows in set (0.003 sec)
$ MariaDB [(none)]> exit
wordpressのデータベースを読み込んでくれた。
```

#2.2 Raspberry Pi 3 Model B+

```
OS:Raspberry Pi OS 64bit 
$ uname -a
Linux raspberrypi3b 5.4.79-v8+ #1373 SMP PREEMPT Mon Nov 23 13:32:41 GMT 2020 aarch64 GNU/Linux
```
2.2.1 busterにアップデート済みです。

#2.3 Raspberry Pi 4  Model B 8GB

```
OS:CentOS 8
$ uname -a
Linux raspi4 5.4.60-v8.1.el8 #1 SMP PREEMPT Sun Aug 23 02:58:38 UTC 2020 aarch64 aarch64 aarch64 GNU/Linux
```
2.3.1 RHELリポジトリを追加する(monitorixインストールする為) 

```
# dnf -y install epel-release
```
2.3.2 vcgencmdをインストールする。
>参照サイトは下記です。
https://leo3418.github.io/2020/07/27/compile-vcgencmd-on-fedora.html

```
$ sudo dnf install cmake gcc gcc-c++ make git 
$ git clone https://github.com/raspberrypi/userland.git
$ ./buildme --aarch64
$ sudo nano  /etc/ld.so.conf.d/bind-export-aarch64.conf
/usr/lib64//bind9-export/
/opt/vc/lib →追加
$ sudo ldconfig
```
     
##3. Monitorixインストールする。

#3.1 Rasberry OS用(buster)

```
$ sudo apt install monitorix
```

設定ファイルを編集する。

~~~
$ sudo nano /etc/monitorix/monitorix.conf
title = Raspberry Pi  →任意
hostname =192.168.1.xxx →任意
theme_color = white →またはblack
： ※ 省略
<graph_enable>
： ※ 省略	
 　icecast		= n
	raspberrypi	= y     ※ nからyに変更
	phpapc		= n
： ※ 省略
</graph_enable>
--------------------(修正前 ↓)-----------------------------
<raspberrypi>
	cmd = /opt/vc/bin/vcgencmd
	clocks = arm, core, h264, isp, v3d, uart, emmc, pixel, hdmi
	volts = core, sdram_c, sdram_i, sdram_p
	rigid = 0, 0, 0
	limit = 100, 100, 100
</raspberrypi>
--------------------(修正前 ↑)-----------------------------
 
--------------------(修正後 ↓)-----------------------------
<raspberrypi>
	cmd =/usr/bin/vcgencmd                     ※ ここのPATHを変更
	clocks = arm, core, h264, isp, v3d, uart, emmc, pixel, hdmi
	volts = core, sdram_c, sdram_i, sdram_p
	rigid = 0, 0, 0
	limit = 100, 100, 100
</raspberrypi>
--------------------(修正後 ↑)-----------------------------

$ sudo systemctl enable monitorix
$ sudo systemctl restart monitorix
```
**備考：portは8080(デフォルト)を使用しています。**

#3.2 CentOS 8用
>参照サイトは下記です。
https://www.server-world.info/query?os=CentOS_8&p=monitorix&f=1

```
# dnf --enablerepo=epel -y install monitorix perl-CGI perl-HTTP-Server-Simple perl-rrdtool perl-Config-General perl-LWP-Protocol-https perl-LWP-Protocol-http10
```
設定ファイルを編集する。

```
# nano /etc/monitorix/monitorix.conf
title = Raspberry Pi  →任意
hostname =192.168.1.xxx →任意
theme_color = white →またはblack
： ※ 省略
<graph_enable>
： ※ 省略	
 　icecast		= n
	raspberrypi	= y     ※ nからyに変更
	phpapc		= n
： ※ 省略
</graph_enable>
： ※ 省略
```

```
# systemctl enable --now monitorix
```
##3.3  Raspberry Piを３台監視する。
>参照サイトは下記です。
https://www.server-world.info/query?os=CentOS_8&p=monitorix&f=2

設定ファイルを編集する。

```
# nano /etc/monitorix/monitorix.conf
： ※ 省略
<multihost>
	enabled = y
	footer_url = y
	graphs_per_row = 2
	default_option_when_all = "System load"
	remotehost_list = RaspberryPi3,RaspberryPi3B,RaspberryPi4 →任意
	<remotehost_desc>
		0 = http://192.168.1.xx1:8080,/monitorix→任意
		1 = http://192.168.1.xx2:8080,/monitorix→任意
		2 = http://192.168.1.xx3:8080,/monitorix→任意
	</remotehost_desc>
： ※ 省略
```
**参考：Rasspberry Pi ３台のCPU温度モニタです。**
![cpu-moniter.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/685816/137a27ef-70cf-fb4b-cea3-f09405ef17da.png)

##後書き
Raspberry Piを使用していて気になるのはCPU温度（特に夏）です。今回、可視化出来ました。
Monitorixに関してはパラメータが多く使いこなしていません。