-실습-
주키퍼 3개중 리더 1개가 문제가 생기면 나머지 둘중 하나가 리더로 변경된다(클러스터링 구성) [리더 - 팔로워]
2888 - 주키퍼 리더 포트
3888 - 주키퍼 팔로워 포트
zookeeper 클러스터 설정
1) 3대 VM 준비
hostname : zookeeper1, zookeeper2, zookeeper3
IP주소 : 192.168.245.130, 192.168.245.140, 192.168.245.150
2) zookeeer 다운 및 설치
yum -y install java-1.8.0-openjdk-devel.x86_64
wget https://dlcdn.apache.org/zookeeper/zookeeper-3.7.1/apache-zookeeper-3.7.1-bin.tar.gz
tar zxvf apache-zookeeper-3.7.1-bin.tar.gz
mv apache-zookeeper-3.7.1-bin /opt/zookeeper
3) 설정
mkdir -p /data/zookeeper
cp /opt/zookeeper/conf/zoo_sample.cfg /opt/zookeeper/conf/zoo.cfg
(복사본을 만들어서 설정 할것.)
vi /opt/zookeeper/conf/zoo.cfg
dataDir=/tmp/zookeeper -> dataDir=/data/zookeeper
(복사본을 데이터 디렉토리로 사용한다는 설정)
마지막 줄에 다음 내용 추가
server.1=192.168.245.130:2888:3888
server.2=192.168.245.140:2888:3888
server.3=192.168.245.150:2888:3888
서버이름 설정
vi /data/zookeeper/myid
1 또는 2 또는 3
-실행 또는 재시작
/opt/zookeeper/bin/zkServer.sh start /opt/zookeeper/conf/zoo.cfg
/opt/zookeeper/bin/zkServer.sh restart /opt/zookeeper/conf/zoo.cfg
-확인
/opt/zookeeper/bin/zkServer.sh status
*셋중 하나만 랜덤으로 리더가 되고, 리더가 다운되면 다른 팔로워 중에서 리더가 다시 설정된다.
kafka 클러스터 설정
-확인(주키퍼가 설치된 컴퓨터)
/opt/zookeeper/bin/zkCli.sh
ls /
1) 3대 VM 준비
hostname : kafka1, kafka2, kafka3
IP주소 : 192.168.245.100, 192.168.245.110, 192.168.245.120
2) 설치
yum -y install java-1.8.0-openjdk-devel.x86_64
wget https://downloads.apache.org/kafka/3.4.0/kafka_2.13-3.4.0.tgz
tar -xzvf kafka_2.13-3.4.0.tgz
mv kafka_2.13-3.4.0 /opt/kafka
3) 설정
vi /opt/kafka/config/server.properties
broker.id=1 또는 2 또는 3
zookeeper.connect=192.168.245.130:2181,192.168.245.140:2181,192.168.245.150:2181
listeners=PLAINTEXT://:9092
advertised.listeners=PLAINTEXT://현재 설정중인 컴퓨터의 IP:9092
4) 실행
/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties
5) 확인(주키퍼가 설치된 컴퓨터에서)
/opt/zookeeper/bin/zkCli.sh
ls /
ls /brokers/ids
[1,2,3] 이라고 출력되는 것 확인
-장애 상황 메시지 확인
토픽 목록 확인
/opt/kafka/bin/kafka-topics.sh --list --bootstrap-server 192.168.245.100:9092,192.168.245.110:9092,192.168.245.120:9092
토픽 생성(추가)
/opt/kafka/bin/kafka-topics.sh --create --bootstrap-server 192.168.245.100:9092,192.168.245.110:9092,192.168.245.120:9092 --replication-factor 3 --partitions 1 --topic test1
토픽 확인
-장애 발생 전
/opt/kafka/bin/kafka-topics.sh --bootstrap-server 192.168.245.100:9092,192.168.245.110:9092,192.168.245.120:9092 --topic test1 --describe
- 장애 발생 후(2번을 의도적으로 꺼버림)
/opt/kafka/bin/kafka-topics.sh --bootstrap-server 192.168.245.100:9092,192.168.245.110:9092,192.168.245.120:9092 --topic test1 --describe(위와 같은 명령어임)
'IT 매일매일' 카테고리의 다른 글
ELK? 1. Elasticsearch + POSTMAN (0) | 2023.03.22 |
---|---|
AWS 메시징 서비스 (0) | 2023.03.21 |
Kafka? (0) | 2023.03.21 |
AWS 서버리스(server less) 3Tier conn 2 (0) | 2023.03.16 |
AWS 서버리스(server less) 3Tier conn 1 (0) | 2023.03.16 |