saay, hi

[2] replication factor 증설 후, 기존 데이터 유지 확인 테스트 본문

kafka 테스트/cluster 테스트

[2] replication factor 증설 후, 기존 데이터 유지 확인 테스트

saay-hi 2024. 6. 27. 11:06
목적
3개의 node로 구성된 cluster  replication factor값이 1에서 3으로 증량하게 될 경우, 기존 저장된 데이터 유지 혹은 유실 여부 확인
시나리오
1. Replication factor 값이 1인 것과 3 topic생성
2. 생성 완료 후 각 topic 별로 broker id 0,1,2 log 조회
3. replication factor 값이 1 인 경우 log 열어서 조회
4. testProducer AP 수정 (기존과 다른 data를 전송하여 구별하기 위해 )
5. replication factor 3 증량 (test.json 스크립트 작성하여 적용)
6. 증량 후 log 확인
구성



Dir  위치


 

[ test 방법 ]

1. topic이 저장된 log dir로 찾아가 조회

[kafka@localhost kafka-logs]$ ls -al | grep cluster_topic_240223
[kafka@localhost kafka-logs]$ cd ../kafka-logs2/
[kafka@localhost kafka-logs2]$ ls -al | grep cluster_topci_240223
[kafka@localhost kafka-logs2]$ cd ../kafka-logs3
[kafka@localhost kafka-logs3]$ ls -al | grep cluster_topci_240223
[kafka@localhost kafka-logs3]$ ls -al | grep cluster_topic_240223
[kafka@localhost kafka-logs3]$ cd ../kafka-logs2
[kafka@localhost kafka-logs2]$ ls -al | grep cluster_topic_240223
drwxrwxr-x.  2 kafka kafka  204  2월 26 16:42 cluster_topic_240223-0
[kafka@localhost kafka-logs2]$ cd ../kafka-logs
[kafka@localhost kafka-logs]$ ls -al | grep cluster_topic_240223
[kafka@localhost kafka-logs]$

replication facor 가 1일 경우, broker 2에만 topic 저장되어있음

2. test.json 이라는 파일을 만들고 적용

{"version" : 1
"partition":[
{"topic":"{Topic_name}","partition":0,"replicas":[0,1,2]}
]}

파일 작성 후,  bin/kafka-reassign-partitions.sh --bootstrap-server localhost:9092 --reassignment-json-file {name.json} --execute 적용

3.  log 열어서 확인

<log 파일 여는방법>

1) 

$>yum install vim
$>xxd 00000000000000000000.log

2)

$>bin/kafka-dump-log.sh --deep-iteration --files /tmp/kafka-logs/{topic_name}/00000000000000000000.log --print-data-log
1번 방법으로 log 연 결과 
079a9d0: 0012 0002 ec01 0231 0231 0012 0002 ee01  .......1.1......
079a9e0: 0231 0231 0012 0002 f001 0231 0231 0012  .1.1.......1.1..
079a9f0: 0002 f201 0231 0231 0012 0002 f401 0231  .....1.1.......1
079aa00: 0231 0012 0002 f601 0231 0231 0012 0002  .1.......1.1....
079aa10: f801 0231 0231 0012 0002 fa01 0231 0231  ...1.1.......1.1
079aa20: 0012 0002 fc01 0231 0231 0012 0002 fe01  .......1.1......
079aa30: 0231 0231 0012 0002 8002 0231 0231 0012  .1.1.......1.1..
079aa40: 0002 8202 0231 0231 0012 0002 8402 0231  .....1.1.......1
079aa50: 0231 0012 0002 8602 0231 0231 0012 0002  .1.......1.1....
079aa60: 8802 0231 0231 0012 0002 8a02 0231 0231  ...1.1.......1.1
079aa70: 0012 0002 8c02 0231 0231 0012 0002 8e02  .......1.1......
079aa80: 0231 0231 0012 0002 9002 0231 0231 0012  .1.1.......1.1..
079aa90: 0002 9202 0231 0231 0012 0002 9402 0231  .....1.1.......1
079aaa0: 0231 0012 0002 9602 0231 0231 0012 0002  .1.......1.1....
079aab0: 9802 0231 0231 0012 0002 9a02 0231 0231  ...1.1.......1.1
079aac0: 0012 0002 9c02 0231 0231 0012 0002 9e02  .......1.1......
079aad0: 0231 0231 0012 0002 a002 0231 0231 0012  .1.1.......1.1..
079aae0: 0002 a202 0231 0231 0012 0002 a402 0231  .....1.1.......1
079aaf0: 0231 0012 0002 a602 0231 0231 0012 0002  .1.......1.1....
079ab00: a802 0231 0231 0012 0002 aa02 0231 0231  ...1.1.......1.1
079ab10: 0012 0002 ac02 0231 0231 0012 0002 ae02  .......1.1......
079ab20: 0231 0231 0012 0002 b002 0231 0231 0012  .1.1.......1.1..
079ab30: 0002 b202 0231 0231 0012 0002 b402 0231  .....1.1.......1
079ab40: 0231 0012 0002 b602 0231 0231 0012 0002  .1.......1.1....
079ab50: b802 0231 0231 0012 0002 ba02 0231 0231  ...1.1.......1.1
079ab60: 0012 0002 bc02 0231 0231 0012 0002 be02  .......1.1......
079ab70: 0231 0231 0012 0002 c002 0231 0231 0012  .1.1.......1.1..
079ab80: 0002 c202 0231 0231 0012 0002 c402 0231  .....1.1.......1
079ab90: 0231 0012 0002 c602 0231 0231 0012 0002  .1.......1.1....
079aba0: c802 0231 0231 0012 0002 ca02 0231 0231  ...1.1.......1.1
079abb0: 0012 0002 cc02 0231 0231 0012 0002 ce02  .......1.1......
079abc0: 0231 0231 0012 0002 d002 0231 0231 0012  .1.1.......1.1..
079abd0: 0002 d202 0231 0231 0012 0002 d402 0231  .....1.1.......1
079abe0: 0231 0012 0002 d602 0231 0231 0012 0002  .1.......1.1....
079abf0: d802 0231 0231 0012 0002 da02 0231 0231  ...1.1.......1.1
079ac00: 0012 0002 dc02 0231 0231 0012 0002 de02  .......1.1......
079ac10: 0231 0231 0012 0002 e002 0231 0231 0012  .1.1.......1.1..
079ac20: 0002 e202 0231 0231 0012 0002 e402 0231  .....1.1.......1
079ac30: 0231 0012 0002 e602 0231 0231 0012 0002  .1.......1.1....
079ac40: e802 0231 0231 0012 0002 ea02 0231 0231  ...1.1.......1.1
079ac50: 0012 0002 ec02 0231 0231 0012 0002 ee02  .......1.1......
079ac60: 0231 0231 0012 0002 f002 0231 0231 0012  .1.1.......1.1..
079ac70: 0002 f202 0231 0231 0012 0002 f402 0231  .....1.1.......1
079ac80: 0231 0012 0002 f602 0231 0231 0012 0002  .1.......1.1....
079ac90: f802 0231 0231 0012 0002 fa02 0231 0231  ...1.1.......1.1
079aca0: 0012 0002 fc02 0231 0231 0012 0002 fe02  .......1.1......
079acb0: 0231 0231 0012 0002 8003 0231 0231 0012  .1.1.......1.1..
079acc0: 0002 8203 0231 0231 0012 0002 8403 0231  .....1.1.......1
079acd0: 0231 0012 0002 8603 0231 0231 0012 0002  .1.......1.1....
079ace0: 8803 0231 0231 0012 0002 8a03 0231 0231  ...1.1.......1.1
079acf0: 0012 0002 8c03 0231 0231 0012 0002 8e03  .......1.1......
079ad00: 0231 0231 0012 0002 9003 0231 0231 0012  .1.1.......1.1..
079ad10: 0002 9203 0231 0231 0012 0002 9403 0231  .....1.1.......1
079ad20: 0231 0012 0002 9603 0231 0231 0012 0002  .1.......1.1....
079ad30: 9803 0231 0231 0012 0002 9a03 0231 0231  ...1.1.......1.1
079ad40: 0012 0002 9c03 0231 0231 0012 0002 9e03  .......1.1......
079ad50: 0231 0231 0012 0002 a003 0231 0231 0012  .1.1.......1.1..
079ad60: 0002 a203 0231 0231 0012 0002 a403 0231  .....1.1.......1
079ad70: 0231 0012 0002 a603 0231 0231 0012 0002  .1.......1.1....
079ad80: a803 0231 0231 0012 0002 aa03 0231 0231  ...1.1.......1.1
079ad90: 0012 0002 ac03 0231 0231 0012 0002 ae03  .......1.1......
079ada0: 0231 0231 0012 0002 b003 0231 0231 0012  .1.1.......1.1..
079adb0: 0002 b203 0231 0231 0012 0002 b403 0231  .....1.1.......1
079adc0: 0231 0012 0002 b603 0231 0231 0012 0002  .1.......1.1....
079add0: b803 0231 0231 0012 0002 ba03 0231 0231  ...1.1.......1.1
079ade0: 0012 0002 bc03 0231 0231 0012 0002 be03  .......1.1......
079adf0: 0231 0231 0012 0002 c003 0231 0231 0012  .1.1.......1.1..
079ae00: 0002 c203 0231 0231 0012 0002 c403 0231  .....1.1.......1
079ae10: 0231 0012 0002 c603 0231 0231 0012 0002  .1.......1.1....
079ae20: c803 0231 0231 0012 0002 ca03 0231 0231  ...1.1.......1.1
079ae30: 0012 0002 cc03 0231 0231 0012 0002 ce03  .......1.1......
079ae40: 0231 0231 0012 0002 d003 0231 0231 0012  .1.1.......1.1..
079ae50: 0002 d203 0231 0231 0012 0002 d403 0231  .....1.1.......1
079ae60: 0231 0012 0002 d603 0231 0231 0012 0002  .1.......1.1....
079ae70: d803 0231 0231 0012 0002 da03 0231 0231  ...1.1.......1.1
079ae80: 0012 0002 dc03 0231 0231 0012 0002 de03  .......1.1......
079ae90: 0231 0231 0012 0002 e003 0231 0231 0012  .1.1.......1.1..
079aea0: 0002 e203 0231 0231 0012 0002 e403 0231  .....1.1.......1
079aeb0: 0231 0012 0002 e603 0231 0231 0012 0002  .1.......1.1....
079aec0: e803 0231 0231 0012 0002 ea03 0231 0231  ...1.1.......1.1
079aed0: 0012 0002 ec03 0231 0231 0012 0002 ee03  .......1.1......
079aee0: 0231 0231 0012 0002 f003 0231 0231 0012  .1.1.......1.1..
079aef0: 0002 f203 0231 0231 0012 0002 f403 0231  .....1.1.......1
079af00: 0231 0012 0002 f603 0231 0231 0012 0002  .1.......1.1....
079af10: f803 0231 0231 0012 0002 fa03 0231 0231  ...1.1.......1.1
079af20: 0012 0002 fc03 0231 0231 0012 0002 fe03  .......1.1......
079af30: 0231 0231 0012 0002 8004 0231 0231 0012  .1.1.......1.1..
079af40: 0002 8204 0231 0231 0012 0002 8404 0231  .....1.1.......1
079af50: 0231 0012 0002 8604 0231 0231 0012 0002  .1.......1.1....
079af60: 8804 0231 0231 0012 0002 8a04 0231 0231  ...1.1.......1.1
079af70: 0012 0002 8c04 0231 0231 0012 0002 8e04  .......1.1......
079af80: 0231 0231 0012 0002 9004 0231 0231 0012  .1.1.......1.1..
079af90: 0002 9204 0231 0231 0012 0002 9404 0231  .....1.1.......1
079afa0: 0231 0012 0002 9604 0231 0231 0012 0002  .1.......1.1....
079afb0: 9804 0231 0231 0012 0002 9a04 0231 0231  ...1.1.......1.1
079afc0: 0012 0002 9c04 0231 0231 0012 0002 9e04  .......1.1......
079afd0: 0231 0231 0012 0002 a004 0231 0231 0012  .1.1.......1.1..
079afe0: 0002 a204 0231 0231 0012 0002 a404 0231  .....1.1.......1
079aff0: 0231 0012 0002 a604 0231 0231 0012 0002  .1.......1.1....
079b000: a804 0231 0231 0012 0002 aa04 0231 0231  ...1.1.......1.1
079b010: 0012 0002 ac04 0231 0231 0012 0002 ae04  .......1.1......
079b020: 0231 0231 0012 0002 b004 0231 0231 0012  .1.1.......1.1..
079b030: 0002 b204 0231 0231 0012 0002 b404 0231  .....1.1.......1
079b040: 0231 0012 0002 b604 0231 0231 0012 0002  .1.......1.1....
079b050: b804 0231 0231 0012 0002 ba04 0231 0231  ...1.1.......1.1
079b060: 0012 0002 bc04 0231 0231 0012 0002 be04  .......1.1......
079b070: 0231 0231 0012 0002 c004 0231 0231 0012  .1.1.......1.1..
079b080: 0002 c204 0231 0231 0012 0002 c404 0231  .....1.1.......1
079b090: 0231 0012 0002 c604 0231 0231 0012 0002  .1.......1.1....
079b0a0: c804 0231 0231 0012 0002 ca04 0231 0231  ...1.1.......1.1
079b0b0: 0012 0002 cc04 0231 0231 0012 0002 ce04  .......1.1......
079b0c0: 0231 0231 0012 0002 d004 0231 0231 0012  .1.1.......1.1..
079b0d0: 0002 d204 0231 0231 0012 0002 d404 0231  .....1.1.......1
079b0e0: 0231 0012 0002 d604 0231 0231 0012 0002  .1.......1.1....
079b0f0: d804 0231 0231 0012 0002 da04 0231 0231  ...1.1.......1.1
079b100: 0012 0002 dc04 0231 0231 0012 0002 de04  .......1.1......
079b110: 0231 0231 0012 0002 e004 0231 0231 0012  .1.1.......1.1..
079b120: 0002 e204 0231 0231 0012 0002 e404 0231  .....1.1.......1
079b130: 0231 0012 0002 e604 0231 0231 0012 0002  .1.......1.1....
079b140: e804 0231 0231 0012 0002 ea04 0231 0231  ...1.1.......1.1
079b150: 0012 0002 ec04 0231 0231 0012 0002 ee04  .......1.1......
079b160: 0231 0231 0012 0002 f004 0231 0231 0012  .1.1.......1.1..
079b170: 0002 f204 0231 0231 0012 0002 f404 0231  .....1.1.......1
079b180: 0231 0012 0002 f604 0231 0231 0012 0002  .1.......1.1....
079b190: f804 0231 0231 0012 0002 fa04 0231 0231  ...1.1.......1.1
079b1a0: 0012 0002 fc04 0231 0231 0012 0002 fe04  .......1.1......
079b1b0: 0231 0231 0012 0002 8005 0231 0231 0012  .1.1.......1.1..
079b1c0: 0002 8205 0231 0231 0012 0002 8405 0231  .....1.1.......1
079b1d0: 0231 0012 0002 8605 0231 0231 0012 0002  .1.......1.1....
079b1e0: 8805 0231 0231 0012 0002 8a05 0231 0231  ...1.1.......1.1
079b1f0: 0012 0002 8c05 0231 0231 0012 0002 8e05  .......1.1......
079b200: 0231 0231 0012 0002 9005 0231 0231 0012  .1.1.......1.1..
079b210: 0002 9205 0231 0231 0012 0002 9405 0231  .....1.1.......1
079b220: 0231 0012 0002 9605 0231 0231 0012 0002  .1.......1.1....
079b230: 9805 0231 0231 0012 0002 9a05 0231 0231  ...1.1.......1.1
079b240: 0012 0002 9c05 0231 0231 0012 0002 9e05  .......1.1......
079b250: 0231 0231 0012 0002 a005 0231 0231 0012  .1.1.......1.1..
079b260: 0002 a205 0231 0231 0012 0002 a405 0231  .....1.1.......1
079b270: 0231 0012 0002 a605 0231 0231 0012 0002  .1.......1.1....
079b280: a805 0231 0231 0012 0002 aa05 0231 0231  ...1.1.......1.1
079b290: 0012 0002 ac05 0231 0231 0012 0002 ae05  .......1.1......
079b2a0: 0231 0231 0012 0002 b005 0231 0231 0012  .1.1.......1.1..
079b2b0: 0002 b205 0231 0231 0012 0002 b405 0231  .....1.1.......1
079b2c0: 0231 0012 0002 b605 0231 0231 0012 0002  .1.......1.1....
079b2d0: b805 0231 0231 0012 0002 ba05 0231 0231  ...1.1.......1.1
079b2e0: 0012 0002 bc05 0231 0231 0012 0002 be05  .......1.1......
079b2f0: 0231 0231 0012 0002 c005 0231 0231 0012  .1.1.......1.1..
079b300: 0002 c205 0231 0231 0012 0002 c405 0231  .....1.1.......1
079b310: 0231 0012 0002 c605 0231 0231 0012 0002  .1.......1.1....
079b320: c805 0231 0231 0012 0002 ca05 0231 0231  ...1.1.......1.1
079b330: 0012 0002 cc05 0231 0231 0012 0002 ce05  .......1.1......
079b340: 0231 0231 0012 0002 d005 0231 0231 0012  .1.1.......1.1..
079b350: 0002 d205 0231 0231 0012 0002 d405 0231  .....1.1.......1
079b360: 0231 0012 0002 d605 0231 0231 0012 0002  .1.......1.1....
079b370: d805 0231 0231 0012 0002 da05 0231 0231  ...1.1.......1.1
079b380: 0012 0002 dc05 0231 0231 0012 0002 de05  .......1.1......
079b390: 0231 0231 0012 0002 e005 0231 0231 0012  .1.1.......1.1..
079b3a0: 0002 e205 0231 0231 0012 0002 e405 0231  .....1.1.......1
079b3b0: 0231 0012 0002 e605 0231 0231 0012 0002  .1.......1.1....
079b3c0: e805 0231 0231 0012 0002 ea05 0231 0231  ...1.1.......1.1
079b3d0: 0012 0002 ec05 0231 0231 0012 0002 ee05  .......1.1......
079b3e0: 0231 0231 0012 0002 f005 0231 0231 0012  .1.1.......1.1..
079b3f0: 0002 f205 0231 0231 0012 0002 f405 0231  .....1.1.......1
079b400: 0231 0012 0002 f605 0231 0231 0012 0002  .1.......1.1....
079b410: f805 0231 0231 0012 0002 fa05 0231 0231  ...1.1.......1.1
079b420: 0012 0002 fc05 0231 0231 0012 0002 fe05  .......1.1......
079b430: 0231 0231 0012 0002 8006 0231 0231 0012  .1.1.......1.1..
079b440: 0002 8206 0231 0231 0012 0002 8406 0231  .....1.1.......1
079b450: 0231 0012 0002 8606 0231 0231 0012 0002  .1.......1.1....
079b460: 8806 0231 0231 0012 0002 8a06 0231 0231  ...1.1.......1.1
079b470: 0012 0002 8c06 0231 0231 0012 0002 8e06  .......1.1......
079b480: 0231 0231 0012 0002 9006 0231 0231 0012  .1.1.......1.1..
079b490: 0002 9206 0231 0231 0012 0002 9406 0231  .....1.1.......1
079b4a0: 0231 0012 0002 9606 0231 0231 0012 0002  .1.......1.1....
079b4b0: 9806 0231 0231 0012 0002 9a06 0231 0231  ...1.1.......1.1
079b4c0: 0012 0002 9c06 0231 0231 0012 0002 9e06  .......1.1......
079b4d0: 0231 0231 0012 0002 a006 0231 0231 0012  .1.1.......1.1..
079b4e0: 0002 a206 0231 0231 0012 0002 a406 0231  .....1.1.......1
079b4f0: 0231 0012 0002 a606 0231 0231 0012 0002  .1.......1.1....
079b500: a806 0231 0231 0012 0002 aa06 0231 0231  ...1.1.......1.1
079b510: 0012 0002 ac06 0231 0231 0012 0002 ae06  .......1.1......
079b520: 0231 0231 0012 0002 b006 0231 0231 0012  .1.1.......1.1..
079b530: 0002 b206 0231 0231 0012 0002 b406 0231  .....1.1.......1
079b540: 0231 0012 0002 b606 0231 0231 0012 0002  .1.......1.1....
079b550: b806 0231 0231 0012 0002 ba06 0231 0231  ...1.1.......1.1
079b560: 0012 0002 bc06 0231 0231 0012 0002 be06  .......1.1......
079b570: 0231 0231 0012 0002 c006 0231 0231 0012  .1.1.......1.1..
079b580: 0002 c206 0231 0231 0012 0002 c406 0231  .....1.1.......1
079b590: 0231 0012 0002 c606 0231 0231 0012 0002  .1.......1.1....
079b5a0: c806 0231 0231 0012 0002 ca06 0231 0231  ...1.1.......1.1
079b5b0: 0012 0002 cc06 0231 0231 0012 0002 ce06  .......1.1......
079b5c0: 0231 0231 0012 0002 d006 0231 0231 0012  .1.1.......1.1..
079b5d0: 0002 d206 0231 0231 0012 0002 d406 0231  .....1.1.......1
079b5e0: 0231 0012 0002 d606 0231 0231 0012 0002  .1.......1.1....
079b5f0: d806 0231 0231 0012 0002 da06 0231 0231  ...1.1.......1.1
079b600: 0012 0002 dc06 0231 0231 0012 0002 de06  .......1.1......
079b610: 0231 0231 0012 0002 e006 0231 0231 0012  .1.1.......1.1..

 


[ 결과 ]

 기존 데이터도 남아있으며, replication factor 증량 후 데이터도 남아있음( 증량된 모든 broker에서 마찬가지)


[ 의견 ]

중요한 data일 수록, replication factor를 증량시켜 복제해두는 것을 권장. replication factor는 partitions과는 달리 증감도 가능. 따라서 필요에 의해 유연하게 변경하여 사용할 것을 권장