DockerでGraylogを試したかった
log監視ツールであるところのGraylogを試してみたい。
Dockerでのインストールは
を参考にdocker-compose.yml書いてdocker-compose upでおしまい。
version: '3'
services:
# MongoDB: https://hub.docker.com/_/mongo/
mongo:
image: mongo:4.2
networks:
- graylog
# Elasticsearch: https://www.elastic.co/guide/en/elasticsearch/reference/7.10/docker.html
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch-oss:7.10.2
environment:
- http.host=0.0.0.0
- transport.host=localhost
- network.host=0.0.0.0
- "ES_JAVA_OPTS=-Dlog4j2.formatMsgNoLookups=true -Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
deploy:
resources:
limits:
memory: 1g
networks:
- graylog
# Graylog: https://hub.docker.com/r/graylog/graylog/
graylog:
image: graylog/graylog:4.2
environment:
# CHANGE ME (must be at least 16 characters)!
- GRAYLOG_PASSWORD_SECRET=somepasswordpepper
# Password: admin
- GRAYLOG_ROOT_PASSWORD_SHA2=8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918
- GRAYLOG_HTTP_EXTERNAL_URI=http://192.168.1.249:9000/
entrypoint: /usr/bin/tini -- wait-for-it elasticsearch:9200 -- /docker-entrypoint.sh
networks:
- graylog
restart: always
depends_on:
- mongo
- elasticsearch
ports:
# Graylog web interface and REST API
- 9000:9000
# Syslog TCP
- 514:514
# Syslog UDP
- 514:514/udp
# GELF TCP
- 12201:12201
# GELF UDP
- 12201:12201/udp
networks:
graylog:
driver: bridge
ID/Passwordはadminになる。
とりあえず動いていることは確認したんだが、inputでSyslog拾うように設定しても拾ってくれない。Syslogの宛先は192.168.1.249
Networkあたりが怪しいと思ってnetwork_mode: "host"にしてみたが今度はインストールがうまくいかない。
とりあえず今回はここでお手上げ。
Syslogの送り先を192.168.1.249(有線)から192.168.1.248(Wi-Fi)にしたら拾うようになった。謎。
日本語マニュアルがある。
ローカルのログの取り方が分からないので、raspberry piのSyslogを自分自身に送るように設定してみたが失敗。
sudo nano /etc/rsyslog.conf
*.*@192.168.1.248:514;RSYSLOG_SyslogProtocol123Format
sudo systemctl restart rsyslog
この記事が気に入ったらサポートをしてみませんか?