일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- MySQL
- kafka
- AWS
- spark streaming
- delta lake
- 데이터 엔지니어링
- s3
- Parquet
- kafka rest api
- 카프카
- spark
- Data engineering
- docker
- 델타레이크
- 카프카 구축
- Redshift
- 데이터
- 레드시프트
- Data Engineer
- 데이터 엔지니어
- Zookeeper
- Schema Registry
- 대용량 처리
- Data Warehouse
- 스파크 스트리밍
- airflow
- 에어플로우
- 데이터 웨어하우스
- 컬럼 기반
- 스파크
- Today
- Total
목록Zookeeper (3)
데이터 엔지니어 기술 블로그
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/wTuqL/btq1XMG6JZB/t4nRD9KSIbEASYNmKZUtYk/img.png)
About 이번에는 카프카를 도커로 설치하고 '카프카 설치 (1)' 에서 했던 주키퍼 앙상블을 연결하려고 한다. 하나의 컴퓨터에서 클러스터를 구성해보고, 배포할 때 크게 변경 없이 배포하기 위해 도커로 구성하려고 한다. 카프카 브로커는 5개로 구성하고 크기를 쉽게 변경 가능하도록 하려고 한다. Tutorial & Example 1. 작업할 폴더를 생성한다. 2. Dockerfile을 아래와 같이 작성한다. FROM ubuntu:18.04 RUN mkdir -p /root/install RUN apt-get update WORKDIR /root/install ENV DEBIAN_FRONTEND noninteractive ENV JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/rGxYb/btq1WiS9F4f/9bRlYnrEl1BuWkWYhCVy8k/img.png)
About 카프카 브로커에서 브로커와 토픽의 메타데이터를 저장하기 위해 주키퍼를 사용한다. 주키퍼를 단독으로 구성할 수도 있지만, 주키퍼를 클러스터로 구성하여 고가용성을 확보한 것을 주키퍼 앙상블(Zookeeper Ensemble)이라고 한다. 주키퍼 서버는 홀수로 구성하는 것을 권고하고 있기 때문에 3대로 구성하려고 한다. 홀수로 구성하는 이유는 예를 들어서 4대로 구성을 했을 때 결함에 대한 장애 대비 기능(failover)가 3대로 구성한 것과 다르지 않기 때문인데, 짝수로 구성해도 다른 큰 문제는 없다. 하나의 OS에서 3개의 도커를 띄워 구성해보려고 한다. Tutorial & Example 1. 작업할 폴더를 생성한다. 2. Dockerfile을 아래와 같이 작성한다. FROM ubuntu:18..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cJMcg7/btqZ3gv7eXf/7qnFrAiTH6FTxQxQsY93Rk/img.png)
주키퍼(ZooKeeper)란? 분산 코디네이션 서비스를 제공하는 오픈소스 프로젝트 주키퍼는 직접 애플리케이션 작업을 조율하지 않고 조율하는 것을 쉽게 개발할 수 있도록 도와주는 도구이다. API를 이용해 동기화나 마스터 선출 등의 작업을 쉽게 구현할 수 있게 해준다. 각 애플리케이션의 정보를 중앙 집중화하고 구성관리, 그룹 관리 네이밍, 동기화 등의 서비스를 제공한다. 주키퍼의 데이터는 메모리에 저장되고, 영구 저장소에 스냅샷을 저장한다. 분산 코디네이션 서비스란? - 분산 시스템에서 시스템 간의 정보 공유, 상태 체크, 서버들 간의 동기화를 위한 락 등을 처리해주는 서비스 Architecture 주키퍼는 분산 시스템의 일부분이기 때문에 동작을 멈춘다면 분산 시스템이 멈출수도 있다. 그래서 안정성을 확보..