JitsiMeetインストールしたオンプレサーバをPrometheusでリソースモニタしてみる


はじめに

対象読者

  • Jitsi Meet をオンプレ環境に構築してみたけれど、スペックの設定に悩んでいる人
  • また、構築してみたいけれど、どれくらいリソース消費されるのか気になる人

前提

Jitsi Meet サーバ構築時の記事

Jitsi Meet サーバのスペック

  • ConoHa VPS
    • OS Ubuntu 20.04
    • CPU 3 Core
    • メモリ 2 GB
    • SSD 100 GB

Jitsi Meet の設定

  • 特に映像や音声のコンフィグは弄っておらず、デフォルトのままの状態

クライアント側の動作について

  • いずれの条件においても、クライアント側の動作に何らか支障が生じていたことは無かった
    • クライアント端末のメモリ不足等、クライアント由来による問題は除く

同時に立てる部屋の数

  • 1 つのみ
  • 同時複数部屋というのはやってみていません

Prometheus の設定

モニタする Prometheus サーバの用意

モニタされる側 ( Jitsi Meet サーバ ) の用意

モニタ結果

モニタ項目とクエリの凡例

メモリ使用量

node_memory_MemTotal_bytes - node_memory_MemAvailable_bytes

CPU ロードアベレージ

node_load1 / count(count(node_cpu_seconds_total) without (mode)) without (cpu)

ネットワーク受信量

rate(node_network_receive_bytes_total[1m])

ネットワーク送信量

rate(node_network_transmit_bytes_total[1m])

5 名 → 途中から疑似的に 9 名

条件

  • 全員 PC
  • 全員ビデオ ON
  • 全員画質 HD
  • 再生時間 1 時間 30 分 ほど

実用性

  • 十分に堪えうる

メモリ使用量

CPU ロードアベレージ

ネットワーク受信量

ネットワーク送信量

11 名

条件

  • 10 名 PC / 1 名 モバイル
  • 8 ~ 10 名ビデオ ON / 1 ~ 3 名ビデオ OFF ( 途中で変動 )
  • 全員画質 HD

実用性

  • 十分に堪えうる

メモリ使用量

CPU ロードアベレージ

ネットワーク受信量

ネットワーク送信量

30 名超

条件

  • 30 名超 PC
  • 4 ~ 5 名ビデオ ON / 他全員ビデオ OFF ( 途中で変動 )
  • 全員画質 SD

実用性

  • なし。ほとんどサーバダウンに近い状態になる

メモリ使用量

CPU ロードアベレージ

ネットワーク受信量

ネットワーク送信量

おわりに

まとめと感想

メモリ

  • メモリは人数が増えても大して使われなかった

CPU

  • 参加者 5 名のときはロードアベレージ 0.3 程度だったのが、参加者 11 名になると最大 0.6 くらいにまでなるので、人数比で結構 CPU 使用が激しくなる
  • ましてや参加者 30 名超となると実用性ゼロになるので 20 名超くらいからスペックアップを考えた方が良さそう
  • コストに制約があり CPU とメモリどちらを潤沢に積むべきかといえば CPU の方を優先したら良さそう

ネットワーク

  • 受信量より送信量の方が大きい
  • 人数が増えれば増えるほど、受信量よりも送信量の多さが増していく

その他

  • 同時に複数の部屋数を立てたらどうなるのか? というのも気にはなる

関連記事