오브젝트스토리지

[오브젝트 스토리지 활용] Fluentd를 활용하여 로그 저장소 만들기

Fluentd란 무엇인가?


 

 

Fluentd 로그수집기의 한 종류로 다양한 포맷의 데이터를 Json으로 변환하여,  수집된 데이터를 다양한 대상으로 전달 할 수 있습니다. 

Input, Parser, Engine, Filter, Buffer, Ouput, Formatter의 7개의 컴포넌트 구성되어 있으며,  input / output plugin을 활용하여 데이터를 수집할 수 있습니다.

보다 자세한 내용은 Fluentd 공식 홈페이지를 참고해주시면 감사하겠습니다.  

 

 

Fluentd 설치 및 apache 로그 저장하기


 

1. 서버 설정

먼저, apache 로그를 수집할 웹서버를 준비합니다. 

웹서버의 경우 iwinv 가상서버의 기본제공 운영체제중 APM이 설치된 운영체제를 선택하시면 쉽게 사용하실 수 있습니다. 

해당 웹서버의 apache 로그iwinv object storage의 특정 버킷에 저장합니다. 

 

 

2. 버킷 생성

아래와 같이 apache 로그를 저장할 버킷을 생성합니다.

 

 

3. fluentd 설치 

해당 서버에 fluentd 래퍼프로그램인  td-agent를 설치합니다. 

 

# Ubuntu 

curl -L https://toolbelt.treasuredata.com/sh/install-ubuntu-xenial-td-agent2.sh | sh

 

# CentOS

 curl -L https://toolbelt.treasuredata.com/sh/install-redhat-td-agent2.sh | sh

 

 

 

4. Fluentd config 파일 수정 

  /etc/td-agent/td-agent.conf 파일을 수정합니다.  아래 예시는 해당서버의 apache로그를  특정 버킷에 logs 폴더 밑에 10초마다 저장하는 설정입니다.

  기타 플러그인 옵션등을 통해 다양한 설정이 가능하다 .   

    - input_plugin:  https://docs.fluentd.org/v0.12/articles/input-plugin-overview

    - Output_plugin: https://docs.fluentd.org/v0.12/articles/output-plugin-overview

@type tail

path /var/log/httpd/access_log

format apache2

tag s3.apache.access

 

 

@type s3

aws_key_id Access_Key #Access_Key = console.iwinv.kr -> 오브젝트 스토리지 -> 스토리지 관리 -> 인증키 관리 -> Access Key ID

aws_sec_key Secret_Key #Secret_Key = console.iwinv.kr -> 오브젝트 스토리지 -> 스토리지 관리 -> 인증키 관리 -> Secret Key ID

s3_bucket Bucket_Name #Bucket_Name = 로그를 저장할 버킷 이름

s3_region kr-standard

s3_endpoint Endpoint #Endpoint = console.iwinv.kr -> 오브젝트 스토리지 -> 스토리지 관리 -> 인증키 관리 -> API {IDC} Endpoint

buffer_path /var/log/td-agent/s3/buffer

path logs/ #로그를 저장할 폴더지정, default는 ""

time_slice_format %Y%m%d%H

flush_interval 10s 

 

5. 로그 확인 

지정한 버킷에 apache 로그가 정상적으로 저장되었는지를 확인합니다. 

아래와같이 apache_log버킷에 logs폴더가 자동 생성되었고 , 해당 폴더안에 로그가 10초마다 저장되는것을 확인 할 수 있습니다. 

 

 

 

 

 

 

* td-agent.conf 설정시 path 값을  ""로 설정하면  아래와같이 해당 버킷에 바로 로그가 저장됩니다. 

 

 

iwinv 클라우드 서비스를 어떻게 사용할 수 있나요? 


 

 

iwinv 클라우드 서비스는 국내 1등 토종 클라우드 솔루션 업체를 목표로 하며 서비스 쉽게 이용하시려면  iwinv 홈페이지 매뉴얼 및 퀵 메뉴 서비스 이용 가이드를 참고하시면 됩니다.

- iwinv 이용 가이드 : https://www.iwinv.kr/guide/console.html
- iwinv 메뉴얼 가이드 : https://help.iwinv.kr/
- iwinv 오브젝트 스토리지 가이드 : https://www.iwinv.kr/storage/obj.html