CoreOS의 모든 로그를 원격 서버로 보냅니다.
6446 단어 로그CoreOSsystemdlogentries
개요
CoreOS에서 나오는 모든 로그를 원격 로그 서버로 보냅니다.
CoreOS에는 systemd가 들어 있으며 모든 서비스를 systemd를 통해 관리하면 systemd와 함께 제공된 jounalctl을 통해 로그를 중앙에서 관리 할 수 있습니다. CoreOS 시스템을 사용 가능하게 유지하기 위해 중앙 집중식 로그를 원격 서버로 보냅니다.
로그 라우팅
수집한 로그는
ncat
의 커넥트 모드를 사용해 로그 보존처의 listen 포트에 UDP 데이터로서 송신한다.$ journalctl -o short -f | ncat remote-destination.com 12345
로그의 라우팅 목적지는 다양하다.
Fluentd (OSS)
Logstash (OSS)
Graylog2 (OSS)
Logentries로 라우팅하는 예
Logentries 는 고유 포트에의 Plain TCP, UDP 경유로 송신하면, 소스 IP 로 판별하므로, CoreOS 머신을 버릴 수 없게 된다. Logentries에 대한 Token 기반으로 보내기
core@core-01 ~ $ journalctl -o short -f | sed \"s/^/<YOUR_TOKEN> \\0/g\" | ncat data.logentries.com 10000"
json 형식으로 보내기
core@core-01 ~ $ journalctl -o json -f | sed \"s/^/<YOUR_TOKEN> \\0/g\" | ncat data.logentries.com 10000"
Cloud-Config로 시작
#cloud-config
coreos:
update:
group: stable
etcd:
discovery: https://discovery.etcd.io/xxxxxxxxxxxxxxxxxxx
addr: $public_ipv4:4001
peer-addr: $public_ipv4:7001
fleet:
public-ip: $public_ipv4
units:
- name: journal-router-short.service
command: start
content: |
[Unit]
Description=Journal Router (short)
[Service]
TimeoutStartSec=0
ExecStart=/bin/sh -c '/usr/bin/journalctl -o short -f | sed \"s/^/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx \\0/g\" | ncat data.logentries.com 10000'
[Install]
WantedBy=multi-user.target
- name: journal-router-json.service
command: start
content: |
[Unit]
Description=Journal Router (json)
[Service]
TimeoutStartSec=0
ExecStart=/bin/sh -c '/usr/bin/journalctl -o json -f | sed \"s/^/xxxxxxxxxxxxxxxxxxxxxxxxxxxx \\0/g\" | ncat data.logentries.com 10000'
[Install]
WantedBy=multi-user.target
보충: Logentries 설정 예
메모와 감상
각 컨테이너의 기동 실패등의 로그도 갖고 싶기 때문에 제일 먼저 기동하도록 쓴다
units의 맨 위에 쓰면 좋다고 생각한다
REF
CoreOS를 Logentries로 로그 모니터링 해 보았습니다 - uzyexe 노트 - 자신도 logentries 사용자이므로 저스트 기사였습니다.
Reference
이 문제에 관하여(CoreOS의 모든 로그를 원격 서버로 보냅니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/spesnova/items/631ffb5c13e1d0da258b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)