DevOps/Kubernetes

EFK

beomzh 2023. 7. 18. 12:58
728x90
반응형

Private/Public 전체 구조는

로그를 저장하는 DB=elastic Search,

로그 수집=Fluentd,

저장한 로그를 보여주는 =Kibana

 

개인정보 로그를 제외하고 Private/Public 모두 Elastic Search 저장

  • 서비스,온라인배치, 일반배치, 쿠버네티스 컨트롤 플레인4종류
  • 개인정보 로그는 public S3, private kafka 거치지 않고 바로 전송
  • 나머진 로그는 kafka 거쳐 Elastic Search 저장

 

구조: Pod생성(log 생성) ->FluentD -> Kafka -> 설치형 FluentD -> ElasticSearch(Managed)

  • 로그양이 적다면 Kafka 단계를 건너뛰고 FluentD->ElasticSearch
  • Kafka 설치형으로 Pod형태가 아니지만 FluentD Pod형태로 기동된다.

 

일반적으로 수집한 데이터는 Elasticsearch 바로 전송 가능하지만 부하가 많이 발생할 경우 Elasticsearch 정상적으로 쓰기를 하지 못해 실패할 경우를 대비해 중간에 Buffer 토픽으로 Kafka 전송하고, VM 설치된 td-agent(Fluentd)에서 kafka 토픽을 전송받아 통합 로그를 ElasticSearch 전송하는 구조

 

Public Private fluentd Pod 관련한 여러 로그정보(컨테이너 서비스로그,온라인/온디멘드 배치정보,기타 로그정보) 프로듀서로서 Kafka 토픽으로 전송하며, 개인정보 로그는 s3 전송, 운영계에는 Kafka 로그전송 이외의 쓰레드 덤프전송을 별도로 담당하는 Rclone 사용해 별도로 s3(Cloud Storage) Dump/GC Log 2 주기로 저장

728x90
반응형

'DevOps > Kubernetes' 카테고리의 다른 글

Fluentd  (0) 2023.07.18
ElasticSearch  (0) 2023.07.18
[openshift]oc get ns 와 oc get ns [ns명]차이  (0) 2023.07.18
Node,Container,POD 삼각관계?  (0) 2023.07.18
Canary(카나리) 배포  (0) 2023.07.18