✍️ 개요
웹 서버 catalina log를 수집하기 위해 Filebeat 설치
✍️ sidecar란?
Graylog 홈페이지에서는 다음과 같이 설명한다.
Graylog Sidecar 는 백엔드라고도 하는 다양한 로그 수집기를 위한 경량 구성 관리 시스템입니다.Graylog 노드는 로그 수집기의 구성을 포함하는 중앙 집중식 허브 역할을 합니다.지원되는 메시지 생성 장치/호스트에서 Sidecar는 서비스(윈도우즈 호스트) 또는 데몬(리눅스 호스트)으로 실행할 수 있습니다.
로그 수집기 구성은 Graylog 웹 인터페이스를 통해 중앙에서 관리됩니다.Sidecar 데몬은 REST API를 사용하여 대상과 관련된 모든 구성을 정기적으로 가져옵니다.Sidecar는 첫 번째 실행 시 또는 구성 변경이 감지되면 관련 백엔드 구성 파일을 생성(렌더)합니다.그런 다음 재구성된 로그 수집기를 시작하거나 다시 시작합니다.
간단히 말해 Beat들과 Graylog 서버 간에 API 역할을 해주는 친구이다.
실제로 sidecar 없이 winlogbeat을 설치했을 때 로그가 깨져서 들어오는 것을 확인할 수 있었다. (당연한 얘기겠지만, sidecar를 통해 winlogbeat이 들어오면 깔끔하게 들어온다.) 또한, sidecar를 사용하면 초기 서버 IP주소와 토큰 설정을 제외하곤 나머지 설정은 Graylog 사이트에서 설정이 가능하여 훨씬 편했다. (아직까지 운영 서버에 직접 접근해서 설정하는 것은 무섭다ㅠㅠ)
⚙️ sidecar Token 생성
Graylog 서버와 sidecar 간에 통신을 위해서는 토큰이 필요하다.
Graylog에서 System > Sidecar 에서 Create or reuse a token 을 클릭한다.
Token Name 에 토큰 이름을 적고, Create Token을 누르면 아래와 같이 토큰이 생성된다.
생성된 토큰은 다시 확인할 수 없으므로 따로 저장하는 것이 좋다. (내가 방법을 모르는 거일수도..)
⚙️ sidecar 설치
sidecar 설치 주소 👇
Graylog Sidecar
collector_binaries_accesslist A list of binaries which are allowed to be executed by the Sidecar. An empty list disables the access list feature. Default:/usr/bin/filebeat,/usr/bin/packetbeat,/usr/bin/metricbeat,/usr/bin/heartbeat, /usr/bin/auditbeat,/usr/
go2docs.graylog.org
내부망에 설치해야하므로 rpm 파일을 다운받는다.
yum localinstall 로 해당 파일을 설치한다.
/etc/graylog 디렉터리에 sidecar.yml 파일이 생성되는데, Graylog IP와 위에서 생성한 토큰을 입력한다.
systemctl start graylog-sidecar 명령어로 sidecar 데몬을 실행한다.
정상 설치가 됐으면 Graylog > System > Sidecar에 자동으로 등록되어 있다. (Name은 hostname을 긁어오며, 따로 수정할 수는 없다.)
❌ 만약 실행이 안된다면 ❌
아래와 같이 sidecar 데몬이 실행이 안되는 경우가 있다.
이유는 모르겠는데, 서버마다 정상 설치되는 것이 있고 graylog-sidecar.service 파일이 누락되는 경우가 있다.
/etc/systemd/system 디렉터리에 graylog-sidecar.service 파일을 생성하여 위 내용을 복붙하면 된다:)
⚙️ Filebeat 설치
Filebeat 설치 주소 👇
Download Filebeat • Lightweight Log Analysis
Download Filebeat, the open source data shipper for log file data that sends logs to Logstash for enrichment and Elasticsearch for storage and analysis.
www.elastic.co
Filebeat은 설치한 Elasticsearch와 같은 버전을 다운 받는 것이 좋다.
yum localinstall 로 Filebeat를 설치한다. Filebeat는 설치하고 따로 설정해줄 건 없다. (Sidecar를 사용하면 좋은점 🤭!!)
⚙️ sidecar config 설정
system > Input에서 Beat로 Input을 하나 만든다.
system > Sidecar에서 Configuration을 누르고 Create Configuration으로 생성한다.
① Config 이름으로 적용할 때 필요하므로, 직관적으로 짓는 것이 좋다.
② 수집하고 싶은 로그가 있는 위치를 입력한다.
위와 같이 전체를 입력할 수도 있고, 디렉터리 내 모든 로그를 수집하고 싶다면 *.log 로 입력할 수도 있다.
③ Graylog server IP 와 Input에서 설정한 Beat의 포트번호를 적는다.
① Sidecar에서 아까 등록된 host의 Manage sidecar를 누르고,
② Config에서
③ 위에서 만든 Config를 설정한다.
④ Process에서
⑤ Start를 누르면 수집이 된다.
설명은 길지만 막상 해보면 정말 간단하다! 🤭
다음에는 로그 파싱할 때 사용하는 💎Grok Patterns💎을 들고 오겠습니다
'💻 프로젝트 > 01. Graylog' 카테고리의 다른 글
[Graylog] 사용자(USER) 설정 (0) | 2023.12.19 |
---|---|
[Graylog] 파이프라인 설정(적용) (0) | 2023.08.26 |
[Graylog] 파이프라인이란? (0) | 2023.08.15 |
[Graylog] Grok Patterns 적용하기 (0) | 2023.08.14 |
[Graylog] Grok Patterns이란? (0) | 2023.08.14 |