コンテンツにスキップ

はじめに

このガイドでは、Docker Compose を使って 1 台のマシン上に Yagra スタック全体 — corepoller、 WebUI、そして背後のストア — を起動します。読み終えるころには、サインインを済ませ、最初のノードの 監視が始まっている状態になります。

  • DockerDocker Compose プラグイン。
  • Linux では、ポーラーが raw ソケットの ICMP を使うため NET_RAW ケーパビリティが必要です — 同梱の Compose ファイルがこれを付与します(cap_add: [NET_RAW])。
  1. リポジトリをクローンします:

    Terminal window
    git clone https://github.com/horryworks/Yagra.git
    cd Yagra
  2. すべてを起動します:

    Terminal window
    docker compose up --build

    初回のビルドには数分かかりますが、以降の起動は高速です。

  3. 初回起動時にコアのログへ出力される、使い捨ての admin パスワードを取得します:

    Terminal window
    docker compose logs core
  4. 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 ネットワークに留まります。ファイアウォールで塞ぐべきものを含む完全な一覧は、 ポートリファレンスにあります。

  1. サイドバーの Nodes を開き、Add node を選びます。

  2. 名前とデバイスの IP アドレスを入力します。これだけで、Yagra はただちに ICMP 死活監視を 開始します。

  3. インターフェースやシステムのメトリクスも収集するには、SNMP credential(v2c コミュニティ または SNMPv3 ユーザー)を割り当て、デバイスプロファイルを選びます — 組み込みのプロファイルが 一般的な機器ファミリーを網羅しており、それ以外には汎用の SNMP プロファイルが使えます。

  4. 1 回のポーリング周期のうちに、ノードの状態・応答時間・(SNMP があれば)インターフェース 単位のトラフィックが、ノードの詳細ページに表示されます。

機器を 1 台ずつ追加する方法だけではありません。ディスカバリは IP レンジをスキャンして応答した ものを見つけ、分類したうえで、その結果をまとめて取り込めるようにします。どちらの方法も、URL・ DNS・Meraki の監視とあわせて監視ガイドで扱っています。