본문 바로가기

반응형

log

(4)
[Log] Grafana Loki 로그 Write 시 참고 사항 해당 글에서는 운영 시 참고하면 좋을 내용들만 정리합니다. 쓰기와 읽기로 나누어 각각 어떤 부분을 고려하며 Loki를 운영하면 좋은지에 대해 정리합니다. 정석적인 내용은 아니기에 참고용으로만 봐주세요. 1. 로그 쓰기 로그 쓰기 작업은 다양한 방식으로 수행할 수 있다. Log Client로부터 로그를 수집 및 정재한 뒤에 Loki로 바로 전송할 수도 있고 Kafka 같은 Queue를 두어 전송할 수도 있다. Grafana Loki에서는 Promtail, Grafana Agent를 위주로 설명하고 있지만 필수는 아니며 fluentBit, Logstash, fluentD, Vector 등 다양한 Log Client는 물론 AWS Lambda와 같은 Serverless에서 loki HTTP 요청을 통해서도 로..
[ECS] FireLens로 ECS Fargate 컨테이너 로그 ElasticSearch로 보내기 1. 개요 ECS Fargate를 사용하다보면 Log를 어떻게 보내야할지에 대해 고민하게 된다. Fargate이기 때문에 별도 서버는 없고, Log는 수집해야 하는데 어떻게 보내야할지에 대해서 막막할 수 있는데 이러한 고민을 덜기 위해 AWS에서는 FireLens라는 기능을 출시하였다. 내부적으로 Fluentd 혹은 FluentBit 이미지를 가지고 AWS가 목적에 맞게 커스터마이징하여 개발한 Container Image라고 생각하면 되며 Task Definition에 Value만 전달하여 Log를 전달할 수도 있다. 좀 더 Custom하게 사용하고 싶다면 S3에 fluent-bit.yml 파일을 올려서 설정 값을 전달할 수도 있고 Image를 Pull하여 Container에 접속하여 설정값을 변경한 뒤..
[ElasticSearch] ElasticSearch 개념 알아보기 ElasticSearch는 Java 기반의 오픈소스이며 뛰어난 검색 능력과 대규모 분산 시스템을 구축 가능하며 모든 데이터를 색인하여 저장하고 검색, 집계 등 결과를 클라이언트에게 응답 또는 다른 프로그램으로 전달하여 동작할 수 있게 한다. 또한 Kibana와 연동하여 로그를 시각화할 수 있다. 용어 클러스터 : 하나 이상의 노드로 구성되며, 고가용성을 유지하기 위함. 각 노드들은 홀수개로 구성이 되어야 한다. 마스터 노드 : 인덱스의 메타 데이터, 샤드의 위치 등 클러스터의 상태 정보를 관리하는 노드 데이터 노드 : 실질적으로 데이터가 저장되는 노드 인제스트 노드 : 데이터를 변환하는 등 사전 처리 파이프라인을 실행하는 역할 도큐먼트 : 단일 데이터 단위 인덱스 : 도큐먼트들을 모아놓은 집합 (Indi..
[WEB, WAS] 앞단에 ALB가 있을 때 Apache, Tomcat의 Log에서 Client IP 노출 설정 전통적인 3 Tier 구조에서 따로 설정을 해주지 않는다면 Client의 IP는 얻지 못할 수도 있다. 이는, 앞 단에 LB가 있기 때문인데 앞 단에 ALB가 있냐, NLB가 있냐에 따라서도 다르고 Target Group의 Type이 Instance냐 IP냐에 따라서도 다르지만 이번에는 앞 단에 Application Load Balancer가 있다고 가정을 해볼 것이다. Apache의 Modules 디렉터리에 들어가보면 하기 4개의 Log 관련 모듈들이 있다. modlog_config.so mod_log_debug.so mod_log_forensic.so mod_logio.so (참고로, Apache는 Nginx와 다르게 Module 기반의 Web 서버이기 때문에 여러가지 모듈을 Load하여 다양한 기능..

반응형