GNU/Linux >> Linux の 問題 >  >> Panels >> Panels

Ubuntu 20.04にElasticsearch、Logstash、Kibanaをインストールします

ELKスタックは、Elasticsearch、Logstash、Kibanaの3つの人気のあるオープンソースプロジェクトの頭字語です。これはオープンソースであり、複数のデータソースからデータを収集、処理、および視覚化する最も人気のあるログ管理プラットフォームの1つです。これは主にIT環境でのログ分析に使用されます。システム管理者が大量のデータを検索および分析して、リアルタイムの意思決定を常に行うことは非常に役立ちます。

Elasticsearch:収集されたすべてのデータを保存するために使用される検索エンジンです。
Kibana:データの検索と視覚化に使用されるWebベースのインターフェイスを提供します。
Logstash:使用されるデータ処理インターフェイスです。複数のソースから同時にデータを収集し、データを目的のスタッシュに送信します。

このチュートリアルでは、Ubuntu20.04サーバーにELKスタックをインストールして構成する方法を説明します。

前提条件
  • Ubuntu 20.04 VPS(NVMe 8 VPSホスティングプランを使用します)
  • rootユーザーアカウントへのアクセス(またはroot権限を持つ管理者アカウントへのアクセス)

サーバーにログインし、サーバーOSパッケージを更新します

まず、rootユーザーとしてSSH経由でUbuntu20.04サーバーにログインします。

ssh root@IP_Address -p Port_number

「IP_Address」と「Port_number」をサーバーのそれぞれのIPアドレスとSSHポート番号に置き換える必要があります。さらに、必要に応じて「root」を管理者アカウントのユーザー名に置き換えます。

開始する前に、サーバーにインストールされているすべてのUbuntuOSパッケージが最新であることを確認する必要があります。これを行うには、次のコマンドを実行します。

apt-get update -y
apt-get upgrade -y
必要な依存関係をインストールする

開始する前に、Javaおよびその他の必要な依存関係をサーバーにインストールする必要があります。次のコマンドを使用して、それらすべてをインストールできます。

apt-get install openjdk-11-jdk wget apt-transport-https curl gnupg2 -y

すべてのパッケージがインストールされたら、次のコマンドを使用して、インストールされているJavaのバージョンを確認します。

java -version

次の出力が得られるはずです:

openjdk version "11.0.9.1" 2020-11-04
OpenJDK Runtime Environment (build 11.0.9.1+1-Ubuntu-0ubuntu1.20.04)
OpenJDK 64-Bit Server VM (build 11.0.9.1+1-Ubuntu-0ubuntu1.20.04, mixed mode, sharing)

Elasticsearchをインストール

デフォルトでは、ElasticsearchはUbuntu標準リポジトリでは利用できません。そのため、Elasticsearchリポジトリをシステムに追加する必要があります。

まず、次のコマンドを使用してElasticsearch署名キーを追加します。

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -

次に、次のコマンドを使用してリポジトリを追加します。

echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | tee -a /etc/apt/sources.list.d/elastic-7.x.list

リポジトリが追加されたら、リポジトリを更新し、次のコマンドを使用してElasticsearchパッケージをインストールします。

apt-get update -y
apt-get install elasticsearch -y

Elasticsearchをインストールしたら、Elasticsearchサービスを開始し、システムの再起動時に開始できるようにします。

systemctl start elasticsearch
systemctl enable elasticsearch

この時点で、Elasticsearchが開始され、ポート9200でリッスンしています。次のコマンドで確認できます。

ss -antpl | grep 9200

次の出力が得られるはずです:

LISTEN   0        4096        [::ffff:127.0.0.1]:9200                  *:*       users:(("java",pid=27757,fd=257))                                              
LISTEN   0        4096                     [::1]:9200               [::]:*       users:(("java",pid=27757,fd=256))                                              

HTTPリクエストを送信してElasticsearchを確認することもできます:

curl -X GET http://localhost:9200

次の出力が得られるはずです:

{
  "name" : "ubuntu2004",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "LhG8-a_eQHyyoRAlQQXBTQ",
  "version" : {
    "number" : "7.10.0",
    "build_flavor" : "default",
    "build_type" : "deb",
    "build_hash" : "51e9d6f22758d0374a0f3f5c6e8f3a7997850f96",
    "build_date" : "2020-11-09T21:30:33.964949Z",
    "build_snapshot" : false,
    "lucene_version" : "8.7.0",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

Logstashのインストールと構成

Logstashは、ログを収集してElasticsearchに保存するために使用されるログ解析ソフトウェアです。次のコマンドで簡単にインストールできます:

apt-get install logstash -y

Logstashをインストールしたら、入力、フィルター、および出力プラグインを構成する必要があります。 /etc/logstash/conf.d/ディレクトリ内に新しい構成ファイルを作成することで構成できます:

nano /etc/logstash/conf.d/logstash.conf

次の行を追加します:

#Specify listening port for incoming logs from the beats

input {
  beats {
    port => 5044
  }
}

# Used to parse syslog messages and send it to Elasticsearch for storing

filter {
  if [type] == "syslog" {
     grok {
        match => { "message" => "%{SYSLOGLINE}" }
  }
     date {
        match => [ "timestamp", "MMM  d HH:mm:ss", "MMM dd HH:mm:ss" ]
     }
  }
}

# Specify an Elastisearch instance

output {
  elasticsearch {
    hosts => ["localhost:9200"]
    index => "%{[@metadata][beat]}-%{+YYYY.MM.dd}"
  }
}

ファイルを保存して閉じてから、Logstashを起動し、システムの再起動時に起動できるようにします。

systemctl start logstash
systemctl enable logstash

Kibanaのインストールと構成

Kibanaは、Elasticsearchに保存されているデータをWebベースのインターフェースを介して視覚化します。次のコマンドでインストールできます:

apt-get install kibana -y

デフォルトでは、Kibanaはローカルホストでリッスンします。したがって、外部アクセス用に構成する必要があります。ファイル/etc/kibana/kibana.ymlを編集して構成できます:

nano /etc/kibana/kibana.yml

次の行を変更します:

server.host: "your-server-ip"
elasticsearch.hosts: ["http://localhost:9200"]

ファイルを保存して閉じてから、Kibanaサービスを開始し、システムの再起動時に開始できるようにします。

systemctl start kibana
systemctl enable kibana

Filebeatのインストールと構成

Filebeatは、解析のためにログをLogstashまたはElasticsearchに送信するために使用されます。このセクションでは、Filebeatをインストールし、ログをLogstashに送信するように構成します。

次のコマンドでインストールできます:

apt-get install filebeat -y

インストールしたら、Filebeatのメイン構成ファイルを編集し、ログをLogstashに送信するように構成します。

nano /etc/filebeat/filebeat.yml

次の行をコメントアウトします:

#output.elasticsearch:
  # Array of hosts to connect to.
#  hosts: ["localhost:9200"]

次の行のコメントを解除します:

output.logstash:
hosts: ["localhost:5044"]

ファイルを保存して閉じてから、Filebeatサービスを開始し、システムの再起動時に開始できるようにします。

systemctl start filebeat
systemctl enable filebeat

次に、Filebeatシステムモジュールを有効にします。これにより、ローカルシステムログが調べられます。

filebeat modules enable system

次に、次のコマンドを使用してインデックステンプレートをロードします。

filebeat setup --index-management -E output.logstash.enabled=false -E 'output.elasticsearch.hosts=["localhost:9200"]'

最後に、Filebeatがログファイルを処理のためにLogstashに送信しているかどうかを確認します。処理されると、データはElasticsearchに送信されます。

curl -XGET http://localhost:9200/_cat/indices?v

次の出力が得られるはずです:

health status index                             uuid                   pri rep docs.count docs.deleted store.size pri.store.size
yellow open   filebeat-7.10.0-2020.12.06-000001 hkQTgSbhSKqwYV-L6Dirtg   1   1          0            0       208b           208b
green  open   .apm-custom-link                  GZekuSDGSh2h3cyaUh-Kuw   1   0          0            0       208b           208b
green  open   .kibana_task_manager_1            wsc1qi8-S6W7xiU6Gb8IUA   1   0          5           23    125.3kb        125.3kb
green  open   .apm-agent-configuration          OQ0CeuK0R7mXtevKccGjlQ   1   0          0            0       208b           208b
green  open   .kibana-event-log-7.10.0-000001   qt1r0hCbRb6-vYd5UsJVGA   1   0          2            0       11kb           11kb
green  open   .kibana_1                         s7LrkbyERnSezRhyJf-GLw   1   0          9            0     10.3mb         10.3mb
アクセスKibanaWebインターフェイス

デフォルトでは、Kibanaはポート 5601でリッスンします 。 URL http://your-server-ip:5601を使用してアクセスできます 。次の画面にKibanaダッシュボードが表示されます。

次に、自分で探索をクリックします 。次の画面が表示されます。

おめでとう!これで、Ubuntu20.04サーバーにELKStackが正常にインストールされました。

もちろん、Linux VPSホスティングサービスのいずれかを使用している場合は、これを行う必要はありません。その場合は、専門のLinux管理者にセットアップを依頼するだけです。 24時間年中無休でご利用いただけます。リクエストはすぐに処理されます。

PS 。この投稿が気に入った場合は、左側のボタンを使用してソーシャルネットワーク上の友達と共有するか、下に返信を残してください。ありがとう。


Panels
  1. Ubuntu18.04にLogstashをインストールする方法

  2. Ubuntu20.04にElasticsearchをインストールして使用する方法

  3. Ubuntu 14.04にFilebeat、Logstash、ElasticSearch、Kibanaをインストールする

  1. CentOS 7 / RHEL 7にElasticsearch、Logstash、Kibana4をインストールする方法

  2. Elasticsearch、Logstash、Kibana4をUbuntu14.04/15.04にインストールする方法

  3. Ubuntu20.04にElasticsearchをインストールして設定する方法

  1. LinuxにElasticsearchとKibanaをインストールする方法

  2. UbuntuにElasticsearchをインストールする

  3. Ubuntu 18.04 に Elasticsearch をインストールして構成する方法