DevOps
[Elastic Stack] Elasticsearch 기본 개념
검색 엔진분산처리고가용성 제공수평적 확장성JSON 기반의 REST API 제공데이터 안정성다양한 플러그인을 통한 확장 지원준실시간 검색트랜잭션이 지원되지 않음사실상 조인을 지원하지 않음엘라스틱서치 기본 동작 빠르게 둘러보기[문서 색인]_id를 지정하여 색인_id 값은 이 문서를 인덱스 내에서 고유하게 식별하기 위한 값. 엘라스틱서치에 저장된 모든 문서가 _id 값을 가지고 있다.PUT [인덱스 이름]/_doc/[_id값]{ [문서 내용]} _id를 지정하지 않고 색인자동으로 _id 값을 생성해준다.PUT [인덱스 이름]/_doc{ [문서 내용]}[문서 조회]GET [인덱스 이름]/_doc/[_id값][문서 업데이트]POST [인덱스 이름]/_upd..
[Elastic Stack] Elasticsearch Command line tools
Command line tools | Elasticsearch Guide [8.12] | Elastic www.elastic.co [elasticsearch] 엘라스틱서치 실행 명령어 # 데몬으로 실행 > elasticsearch -d -p pid [elasticsearch-create-enrollment-token] elasticsearch 노드 및 Kibana 인스턴스에 대한 등록 토큰을 생성 > elasticsearch-create-enrollment-token [-f, --force] [-h, --help] [-E ] [-s, --scope] [--url] -E 표준 Elasticsearch 또는 X-Pack 설정을 구성 -f, --force 비정상 클러스터에 대해 명령을 강제로 실행 -h, --..
[Elastic Stack] Elasticsearch.yml 파일 세팅
Elasticsearch 다운로드 페이지에서 Elasticsearch를 다운로드하고 설치할 수 있으며 설치 후, elasticsearch.yml 파일을 열어 Elasticsearch를 구성해야 한다. Default location : elasticsearch x.xx.x/config/elasticsearch.yml# ======================== Elasticsearch Configuration =========================## NOTE: Elasticsearch comes with reasonable defaults for most settings.# Before you set out to tweak and tune the configuration, ..
[Elastic Stack] Ingest Pipeline + processor
Logstash는 Elastic Stack에 원래 포함되어 있는 구성 요소로서, 구문을 분석하고 데이터를 보강하며 처리를 할 때 사용하던 도구이다. Ingest Node는 Elasticsearch 5.0부터 도입되었으며 최소한의 구성으로 간단한 아키텍처를 가능하게 하며, Logstash의 상위개념이라고 볼 수 있다. 일부 기능은 중복되지만 서로의 사용처가 분명하게 다르다. 실습으로 경험해본 차이점은 Logstash의 Filter 부분을 구성할 때 .yaml 파일로 작성하게 되는데 만약 관련 설정이 길어지거나 추가사항이 많을때는 가독성과 유지보수가 힘들다.하지만 Ingest Node를 사용하여 관리했을땐 GUI기반으로 설정하기가 매우 간단했으며 편리하게 관리할 수 있었다. 인제스트 노드(Ingest No..
[Elastic Stack] Fleet and Elastic Agent
Elastic Agent 로그, 지표 및 기타 모니터링을 추가할 수 있는 통합된 단일 방법이다. 기존의 데이터수집을 위해선 여러 종류의 Beats를 설치하고, 각각의 설정을 일일이 변경하고 Health check까지 별도로 해야했지만 Elastic Agent 하나로 여러 타입의 데이터를 손쉽게 수집하고, Fleet으로 Agent 통합관리, Configuration 및 바이너라 자동업데이트까지 여러기능을 가능케 한다. Fleet의 중앙관리 Elastic Agent를 중앙에서 관리할 수 있도록 Kibana에서 웹 기반 UI를 제공하며 Fleet에 있는 모든 Elastic Agent의 상태를 볼 수 있다. Fleet은 Elastic Agent로 돌아가는 통신 채널 역할을 하며 Agent Policy를 변경하면..
[Elastic Stack] Grok Pattern에 대해
파이프라인데이터를 입력받아 실시간으로 변경하고 이를 다른 시스템에 전달하는 역할입력, 필터, 출력의 3가지 옵션으로 이루어져 있으며 필터에 다양한 옵션이 있는데 그 중 Grok pattern을 사용하는 법에 대해 정리해보려고 한다. 입력 플러그인은 file, syslog, kafka, jdbc 등의 플러그인으로 데이터를 받아온다.필터 플러그인은 grok, dissect, mutate, date 등의 플러그인으로 데이터를 필터링 한다. Grok Pattern - 예악어 활용Grok은 정규 표현식을 이용해 문자열을 파싱할 수 있다. 자주 사용하는 정규 표현식들을 패턴화해뒀으며 패턴을 이용해%{패턴명:변수명} 형태로 데이터에서 특정 필드를 파싱할 수 있다.패턴명설명NUMBER십진수를 인식한다. 부호와 소수점을..