목적 |
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과는 달리 증감도 가능. 따라서 필요에 의해 유연하게 변경하여 사용할 것을 권장