Hadoop eco

[Kafka] Kafka DR(Disaster Recovery)

root_bridger 2023. 7. 14. 02:37

DR : Disaster recovery


  • 자연 재해나 인간의 행동으로 재해가 발생한 후 IT 인프라에 대한 엑세스 및 기능을 복원할 수 있는 기능을 말한다.
  • DR에서 가장 중요한 점은 서비스 중단 이벤트가 발생한 이후 가능한 빨리 중요한 비즈니스 기능을 지원하는 IT 시스템이 작동하도록 해야 한다는 것이다
  • 예방, 감지, 수정이라는 세가지 요소를 키워드로 인프라를 가동하고 실행하는 확실한 계획을 수립해야 한다.
    • 스냅샷, BaaS 솔루션 등을 통해 데이터를 주기적으로 백업해둬야 한다.
  • 재해 복구 전략을 수립할 때는 복구 시간 목표(RTO)와 복구 지점 목표(RPO)와 같은 주요 측정항목을 신중하게 고려해야 한다.
    • 어플리케이션을 더 빨리 복구해야 할 수록 어플리케이션 실행 비용이 증가한다.

DR 방법 : 다중 클러스터


로컬 클러스터에 생산자가 메세지를 발행하고 이를 전역 클러스터에서 복제해서 컨슈밍 되게끔 하는 방법. 각각의 클러스터 성능을 높이고, 데이터를 안정적으로 관리할 수 있도록 한다.

 

우버에서는 이를 각각의 지역 클러스터에서 집계 클러스터로 데이터를 복제한 후 다음 파이프라인을 태우는 방식으로 운영 중이라고 한다. 이때 안정적으로 데이터를 복제하기 위해 uReplicator라는 오픈 소스를 개발해서 이를 활용하고 있다.

출처 : https://www.uber.com/blog/kafka/ / Disaster Recovery for Multi-Region Kafka at Uber

 

기본 지역에서 재해가 발생하면 active-active 서비스가 다른 지역을 기본으로 할당하고 급증 가격 계산은 다른 지역으로 장애 조치 된다. -해당 글 내용 중-

 

이를 위해 Kafka Mirror Maker 2 를 사용하면 클러스터 간 복제를 쉽게 할 수 있다. 하지만 오버 엔지니어링이 될 수 있으니 적절한 상황이 맞는지 판단하는 것이 우선 되어야 한다.

  • 고로 다음은 미러 메이커에 대한 내용을 다뤄보겠다.

 

참고한 글들..
좋은 글 감사합니다.


https://cloud.google.com/learn/what-is-disaster-recovery?hl=ko

https://www.confluent.io/blog/disaster-recovery-multi-datacenter-apache-kafka-deployments/

https://colevelup.tistory.com/18

https://www.uber.com/blog/kafka/

https://assets.confluent.io/m/5bbbc5f29422999/original/20190906-WP-Disaster_Recovery_for_Multi_Datacenter_Apache_Kafka_Deployments.pdf?utm_source=marketo&utm_medium=transactionalemail&utm_campaign=web-content-recovery-multi-datacenter

https://tech.kakao.com/2023/01/12/introduce-kafka-sink-connector/

https://dataplatform.cloud.ibm.com/docs/content/wsj/manage-data/rep-data-recovery.html?locale=ko

'Hadoop eco' 카테고리의 다른 글

[Kafka] Schema Registry  (0) 2023.07.04
[Kafka] 성능 측정 지표  (0) 2023.05.23
[Kafka] Message Delivery Semantics  (0) 2023.05.23
[Kafka] 기업 도입 사례들  (0) 2023.05.23
[Kafka] Kafka 브로커의 동작  (0) 2023.02.11