본문 바로가기

DATA COLLECTOR/Fluentd

(7)
Fluentd config copy (file to csv,json) log_level debug @type tail path /home/centos/workspace/apacheDummy/*.log pos_file /var/log/td-agent/apache2.access_log.pos @type apache2 refresh_interval 5 tag bos.trade.mob # # @type stdout # @type copy @type file path /data/text timekey 3600 time_slice_format %Y%m%d time_slice_wait 24h format csv fields host,method force_quotes false append true flush_interval 1 @type file path /data/json time..
Fluentd config Multi process workers 목적 fluentd 는 멀티 프로세스 를 지원한다. 감시 대상이 많고 멀티코어 환경이라면 worker process를 늘려 throughput 을 늘릴 수도 있다. 설정 공통 설정 # 2개의 worker process 생성 workers 2 # 아래는 ps 명령어 로 확인된 process 갯수 [root@tlog-transmit td-agent]# ps -ef | grep fluent root 6952 6245 5 04:26 pts/1 00:00:00 /opt/td-agent/bin/ruby /opt/td-agent/bin/fluentd -c td-agent.conf root 6957 6952 8 04:26 pts/1 00:00:01 /opt/td-agent/bin/ruby -Eascii-8bit:asc..
Fluentd config High Availability 목적 fluentd 의 가용성에 대한 부분인데 일반적인 가용성이 라면 fluentd 자체의 가용성을 의미 하지만 메뉴얼 상에서의 가용성이란 다음과 같다. 데이터를 수집하는 forwarder fluentd, forwarding 된 데이터를 로컬에 기록하는 aggregator fluentd 둘로 구분한다. 실제로 데이터를 수집하는 forwarder fluentd 에 대해서는 언급이 없으며 aggregator fluentd 를 active-stanby 로 구성하는 방안을 제시 한다. 처음 forwarder fluentd 의 가용성을 목적으로 자료를 찾아 보았지만 별다른 방법이 없다. 내용 forwarder fluentd 가 로그데이터를 수집하면 aggregator fluentd에게 전달 한다. aggregat..
Fluentd config source file @type tail path /data/access*.log tag debug.tail @type apache2 pos_file /data/fluentd.pos read_from_head true #asis_key message refresh_interval 5
Fluentd config directives, section directives fluentd 의 confiig 에서 최상에 있는 지시자를 뜻한다. , , , , , directives 설명@include section directives 아래에서 특별한 수행을 하는 기능을 section 이라고 한다. section 설명 combination table section 은 종류마다 사용될 수 있는 directives 가 구분되어 있다. sourcematchfiltersystemlabel@include parse O O O N/A buffer O N/A format O O N/A extract O O O N/A inject O O N/A transport O O O N/A storage O O O N/A service discovery O
Fluentd 설치 Fluentd 홈페이지 소개 https://docs.fluentd.org/installation 여러가지 방법에 대해 설명되어 있음 pre-install NTP 서버 구축 # 기존 ntpd 제거 systemctl stop ntpd systemctl disable ntpd yum remove ntp # chrony 설치 yum install chrony # 기존 서버 목록은 주석 처리 #server 0.rhel.pool.ntp.org iburst #server 1.rhel.pool.ntp.org iburst #server 2.rhel.pool.ntp.org iburst #server 3.rhel.pool.ntp.org iburst # 한국 공용 타임서버 목록 설정 server 1.kr.pool.ntp.or..
Fluentd 소개 Fluentd 아키텍쳐 Plugin Input 다양한 데이터 소스로 부터 log 를 수집하는 플러그인으로 대표적으로 HTTP, tail, TCP 등이 있다. Parser Input 내에서 사용할 수 있는 플러그인으로 입력된 데이터에 사용자가 원하는 방식으로 데이터를 파싱하기 위해 Regular expression, apache, nginx, syslog 등이 있다. Filter 데이터를 output 으로 보내기 전에 다음과 같은 기능을 한다. 필터링 데이터 필드 추가 데이터 필드 삭제 Buffer 필터링된 데이터를 바로 output 으로 보내지 않고 throttling 할 수 있다. 파일과 메모리 두가지 타입을 사용할 수 있으며, 내부적으로 chunk 단위로 관리된다. chunk 는 사이트별 혹은 시간별..