Proxmox8 を試してみる　その１１　InfluxDB2 + Telegraf2 + Chronograf 設定

# Proxmox8 にアップグレード
2023/6 に Proxmox8 がリリースされたとのことで早々にアップグレードしてみました。

※2024/4/9 リンク切れやコマンドが間違っていたようなので修正しました

https://zenn.dev/omohikane/articles/inplace-upgrade-proxmox728

# サーバ側：InfluxDB2 のインストール
Dockerで構築するのが楽だとは思いますが、折角 Proxmox8 を使用しているので コンテナにて構築していきたいと思います。もちろん AlmaLinux9 で！

とりあえず[公式サイト](https://portal.influxdata.com/downloads/)のやり方で、influxdb リポジトリを 追加します。

```bash
cat <<EOF | sudo tee /etc/yum.repos.d/influxdata.repo
[influxdata]
name = InfluxData Repository - Stable
baseurl = https://repos.influxdata.com/stable/\$basearch/main
enabled = 1
gpgcheck = 1
gpgkey = https://repos.influxdata.com/influxdata-archive_compat.key
EOF
```

`sudo dnf repolist` コマンドを実行し `influxdb` リポジトリが追加されていることを確認します。

そのあと InfluxDB2 をインストールしサービス起動などを設定します。

```bash
$ sudo yum install influxdb2
$ systemctl enable influxdb
$ systemctl start influxdb
```

# サーバ側：Influxdb2 CLI のインストール
2系になってからは、InfluxDB2 の初期設定を適切にする必要があります。
GUI 画面からでも設定できますがコマンドが用意されているので今回はこちらを使用します。

上記で設定したレポジトリ内からインストールすることができるため、下記コマンドを実施し有効化する。

```bash
$ sudo dnf install influxdb2-cli
$ sudo influx completion bash > /etc/bash_completion.d/influx.sh
$ sudo chmod +x /etc/bash_completion.d/influx.sh
```

さらに 2系では、database という表現が bucket に変更されています。通信経路を HTTPS にするとか色々とありますが、とりあえず最低限動くところを確認したいだけですので下記コマンドを実施します（iw/pw など適宜修正してください）。

```bash
sudo influx setup -f \
  --name default \
  --username influx \
  --password influxpw \
  --token influxtoken \
  --org influx \
  --bucket intdash \
  --retention 0
```

# サーバ/エージェント側：Telegraf のインストールと初期設定
`influxdb` リポジトリが設定されていることを前提とします。まず telegraf をインストールします。

```bash
$ sudo dnf install telegraf
```

そして InfluxDB2 に接続するため `/etc/telegraf/telegraf.conf` を編集します。

```/etc/telegraf/telegraf.conf
[[outputs.influxdb_v2]]
 urls = ["http://127.0.0.1:8086"]
 token = "influxtoken"
 organization = "influx"
 bucket = "intdash"
 timeout = "5s"
 user_agent = "telegraf"

[[inputs.socket_listener]]
 service_address = "udp://:8094"
```

サービスを起動して・・・っと

```bash
$ sudo systemctl enable telegraf
$ sudo systemctl start telegraf
$ sudo systemctl status telegraf
```

# サーバ側：InfluxDB2 の GUIにアクセス
InfluxDB2 が正常にインストール＆サービス起動しているか 
`http://localhost:8086` にアクセスします。
下記画面が表示されるので CLI で定義した id/pw を入力して先に進みます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/44540/dcc99778-ca9a-b815-0619-eaa2e8134fb4.png)

くるかな・・・

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/44540/c545539f-0f69-8674-cf11-885b99bdae6c.png)

きたーーー

# サーバ側：Chronograf のインストール
Chronograf をインストールします。

```bash
$ sudo dnf install chronograf 
$ sudo systemctl enable --now chronograf
$ sudo systemctl status chronograf
```

Chronograf を起動してみる。 8888 ポートにアクセスね。
日本語に対応していないで拒否感あるけどここは、頑張ろう。

https://www.ultra-noob.com/blog/2020/29/

InfluxDB との接続設定を行う。
注意点として "Telgraf Database Name" には、Influxdb2 CLI で設定した bucket の値を設定する。どうやら InfluxDB2 になってからここらの言い方が変わったらしい。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/44540/b0756a2f-a8e2-bee0-d09a-2a4e0656c845.png)

Telegraf エージェントが動いていれば、下記のように表示されていると思う。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/44540/35ab1b61-91c5-e033-ffa6-f613cda89062.png)

# つかってみて
ダッシュボードカスタムができるのでカッコいい感じにできるがいいですね。アラート設定とかも細かくできるのがいい！！

こういうの好きなんですが、会社で運用とか見据えたときを考えるとやっぱり Zabbix がいいのだろうか・・・。

# 参考にさせて頂いたサイト様

https://qiita.com/quickguard/items/31e8d5ced9be54c25a8c