Zabbixサーバのスペック算出について
お世話になっております。
ZabbixのサーバをLinuxで構築を考えておりますが、
その上において、下記条件で監視するとして
必要サーバスペックの考え方として
漏れがないか、ご助言頂けると助かりますので
宜しくお願い致します。
特にメモリ算出が苦しい算出根拠にも見えますが...
加えて、Zabbix系の出版本やサイトをできる限り探しましたが
うまくみつけれなかったので、参考なるサイトが
あれば、教えてください。
<Zabbixとしての監視要求条件>
ヒストリデータ
条件:5分間隔での収集
監視対象はMAXの装置で、全ポート対象
監視項目数500000(監視装置 11000台)
監視データ容量(byte) 120
平均監視時間(S)300s
保存期間(日)365日24H
==>必要容量(TByte) 5.3TB
☆1秒あたりの監視項目数:1667個になります
トレンドデータ
条件:監視対象はMAXの装置で、全ポート対象
グラフ表示等で利用されるデータ
監視項目数 500000
監視データ容量(byte) 120
保存期間(日)365日*24H
==>必要容量(TByte) 0.5TB
イベントデータ
条件:1日あたりに発生する障害の発生/復旧イベント
1日当たり発生件数 100件
イベントあたりの容量(Byte) 200Byte
保存期間(日) 365日
==>必要容量(MByte) 7.3MB
必要メモリとしては、maria-DBを使うとして下記URLのデータ
から1CPU/1GB RAM/SSDのVPS1台で60秒間8スレッドで
1秒あたり処理数 7148個と考えて、上記監視項目数500000から
500000/7148=69 から 1CPU 4コア 8スレッド/コアのものを使う
として64GBメモリと算出。
https://vpshikaku.com/mariadb-mysql-postgresql/
上記の考えからサーバスペックとしては、
この位が必要だと考えておりますが、
ご助言等頂ければ幸いです。
監視サーバは、1台で考えており,想定
サーバスペックは、以下となります
(その中にDB,zabbixも含む,zabbix-proxy無)
zabbix-proxyを想定していませんが、1台の監視サーバで
やる事によるリスクも教えて頂けると助かります。
只、1拠点1台で2拠点から同じ装置群を監視する予定です
OS:Redhat7.5
Zabbix:5.0LTS
メモリ:64GB
ストレージ:7TB SSD(1.6TB-RAID10)
※ZabbixアプライアンスもSSDを使っているので
SAS-HDDでなくて、SSDにしております。
TNK - 投稿数: 4731
ディスクの容量のサイズとしては、おおよそそのようなサイズで対
応できるかもしれませんが、問題になると思われるのがヒストリデ
ータの保存期間の長さです。
DBMSとして何を使用される予定かわかりませんが、パーティショニ
ングなどきちんとチューニングしないとパフォーマンスの問題が発
生してしまって使い物にならない可能性が考えられます。
ヒストリの保存期間を再考されるか、きちんとDBMSのチューニング
ができるような体制を準備して構築に取り掛かるようにすることが
必要になると思います。
あと、OSとしてRHEL 7はお勧めしません。
Zabbix 5.0でもZabbix公式パッケージを使用して構築するには特殊
な構成が必要ですし、Zabbix 5.2からはRHEL 7用のサーバーパッケ
ージは公開されないこととなりました。
RHEL 8か、他のディストリビューションの新しいバージョンを選択
することをご検討ください。
conan2575 - 投稿数: 4
TNK様
貴重なコメントありがとうございます。
ヒストリデータ保存期間の事、OS、zabbixアプリの組み合わせの事、思慮が足りませんでした。
DBとしては、MYSQLか?MariaDB?を想定しています。
ヒストリ期間は、要件として24時間365日がある様なので...この辺は、変更不可みたいです。
DBのパーテショニングで乗り切れるのか、検討すべきなのかな?と考える次第です
一応、最初は、PROXY無しで考えておりましたが、監視項目数、監視台数が多い事から
サーバ+PROXY配置で再考慮したいと考えております。
只、そうした場合にDBを搭載したサーバ、PROXYのメモリの算出アーキというのは、どこかに
ないのでしょうか?サーバもですが、PROXYも一応DBがあるという記事もあるから
それぞれでどれくらいのメモリがあるべき姿なのか。。。
ハードスペックにおけるメモリ量の大小は、監視要件事項の何を以って増減するのでしょうか?
DBのチューニングで64GBで足りるのか?どうなのか?PROXYに16GB搭載して
おけば、負荷分散としては、有効なのか?等
ストレージ量は、ヒストリ、イベントログの保存期間から影響される事は、推測できます。
googleったり、関連資料、記事をみますが。そういうものもなく困っています。
zabbixのアプライアンスでは、メモリは、2GBとかでもサーバ1台、3台proxyで
10000監視項目とかでもOKという表記もあり。
この辺は、やはり評価、経験レベルのノウハウというところでしか、割り出せない
世界なのでしょうか?
以上
TNK - 投稿数: 4731
Zabbixプロキシも別途データベースが必要です。
しかし、保持している監視設定のデータは、そのプロキシ配下のホ
ストの設定のみですので、本体のZabbixサーバーよりも小さな容量
になるでしょうし、ヒストリデータは、Zabbixサーバーに引き渡す
ために一時的に保持するだけで長時間は保持しないので、さほど大
きな容量は必要ないと思います。
1秒間にどれだけの処理を行うかが一番大きな判断要素です。
しかし、ヒストリを長期間保持した状態でチューニングが不十分だ
と、より多くのメモリとディスクのI/O性能が必要となるので、64GB
のメモリでも十分なパフォーマンスが得られない可能性があるので
ご注意ください。
Zabbixプロキシを使用した場合でも、最終的なヒストリデータは、
すべてZabbixサーバーのデータベースに保存されます。
Zabbixサーバー用のデータベースの処理パフォーマンスが、Zabbix
サーバーが正常に機能できるかどうかに大きく影響します。
Zabbix標準のテンプレートを使用した場合であれば、ヒストリの保
存期間が短いので、アプライアンスのカタログに記載されているよ
うな規模の監視が可能なのだと思います。
ヒストリデータの保存期間が24時間365日必要とのことですが、デ
ータの分析をしたいのであれば、別のツールと組み合わせるように
して、Zabbixのデータベースには保存しないようにするという構成
も検討されてみてはいかがでしょうか。
conan2575 - 投稿数: 4
TNK様
ご助言ありがとうございました。とても参考になりました。
ZabbixサーバのDBは、悩ましい限りですね。ホント....
今、ヒストリ期間、監視項目数に関しては再度、期間、数量共に再検討入りました。
もっと軽くできればと思っています。
いろいろ過去フォーラム記事を見たり、他のサイトを見ていくと40万近くの監視項目数で
データを1年半という記事を見つけました。(2015年から2018年にかけて。。資料更新は、2020年でしたが)
これは、WEBサーバとDBサーバを別々のサーバに切り分けて構成されている様ですが、
これにより運用管理もやりやすくして、更にはWEB表示も軽くしている様です。
ただ、フォーラム記事には、WEBサーバとDBサーバ分離というのは、あまり例としては、
少ないですが。この辺の一体型、分離型の分岐点というのは、1秒当たりの監視項目数にかかるでしょうか?
大体、3~4万を超えた位から構成分離での構築構成が有効なのでしょうか?2~3万位であれば、
ZabbixサーバとProxy2台で構成としては、凌げるのかなと考えますが...
度々、申し訳ありません。もし、何かご助言頂ければ、幸いです。
以上
conan2575 - 投稿数: 4
いろいろご指導ありがとうございました。
監視項目数,期間とも大幅短縮になる事がわかりました。
色々ありがとうございました。小生の調査不足で大変失礼しました。