比較

Termal OS と Zabbix。

Zabbix は 20 年の歴史を持つ、本格的な監視プラットフォームです。Termal OS はそれを置き換えようとはしていません。Zabbix のサーバーを立てるほうが、抱えている問題より手間がかかる——そんなときに手に取ってもらう道具になろうとしています。

短い答え

Zabbix はインフラです。Termal OS は、開くアプリです。Zabbix はテンプレート、自動検出、イベントの相関、エスカレーション、プロキシー、細かい権限、そして数千台に耐えるデータモデルを与えてくれます。その代わり、サーバーとデータベースとフロントエンドを自分で抱え、そのモデルを学ぶことになります。Termal OS が与えるのはその一部分ですが、代わりにどこにも何も入れず、ダウンロードから 90 秒で役に立ちます。

問われているのはたいてい「どちらができることが多いか」ではありません。それは Zabbix で、しかも差は大きいのです。問われているのは「うちのサーバー群は、監視プラットフォームに見合う規模だろうか」です。3 台ならたいてい違います。300 台なら、間違いなくそうです。

「エージェント不要」という言葉について。よく誤って使われるので

Zabbix はしばしばエージェント方式として説明されますが、それは半分しか当たっていません。SNMP、IPMI、ICMP、そして ssh_run[] による確認もでき、対象側には何も入りません。Zabbix がエージェントを強制すると言う人がいたら、それは間違いです。

本当の違いは別のところにあります。エージェントなしの Zabbix でも、Zabbix のサーバーは要ります。自分で用意するマシン、バックアップを取るデータベース、パッチを当て続けるフロントエンド。Termal OS にはサーバー側の構成要素がまったくありません。机の上のアプリがそのままシステムの全体です。「エージェント不要」より控えめな主張ですが、こちらのほうが正直です。

Zabbix のほうが優れているところ

  • 規模。数千台のホスト、拠点やネットワークをまたぐ分散プロキシー、高可用性。Termal OS は数台から数十台を狙っており、それ以上のふりはしません。
  • 守備範囲の広さ。SNMP によるネットワーク機器、Windows、ハイパーバイザー、データベース、IPMI のハードウェアセンサー、ネットワークの自動探索、トポロジー図。Termal OS は SSH 越しの Linux だけです。/proc を読み、標準的なシェルの道具を動かすので、スイッチや Windows のマシンは端から対象外です。
  • 通知の作り込み。トリガーの式、1 つの障害で 40 回起こされないための依存関係、イベントの相関、メンテナンス期間、エスカレーションの連鎖、定期レポート。Termal OS にあるのは、CPU・メモリー・ディスク・負荷に対するサーバーごとの警告としきい値超過、エスカレーション、そして Telegram・Slack・Discord・Webhook・メールへの通知です。役に立ちますが、はるかに素朴です。
  • 保存とレポート。本物のデータベースに何年ぶんもの履歴を持ち、傾向とキャパシティ計画に使えます。Termal OS が保つのは短いローリングの窓です(既定で 24 時間)。
  • 規模を問わず、オープンソースでライセンス費用なし。Zabbix は自由なソフトウェアで、必要なら有償サポートもあります。

Termal OS が違うやり方をしているところ

  • 動かすインフラがありません。用意するサーバーも、バックアップするデータベースも、パッチを当てるフロントエンドもなく、したがって午前 3 時に自分自身が落ちる監視システムもありません。デスクトップアプリを入れ、ふだん使っている SSH の情報を打ち込めばサーバーが 1 台増えます。
  • 最初のグラフまでの時間。サーバーの追加はフォーム 1 枚です。割り当てるテンプレートも、定義するアイテムも、設計するホストグループもありません。これは本当の引き換えで——Zabbix のテンプレートが表現できることを、こちらは表現できません——けれども小さなサーバー群にとっては、「やった」と「結局やらずじまい」の差になります。
  • 監視するだけでなく、管理します。同じ SSH 接続の上に、本格的なリモートデスクトップが乗ります。SFTP エクスプローラー、PTY ターミナル、Monaco エディター、ブラウザー、書庫の道具、プロセスマネージャー。Zabbix もリモートのコマンドを撃てますが、そこは作業をする場所ではありません。
  • 権限のない場所でも動きます。共用サーバー、マネージドホスティング、お客さまのサーバー。SSH はあるが root もパッケージを入れる権限もない、そんな場所でも Termal OS は動きます。Zabbix の導入は、その状況にはまるで噛み合いません。

並べて比べる

 Termal OSZabbix
自前で動かすインフラなしサーバー + DB + フロントエンド
導入の手間数分数時間〜数日
現実的なサーバー台数数十台数千台
Linux 以外の対象(Windows、SNMP、ハードウェア)-非常に広い
通知の仕組みしきい値 + エスカレーショントリガー、相関、依存関係
履歴の保存約 24 時間のローリング数年
離席中も収集するかアプリの起動が必要常時
リモート管理(ファイル、シェル、エディター)内蔵リモートのコマンドのみ
SSH アクセスだけ、root なしで動くか動く結局サーバーが要る
ライセンスソース非公開オープンソース

どちらを選ぶか

Zabbix を選ぶとよいのは、数十台を超えるホストを回しているとき。Linux サーバー以外のものを監視しているとき。本格的な通知のロジック、長期の保存、コンプライアンスに耐えるレポートが要るとき。監視基盤を持ち場とする担当者がいるとき。あるいは、規模を問わずオープンソースが欲しいときです。

Termal OS を選ぶとよいのは、サーバー群が小さく、監視プラットフォームは問題に対して大掛かりすぎるとき。何も入れられないホスティングにいるとき。監視と管理を同じ窓でやりたいとき。あるいは、監視サーバーを立てようとして 2 回試し、2 回とも投げ出したときです。

そして、すでに Zabbix を動かしているなら、Termal OS はその代わりではありません。実際に手を入れるサーバーのための、居心地のよい SSH のコックピットです。何も入れない以上、すでにあるものの邪魔をしようがありません。

Termal OS のいまの立ち位置

  • 収集にはアプリの起動が要ります。ウィンドウを閉じても問い合わせは続きますが、アプリは起きているマシンの上で、保管庫が解除された状態で動いている必要があります。Zabbix のサーバーは、あなたが帰宅しても眠りません。無人で 24 時間通知し続けることが要件なら、正しい答えは Zabbix です。
  • SSH 越しの Linux だけ。SNMP も、Windows のエージェントも、ネットワークの自動探索も、トポロジー図もありません。
  • 0.x 版、公開 Preview の最中——いまはサーバー 3 台まで無料です。Windows と macOS のビルドはまだ署名されていません。その結果として自動更新をなぜ無効にしているのかは、セキュリティのページに書きました。