背景

Beats はデータシッパー専用のプラットフォームです。 Beats をインストールすると、軽量の Beats エージェントから Logstash や Elasticsearch などのターゲットオブジェクトにインスタンスのデータを送信できます。

Beats エージェントおよび軽量シッパーとして、Metricbeat はシステムやサービスからメトリックを収集し、そのメトリックを Elasticsearch などのターゲットオブジェクトに送信するように設計されています。 Metricbeat は、システムやサービスの統計情報を CPU からメモリ、Redis から NGINX などに送信するための軽量な方法です。

このトピックでは、Metricbeat を使用して MacBook からメトリックを収集し、そのメトリックを Elasticsearch インスタンスに送信し、Kibana にダッシュボードを生成する方法について説明します。

Linux または Windows システムを実行しているコンピューターからメトリックを収集し、そのメトリックを Elasticserach インスタンスに送信する手順もほぼ同じです。
  1. Elasticsearch インスタンスの購入と設定

    Elasticsearch インスタンスがない場合は、Elasticsearch を有効化してインスタンスを作成する必要があります (VPC と VSwitch の作成)。 その後、インスタンスの内部またはパブリック IP アドレスを介して、MacBook で収集したデータを Elasticsearch インスタンスに送信できるようになります。

    • パブリック IP アドレスを介して Elasticsearch インスタンスにアクセスする場合、[セキュリティ] ページで [パブリックアドレス] のスイッチをオンにし、[パブリック IP アドレスのホワイトリスト] を設定する必要があります。

    • 内部 IP アドレスを介して Elasticsearch インスタンスにアクセスする場合、Elasticsearch インスタンスと同じ VPC リージョン に Elastic Compute Service (ECS) を作成して、Elasticsearch へのアクセスを管理する必要があります。

    1. Elasticsearch コンソールにログインし、インスタンスの名前か ID をクリックしてから、左側のナビゲーションウィンドウで [セキュリティ] をクリックします。 [セキュリティ] ページで、[パブリックアドレス] のスイッチをオンにします。
    2. MacBook のパブリック IP アドレスをホワイトリストに追加します。
      重要 パブリックネットワークを使用する場合、パブリックネットワークのアウトバウンドネットワークトラフィックを制御するジャンプサーバーの IP アドレスをホワイトリストに追加します。 ジャンプサーバーの IP アドレスを取得できない場合、0.0.0.0/1,128.0.0.0/1 をホワイトリストに追加して、特定の IP アドレスを許可します。 この設定により、Elasticsearch インスタンスはパブリックネットワークに公開されます。 リスクを評価し、慎重に進めてください
    3. 設定が完了したら、左側のナビゲーションペインで [基本情報]をクリックし、Elaticsearch インスタンスのパブリック IP アドレスをコピーします。
    4. YML 設定を変更します。 [YML 設定] ページで、[自動インデックス] を有効化します。 デフォルトで、この機能は無効化されています。 この操作により、Elasticsearch インスタンスが再起動され、有効になるまでに時間がかかります。
  2. Metricbeat のダウンロードと設定
    1. Metricbeat ファイルをダウンロード、解凍し、開きます。
    2. metricbeat.yml ファイルの Elasticsearch output セクションを開き、編集します。 該当するコンテンツのコメントを解除する必要があります。

      Elasticsearch のアクセス制御情報は、以下のとおりです。

      • hosts:Elasticsearch インスタンスのパブリックまたは内部 IP アドレス。 この例では、パブリック IP アドレスを使用しています。
      • protocol:http を設定します。
      • username:デフォルトのユーザー名は elastic です。
      • password:Elasticsearch へのログインに使用されるパスワード。
  3. Metricbeat の有効化

    次のコマンドを実行して Metricbeat を有効化し、Metricbeat を使用して Elasticsearch インスタンスにデータを送信します。

    ./metricbeat -e -c metricbeat.yml
  4. Kibana でのダッシュボードの表示
    Elasticsearch コンソールの右上にある Kibana コンソールをクリックします。 Dashboard ページに移動します (次図)。

    Kibana コンソールでインデックスパターンを作成していない場合、ダッシュボードに情報が表示されないことがあります。 この問題を解決するには、インデックスパターンを作成して、[ダッシュボード]ページで情報をもう一度表示します。

    1. メトリックのリスト。
    2. CPU メトリック。
      5 秒ごとにデータを更新してレポートを生成するようシステムをスケジュールしたり、例外が発生したときにアラートを送信するよう webhook を設定したりすることができます。