본문 바로가기
ElasticSearch

[ElasticStack] Filebeat 설치

by Rainbound-IT 2022. 11. 8.
반응형

목차

    https://www.elastic.co/kr/downloads/beats/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

     

    호환되는 버전

    https://www.elastic.co/kr/support/matrix#matrix_compatibility

    1이 ElasticSarch이고 2가 firebeat 버전이다.

    맞는 버전을 설치하자

    우분투의 경우는 1,2,3 순서대로 18, 20, 22 버전으로 지원합니다.

    8.3은 22 버전을 지원하지 않으니 참고하세요.

     

     

     

     

     

    설치(windows)

    본인은 8.3.3 이라 firebeat 8.3.3을 받았다.

     

    MSI로도 받을 수 있는데

    beta라 zip으로 받음

    (지금 생각해보니 MSI가 훨씬 편할것 같습니다. 일반적인 윈도우 설치과정과 비슷합니다.)

    설치해보고 나니 MSI로 하세요.. 

     

     

    압축해제하고 C:\Program Files에 넣고

    filebeat-<version>-windows 

    이런식으로 폴더명 변경하라고 하는데 굳이 그럴필요는 없는것같습니다.

     

     

    powershell이나 cmd를 관리자 계정으로 실행을 합니다.

    그리고 복사 붙여 넣기를 한 곳에 들어가셔서

    .\install-service-filebeat.ps1

    을 입력합니다.

    (설치 확인을 어떻게하는건지는 잘 모르겠음

     

    상태가 stop이 되는데 아무래도 output 하는 곳이 꺼져 있어서 인것 같음.

    공식문서에 보면 elasticsearch같은 보낼곳은 미리 설치하라고 되어있긴 했습니다.

     

     

     

    filebeat.yml 설정

    다음은 filebeat.yml 설정입니다.

    logging.level: debug
    logging.to_stderr: false
    logging.to_syslog: false
    logging.to_files: true
    logging.files:
      path: C:\Program Files\filebeat-8.3.3-windows-x86_64\logs
      name: filebeat
      keepfiles: 1
      permissions: 0777

     

    keepfiles 는 로그 저장할 파일수 입니다 설명은 다음과 같습니다.

    디스크에 보관할 가장 최근에 회전된 로그 파일의 수입니다. 이전 파일은 로그 회전 중에 삭제됩니다. 기본값은 7입니다. keepfiles 옵션은 2에서 1024 파일 범위에 있어야 합니다.

     

    더 다양한 옵션은 아래 공식 문서 참조

    Configure logging | Filebeat Reference [8.5] | Elastic

     

    Configure logging | Filebeat Reference [8.5] | Elastic

    Filebeat only creates a log file if there is logging output. For example, if you set the log level to error and there are no errors, there will be no log file in the directory specified for logs.

    www.elastic.co

     

     

    filebeat.yml에서 위와 같이 수정하면 된다.

    이러고 난뒤 해당경로에서

    ./filebeat.exe를 실행 하면 debug로그를 쌓는다.

     

    filebeat/logs 안에 filebeat-....ndjson에 로그가 쌓인다.

    확인해보면 위처럼 로그가 쌓이는것을 볼수 있습니다.

    로그를 보면 등록하고 크롤링 한다고 나와있습니다.

    아직 logstash를 설치를 안해서 로그전송이 되지는 않습니다.

     

     

     

    UBUNTU(debian계열)

    curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-8.3.3-amd64.deb
    sudo dpkg -i filebeat-8.3.3-amd64.deb

    위명령어로 설치

     

     

     

     

    설정

    /etc/filebeat/filebeat.yml 에서 설정할수있습니다.

    위와 같이 설정해주면됩니다.

     

     

     

    service filebeat start

    위같이 실행시켜주면 됩니다.

     

     

     

    > sudo vi /lib/systemd/system/filebeat.service
    Environment="BEAT_LOG_OPTS=-e" 를
    Environment="BEAT_LOG_OPTS=" 로 변경

    e 가 되어 있는 경우가 있다고 하는데 저는 없었습니다. 버전업되면서 바뀐듯합니다

     

     

    # autostart 등록
    > sudo systemctl enable filebeat
    
    # 서비스 시작
    > sudo systemctl start filebeat
    
    # 로그 확인
    > tail -f /var/log/filebeat/filebeat(filebeat-날짜-1.ndjson)

    로그 이름이 바뀌었습니다.

     

    filebeat-20221109-2.ndjson 이런식의 형식으로 debug 로그가 생성 됩니다.

     

     

     

    Reference

    Filebeat 공식문서

    Filebeat overview | Filebeat Reference [8.5] | Elastic

     

    Filebeat overview | Filebeat Reference [8.5] | Elastic

    Filebeat is a lightweight shipper for forwarding and centralizing log data. Installed as an agent on your servers, Filebeat monitors the log files or locations that you specify, collects log events, and forwards them either to Elasticsearch or Logstash for

    www.elastic.co

     

     

     

     

    ubuntu는 이분껄 보고 함

    https://yamoe.tistory.com/548

     

    [filebeat] 설치 및 로그 설정

    deb 서비스 설치 서비스로 사용하기 위해 deb 설치시 -e 옵션이 적용되어있어서 로그를 남기지 않음. (-e 옵션 : stderr 만 출력 및 syslog/file 로깅은 하지 않음) 그래서 yml 에 로깅 설정해도 로깅이 남

    yamoe.tistory.com

     

     

    에러

    Failed to start Filebeat sends log files to Logstash or directly to Elasticsearch..

    https://discuss.elastic.co/t/failed-to-start-filebeat-sends-log-files-to-logstash-or-directly-to-elasticsearch/276176

     

    Failed to start Filebeat sends log files to Logstash or directly to Elasticsearch

    Hi, I have installed native Filebeat and configured filebeat.yml accordingley but when I start the service it gives the below error: Jun 16 10:16:03 picktrack-1b systemd[1]: filebeat.service: Service hold-off time over, scheduling restart. Jun 16 10:16:03

    discuss.elastic.co

     

     

    설치 방법

    https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-installation-configuration.html#set-connection

     

    Filebeat quick start: installation and configuration | Filebeat Reference [8.5] | Elastic

    To test your configuration file, change to the directory where the Filebeat binary is installed, and run Filebeat in the foreground with the following options specified: ./filebeat test config -e. Make sure your config files are in the path expected by Fil

    www.elastic.co

     

    반응형

    'ElasticSearch' 카테고리의 다른 글

    logstash 설치 및 설정  (0) 2022.11.21
    [ElasticStack] Logstash 설치  (0) 2022.11.10
    ElasticSearch put 에러  (0) 2022.11.02
    ElasticSearch Analyzers 란?  (0) 2022.11.02
    ElasticSearch data 노드 클러스터링  (0) 2022.09.28

    댓글