ELK(Elasticsearch、Logstash、およびKibana)として知られるElastic Stackは、データを分析するための強力なオープンソースプラットフォームです。リアルタイムでデータのインデックス作成、検索、監視、分析を行うための包括的な機能セットを提供します。
Elastic Stackは、オンプレミスまたはクラウドにデプロイできます。 Netflix、Facebook、Goldman Sachs、The Guardian、ThomsonReutersなどの新興企業や大企業で使用されています。
Elastic Stackは、次の3つのコアコンポーネントで構成されています。
- Elasticsearch :データのインデックスをすばやく作成し、検索結果を高速化する検索および分析エンジン。
- ログスタッシュ :複数のソースからログを収集、解析、保存するログパイプラインツール。
- キバナ :データの検索、表示、分析、共有を可能にするデータ視覚化および分析ツール。
これらの各コンポーネントには、独自の機能と利点があります。
Elasticsearchは、データにすばやくインデックスを付け、高速な検索結果を提供する、高速でスケーラブルな使いやすい検索および分析エンジンです。ウェブサイト検索、製品カタログ、カスタマーサポート、セキュリティイベント分析などのリアルタイムアプリケーションに最適です。
Logstashは、複数のソースからログを収集、解析、および保存するログパイプラインツールです。そこに行く必要があるときに、必要な場所にデータを取得するのに役立ちます。 Logstashを使用して、システムをほぼリアルタイムで監視することもできるため、問題が深刻になる前に特定して修正することができます。
Kibanaは、データの検索、表示、分析、共有を可能にするデータ視覚化および分析ツールです。 Kibanaを使用すると、データ内の洞察をすばやく見つけて、ビジネスのパフォーマンスを確認できます。 Kibanaを使用すると、カスタムダッシュボードを簡単に作成できるため、最も重要な指標を追跡できます。
Elastic Stackは、最も人気のあるビッグデータソリューションの1つであり、それには十分な理由があります。設定が簡単で、スケーラブルであり、データのインデックス作成、検索、監視、分析のための豊富な機能を提供します。
データを分析するための強力なオープンソースプラットフォームを探している場合は、ElasticStackを検討する価値があります。
ELK Stackは、コンサルタントの軍隊を必要とせずに、開発者がデータを検索可能で分析可能な状態にすばやく移行できるように設計されています。ユーザーは任意のソースからデータを取得し、KibanaやLogstashを使用して時系列でデータを視覚化できます。
Elasticsearchは、データにすばやくインデックスを付け、高速な検索結果を提供する、分散型のRESTful検索および分析エンジンです。ウェブサイト検索、製品カタログ、カスタマーサポート、セキュリティイベント分析などのリアルタイムアプリケーションに最適です。
このチュートリアルでは、Ubuntu20.04サーバーにElasticStackをインストールする手順を説明します。
前提条件
- SSHアクセスを使用するUbuntuServer20.04LTSとsudo権限を持つ非rootユーザーの最小限のインストール。
- 最低4GBのRAM、2つのCPU、および20GBのハードドライブスペースが利用可能です。
システムの更新
サーバーパッケージを最新の状態に保つことをお勧めします。次のコマンドを実行して、リポジトリキャッシュを更新します。
sudo apt update && sudo apt upgrade -y
更新が完了したら、以下のコマンドを実行して必要な依存関係をインストールします。
sudo apt install wget apt-transport-https curl gnupg2 -y
Javaのインストール
Elasticsearchを実行するにはJavaが必要です。 Ubuntu2.04にはJava8とJava11が付属していますが、一部のプラグインはJava 11と互換性がない可能性があるため、Java8をインストールします。
次のコマンドを実行して、Java8をシステムにインストールします。
sudo apt install openjdk-8-jdk -y
インストールが完了したら、次のコマンドを実行して、システムにインストールされているJavaのバージョンを確認できます。
java -version
出力は次のようになります。
Elasticsearchをインストールする
デフォルトのUbuntu20.04リポジトリにはElasticsearchが含まれていませんが、Elasticsearch開発者チームから公式のElasticリポジトリを追加した後、APTを使用して簡単にインストールできます。
まず、curlコマンドを使用して公開署名キーをダウンロードし(Elasticsearchはこれを自動的に実行します)、パッケージを検証します。パッケージは、その信頼性を確保するためにこのキーで署名されています。 -fsSL引数を使用して、すべての進行状況をサイレントにし、cURLが指定されたURLにリクエストを送信できるようにすることをcurlに示します。
curl -fsSL https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
キーが正常に追加された場合は、OKメッセージが表示されます。
次に、次のコマンドを実行して、Elasticsearchリポジトリをシステムに追加します。 Elastic-7.x.listをsources.list.dディレクトリに追加します。 sources.list.dディレクトリは、ソフトウェアのソースを追加できるUbuntuの特別なディレクトリです。 APTシステムは、これらのファイルを使用して利用可能なパッケージを検索します。
echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list
次に、リポジトリキャッシュを更新して、新しいElasticsearchリポジトリを読み取ります。
sudo apt update
これで、次のコマンドを実行してElasticsearchをインストールできます。
sudo apt install elasticsearch -y
インストールが完了したら、Elasticsearchを設定する必要があります。 /etc/elasticsearch/elasticsearch.ymlファイルは、すべてのElasticsearch設定のメイン構成ファイルです。 network.hostパラメーターなどは、ElasticsearchサービスをバインドするIPアドレスまたはホスト名を定義します。
nanoテキストエディタを使用してファイルを開きましょう。
sudo nano /etc/elasticsearch/elasticsearch.yml
これらの設定のほとんどは事前構成されていますが、必要に応じて微調整できます。この例では、ネットワークホストの設定のみを変更します。 Host:をコメント解除してlocalhostに変更し、Elasticsearchが任意のインターフェースでリッスンできるようにします。特定のインターフェースを使用する場合は、localhostを特定のIPアドレスまたはホスト名に置き換えることができます。
前:
後:
変更が完了したら、CTRL + X、Y、Enterを押してファイルを保存します。次のコマンドを使用してElasticsearchを起動します。起動プロセスには数分かかる場合がありますので、しばらくお待ちください。
sudo systemctl start elasticsearch
Elasticsearchを起動時に自動的に開始できるようにするには、次のコマンドを実行します。
sudo systemctl enable elasticsearch
これで、次のコマンドを実行してインストールをテストできます。
curl -X GET "localhost:9200"
ローカルノードから次の応答が表示されます。
Kibanaをインストールする
Elasticsearchが起動して実行されたので、Kibanaをインストールできます。 Kibanaは、Elasticsearchのビジュアルインターフェースであり、データを検索して視覚化することができます。
Elasticsearchサーバーをインストールした直後に、常にKibanaダッシュボードをインストールする必要があります。これにより、ElasticStackのすべてのコンポーネントと設定が正しく配置されます。
次のコマンドを実行してKibanaをインストールします。
sudo apt install kibana -y
インストールが完了したら、Kibanaを構成する必要があります。 /etc/kibana/kibana.ymlファイルは、すべてのKibana設定のメイン構成ファイルです。 Kibanaサービスをバインドするポート、elasticsearch.url設定は、kibanaが指すElasticsearch URL、およびその他のセキュリティ設定を定義します。
nanoテキストエディタを使用してこのファイルを開きましょう。
sudo nano /etc/kibana/kibana.yml
この例では、server.port、server.host、elasticsearch.hostsのコメントを外して、Kibanaが正しいElasticsearchURLを指すようにします。
編集前:
編集後:
次に、CTRL + X、Y、Enterを押してファイルを保存します。次に、次のコマンドを使用してKibanaを起動して有効にします。
sudo systemctl start kibana && sudo systemctl enable kibana
次に、お気に入りのWebブラウザーを開いて、次のURLにアクセスします。
http://localhost:5601/app/kibana#/home
Kibanaのウェルカム画面にリダイレクトされます。ここから、Kibanaの使用を開始できます。 「Kibanaサーバーの準備ができていません」というエラーが表示された場合は、数分待ってから起動してください。または、ElasticsearchとKibanaの両方が稼働していることを確認してください。
Filebeatのインストール
Filebeatは、Elasticsearchにデータを送信できる軽量のログシッパーです。次のコマンドを使用してFilebeatをインストールできます。
sudo apt install filebeat -y
インストールが完了したら、Filebeatを構成する必要があります。 /etc/filebeat/filebeat.ymlファイルは、すべてのFilebeat設定のメイン構成ファイルです。
nanoテキストエディタを使用してこのファイルを開きましょう。
sudo nano /etc/filebeat/filebeat.yml
次に、以下に示すように、output.logstash行とホスト行のコメントを解除します。
編集前:
編集後:
次に、CTRL + X、Y、Enterを押してファイルを保存します。それでは、Filebeatシステムモジュールを有効にして、インデックステンプレートをロードし、FilebeatをElasticsearchに接続しましょう。
sudo filebeat modules enable system && sudo filebeat setup --index-management -E output.logstash.enabled=false -E 'output.elasticsearch.hosts=["localhost:9200"]'
sudo filebeat setup -E output.logstash.enabled=false -E output.elasticsearch.hosts=['localhost:9200'] -E setup.kibana.host=localhost:5601
サンプル出力:
次に、次のコマンドを実行してFilebeatを起動して有効にします。
sudo systemctl start filebeat && sudo systemctl enable filebeat
最後に、次のコマンドを実行して、ElasticsearchがFilebeatからデータを受信していることを確認します
curl -XGET 'http://localhost:9200/filebeat-*/_search?pretty'
下の画像に示されているものと同じデータが表示されるはずです。この出力は、FilebeatがElasticsearchにデータを送信していることを確認します。
Logstashのインストール
ElasticsearchとKibanaのセットアップが正常に完了したので、最後のステップはLogstashをインストールすることです。
次のコマンドを使用してLogstashをインストールできます。
sudo apt install logstash -y
インストールが完了したら、次のコマンドを使用してLogstashを起動して有効にできます。
sudo systemctl start logstash && sudo systemctl enable logstash
Logstashが稼働しているかどうかを確認するには、次のコマンドを実行してそのステータスを確認します。
sudo systemctl status logstash
次の出力が得られます。
Logstashがインストールされたので、必要に応じて構成できます。詳細については、Logstashのドキュメントを参照してください。
Logstashの構成が完了したら、前の手順でWebブラウザーで開いたKibanaWebインターフェースに戻ります。そこから、データの管理と視覚化を開始できます。おめでとう!これで、Ubuntu20.04サーバーにElasticStackが正常にインストールされました。
結論
このチュートリアルでは、Ubuntu 20.04サーバーにElasticsearch、Kibana、およびLogstashをインストールする方法を学習しました。また、3つのコンポーネントすべてを構成して、それらが相互に通信できるようにする方法も学びました。
以下にコメント、提案、質問を残してください。この記事が何らかの形で役に立った場合は、このページの上部にある共有ボタンを押してください。