본문 바로가기

ELK7

서비스에 ELK적용하기 ELK를 적용하는 이유 약 8개의 MSA가 존재하고 모든 MSA들의 로그를 일일히 각 EC2 인스턴스에 들어가서 확인하는 것은 매우 비효율적이었음. 특히 라이더타운 서버는 모두 스프링부트 + 도커 컨테이너 로 돌아가고 있기 때문에 도커 컨테이너 로그는 로그 내역이 쌓이면 이전에 로그 내역을 보기가 힘들었음. 그래서 로깅을 위해 ELK를 적용하기로 했음. ELK 스택 시각화를 위한 kibana는 7.6.2 버전 사용. 데이터 저장, 검색 엔진을 위한 elasticsearch 역시 7.6.2 버전 사용. logstash는 무거워서 사용하지 않음. 나중에는 모르겠지만 본인은 현재 단지 스프링 부트의 로그들을 저장하고 확인하기 위해서만 ELK를 사용하고 싶음. 해서 훨씬 가벼운 filebeat를 각 인스턴스에 .. 2023. 8. 4.
비츠 - filebeat 비츠는 수집한 데이터를 엘라스틱으로 실어 나르기 위한 최전방에 위치한 소프트웨어. 파일 비트, 메트릭 비트, 패킷 비트, 윈로그비트, 오딧비트, 하트비트, 펑션비트, 카프카비트, 엔진엑스 비트, mysql비트 등 상당히 많은 비트가 존재. 또한 온프레미스, 가상 머신 뿐 아니라 컨테이너와 쿠버네티스 환경에서도 사용이 가능함. 비츠는 설정이 간편하고 별도의 데이터 가공을 위한 프로그래밍 작업이 필요하지 않음. -> 빠르게 데이터 수집 가능 + 특정 비트 내에서 모듈을 추가하는 방식으로 필요한 기능을 확장할 수 있음 2023. 7. 18.
모니터링 로그스태시에서 모니터링을 하는 방법에는 두가지가 있음 1. 로그스태시가 제공하는 API를 활용하여 특정 시점의 통계 정보를 얻는 방법 2. 모니터링 기능을 활성화하여 지속적인 통계 정보를 수집하고, 키바나를 통해 대시보드 형태로 연속적인 모니터링을 수행하는 방법 하나씩 해보자. 1. API를 활용하는 방법 로그스태시 정보 가져오기 curl -XGET "localhost:9600?pretty" 결과는 아래와 같다. { "host" : "ichan-yeong-ui-MacBookPro.local", "version" : "8.8.1", "http_address" : "127.0.0.1:9600", "id" : "e878ac8b-e9ce-4ad3-b266-90a14946f49f", "name" : "ichan-.. 2023. 7. 3.
ELK - Logstash 1 : 로그스태시 output 출력 출력은 필터를 거쳐 가공된 데이터를 지정한 대상으로 내보내는 단계이다. 출력 역시 입력, 필터 플러그인 처럼 다양한 플러그인을 가지고 있다. 주로 사용되는 플러그인은 elasticsearch, file, kafka와 같은 출력 플러그인들이 있다. 엘라스틱 서치 플러그인을 사용해보자. 반드시 엘라스틱 서치를 먼저 실행시켜야한다. 먼저 logstash-test.conf 파일을 아래와 같이 수정한다. input { file { path => "로그 파일 경로" start_position => "beginning" sincedb_path => "nul" } } output { file { path => "로그스태시 경로/output.json" } elasticsearch { index => "output".. 2023. 6. 28.