CodeGym /コース /Docker SELF /セントラライズドロギング

セントラライズドロギング

Docker SELF
レベル 22 , レッスン 1
使用可能

7.1 ELK Stackのコンポーネント

ELK Stack、Elasticsearch、Logstash、Kibanaで構成されていて、中央集中的なログ管理やデータ分析に強力なツールだよね。これを使えば、Dockerコンテナを含むいろんなソースからログを収集、保存、分析、そして可視化することができるよ。この講義では、Dockerコンテナの中央集中的なログ管理のためにELK Stackを設定する方法を詳しく見ていくよ。

ELK Stackのコンポーネント

  1. Elasticsearch — 分散型の検索と分析システムで、ログを保存して検索するために使うよ。
  2. Logstash — ログを収集、処理、そしてElasticsearchに送るためのツールだね。
  3. Kibana — Elasticsearchに保存されたデータを可視化して分析するためのWebインターフェースだよ。

7.2 Elasticsearchのインストール

Linuxで

1. Elasticsearchリポジトリの追加

公開鍵リポジトリをダウンロードしてインストール:

Terminal

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

Elasticsearchリポジトリを追加:

Terminal

sudo sh -c 'echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" > \
/etc/apt/sources.list.d/elastic-7.x.list'
sudo apt-get update

2. Elasticsearchのインストール

Terminal

sudo apt-get install elasticsearch

3. Elasticsearchの起動と自動起動の設定

Terminal

sudo systemctl start elasticsearch
sudo systemctl enable elasticsearch

MacOSで

1. Homebrewでのインストール

Terminal

brew update
brew install elasticsearch

2. Elasticsearchの起動

Terminal

elasticsearch

Windowsで

1. インストールファイルのダウンロード

公式サイトからElasticsearchの最新バージョンをダウンロード: https://www.elastic.co/downloads/elasticsearch.

2. Elasticsearchのインストール

ダウンロードしたインストールファイルを実行し、画面上の指示に従います。

3. Elasticsearchの起動

インストール後、Elasticsearchのフォルダに移動してPowerShellでサービスを起動:

PowerShell

.\bin\elasticsearch.bat

Elasticsearchを自動起動設定するには、Windowsサービスに追加します services.msc.

7.3 Logstashのインストール

Linuxで

1. Logstashのインストール

ElasticリポジトリからLogstashをインストールしてね:

ターミナル

sudo apt-get install logstash

2. Logstashの設定

logstash.confという設定ファイルを作成してね:

ターミナル

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

Dockerログ収集用の設定例:

プレーンテキスト

input {
  beats {
    port => 5044
  }
}

filter {
  json {
    source => "message"
  }
}

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

3. Logstashの起動と自動起動設定

Logstashを起動して自動起動を有効化する:

ターミナル

sudo systemctl start logstash
sudo systemctl enable logstash

MacOSで

1. Homebrewを使ってLogstashをインストール

ターミナル

brew update
brew install logstash

2. Logstashの設定

Logstash設定フォルダ内にlogstash.confというファイルを作成してね:

ターミナル

nano /usr/local/etc/logstash/logstash.conf

設定例:

プレーンテキスト

input {
  beats {
    port => 5044
  }
}

filter {
  json {
    source => "message"
  }
}

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

3. Logstashの起動

Homebrewを使ってLogstashを起動:

ターミナル

logstash -f /usr/local/etc/logstash/logstash.conf

Windowsで

1. Logstashのダウンロードとインストール

公式サイトから最新のLogstashバージョンをダウンロード:https://www.elastic.co/downloads/logstash

Logstashのアーカイブを適切な場所に展開(例:C:\logstash)。

2. Logstashの設定

Logstash設定フォルダ内にlogstash.confファイルを作成してね:

PowerShell

notepad C:\logstash\config\logstash.conf

設定例:

プレーンテキスト

input {
  beats {
    port => 5044
  }
}

filter {
  json {
    source => "message"
  }
}

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

3. Logstashの起動

設定を使ってLogstashを起動する:

PowerShell

cd C:\logstash
bin\logstash.bat -f config\logstash.conf

7.4 Kibanaのインストール

Linuxの場合

1. Kibanaのインストール

Kibanaをインストールするには:

Terminal

sudo apt-get install kibana

2. Kibanaの起動と自動起動の有効化

Kibanaを起動して自動起動を有効化するには:

Terminal

sudo systemctl start kibana
sudo systemctl enable kibana

Kibanaは http://localhost:5601 で利用可能になります。

MacOSの場合

1. Homebrew経由でKibanaをインストール

Terminal

brew update
brew install kibana

2. Kibanaの起動

Homebrewを使用してKibanaを起動するには:

Terminal

brew services start kibana

Kibanaは http://localhost:5601 で利用可能になります。

Windowsの場合

1. Kibanaのダウンロードとインストール

公式サイトから最新バージョンのKibanaをダウンロードしてください: https://www.elastic.co/downloads/kibana.

Kibanaのアーカイブを便利な場所に解凍してください(例: C:\kibana)。

2. Kibanaの起動

Kibanaを起動するには:

PowerShell

cd C:\kibana\bin
kibana.bat

Kibanaは http://localhost:5601 で利用可能になります。

8.5 Filebeatの設定でDockerログを収集する

Linuxの場合

1. Filebeatのインストール

ElasticリポジトリからFilebeatをインストールします:

Terminal

sudo apt-get install filebeat

2. Filebeatの設定

Dockerログを収集するためにFilebeatを設定します:

Terminal

sudo nano /etc/filebeat/filebeat.yml

設定例:

Yaml

filebeat.inputs:
- type: docker
  containers.ids:
    - '*'
  processors:
    - add_docker_metadata: ~

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

3. Filebeatを開始し、自動起動を有効化する

Filebeatを開始し、自動起動を有効にします:

Terminal

sudo systemctl start filebeat
sudo systemctl enable filebeat

MacOSの場合

1. HomebrewでFilebeatをインストールする

Terminal

brew update
brew install filebeat

2. Filebeatの設定

filebeat.ymlファイルを編集してFilebeatを設定します:

Terminal

nano /usr/local/etc/filebeat/filebeat.yml

設定例:

Yaml

filebeat.inputs:
- type: docker
  containers.ids:
    - '*'
  processors:
    - add_docker_metadata: ~

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

3. Filebeatを開始する

Homebrewを使用してFilebeatを開始します:

Terminal

brew services start filebeat

Windowsの場合

1. Filebeatのダウンロードとインストール

公式サイトから最新バージョンのFilebeatをダウンロードします: https://www.elastic.co/downloads/beats/filebeat.

Filebeatアーカイブを適切な場所に解凍します(例: C:\filebeat)。

2. Filebeatの設定

filebeat.ymlファイルを編集します:

PowerShell

notepad C:\filebeat\filebeat.yml

設定例:

Yaml

filebeat.inputs:
- type: docker
  containers.ids:
    - '*'
  processors:
    - add_docker_metadata: ~

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

3. Filebeatを開始する

Filebeatを開始します:

PowerShell

cd C:\filebeat
filebeat.exe -e -c filebeat.yml
コメント
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION