Elasticsearch+Kibana+Metricbeats(+FIlebeats)でマシンモニタリング②


2.Elasticsearch+Kibanaのセットアップ

まずは基盤となるElasticsearch,Kibanaのセットアップを行います。
具体的には以下のコンポーズファイルを使用して、dockerでサービスを立ち上げてください。

docker-compose-elk.yml
version: '3.7'

services:
  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.5.1
    environment:
      - discovery.type=single-node
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
#    volumes:                                                                                                                                                                                              
#      - ./data:/usr/share/elasticsearch/data                                                                                                                                                              
    ports:
      - 9200:9200
      - 9300:9300
  kibana:
    image: docker.elastic.co/kibana/kibana:7.5.1                                                                                                                                                      
    ports:
      - 5601:5601
networks:
  default:
    attachable: true
docker stack deploy --prune -c docker-compose-elk.yml elastic-base

なんとこれだけです。elasticsearchのデータを永続化したい場合はvolumesの記述のコメントアウトを外してください。
しばらくはelasticsearchの初期セットアップとkibanaの初期セットアップが行われるので、完了されるまで待ちます。
portainerあたりでkibanaのログを監視していれば、セットアップが完了後にnginxサーバが立ち上がったことを知らせるログが表示されるはずです。
http://localhost:5601
にアクセスして、kibanaの画面が表示されれば成功です。
次に行く前にcomposeファイルでnetworkをattachableにしていることに注意してください。これは次のbeatsを後から立ち上げる際にelastic-base_defaultのnetworkに接続できる様にするための設定です。
では次にいきましょう。

Elasticsearch+Kibana+Metricbeats(+FIlebeats)でマシンモニタリング①
Elasticsearch+Kibana+Metricbeats(+FIlebeats)でマシンモニタリング②
Elasticsearch+Kibana+Metricbeats(+FIlebeats)でマシンモニタリング③
Elasticsearch+Kibana+Metricbeats(+FIlebeats)でマシンモニタリング④

参考リンク:
https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html
https://www.elastic.co/guide/en/kibana/current/docker.html