はじめに
このガイドでは、Docker Compose を使って 1 台のマシン上に Yagra スタック全体 — core、poller、
WebUI、そして背後のストア — を起動します。読み終えるころには、サインインを済ませ、最初のノードの
監視が始まっている状態になります。
- Docker と Docker Compose プラグイン。
- Linux では、ポーラーが raw ソケットの ICMP を使うため
NET_RAWケーパビリティが必要です — 同梱の Compose ファイルがこれを付与します(cap_add: [NET_RAW])。
スタックの起動
Section titled “スタックの起動”-
リポジトリをクローンします:
Terminal window git clone https://github.com/horryworks/Yagra.gitcd Yagra -
すべてを起動します:
Terminal window docker compose up --build初回のビルドには数分かかりますが、以降の起動は高速です。
-
初回起動時にコアのログへ出力される、使い捨ての
adminパスワードを取得します:Terminal window docker compose logs core -
https://localhost:8443 で WebUI を開き、
adminとそのパスワードでサインインします。初回アクセスではブラウザが警告を出します。自分の証明書を取り込むまでは自己署名証明書のままで、 しかも Yagra はどのホスト名でアクセスされるかを知りようがないため、名前も一致しないのが普通 です。ここではそのまま進んでください。 設定 ▸ TLS 証明書で正式な証明書を取り込むか、正しい名前を指定して自己署名証明書を再生成できます。
このスタックは 2 つの HTTP ポートに加えて、パッシブデータを受け取る UDP リスナーを公開します。 リスナーはオプトインの機能で、この構成では最初の 3 つを既定で有効にしています:
| ポート | プロトコル | サービス |
|---|---|---|
8443 |
TCP (HTTPS) | WebUI |
8080 |
TCP (HTTP) | REST API(+ Prometheus /metrics) |
514 |
UDP | syslog 受信 |
162 |
UDP | SNMP トラップ受信(v1/v2c + inform) |
2055 |
UDP | NetFlow v5/v9 / IPFIX 受信 |
ストア(PostgreSQL・Redis・NATS・VictoriaMetrics・VictoriaLogs・ClickHouse)は内部の Docker ネットワークに留まります。ファイアウォールで塞ぐべきものを含む完全な一覧は、 ポートリファレンスにあります。
最初のノードを追加する
Section titled “最初のノードを追加する”-
サイドバーの Nodes を開き、Add node を選びます。
-
名前とデバイスの IP アドレスを入力します。これだけで、Yagra はただちに ICMP 死活監視を 開始します。
-
インターフェースやシステムのメトリクスも収集するには、SNMP credential(v2c コミュニティ または SNMPv3 ユーザー)を割り当て、デバイスプロファイルを選びます — 組み込みのプロファイルが 一般的な機器ファミリーを網羅しており、それ以外には汎用の SNMP プロファイルが使えます。
-
1 回のポーリング周期のうちに、ノードの状態・応答時間・(SNMP があれば)インターフェース 単位のトラフィックが、ノードの詳細ページに表示されます。
機器を 1 台ずつ追加する方法だけではありません。ディスカバリは IP レンジをスキャンして応答した ものを見つけ、分類したうえで、その結果をまとめて取り込めるようにします。どちらの方法も、URL・ DNS・Meraki の監視とあわせて監視ガイドで扱っています。