π‘ μ΄λ² ν¬μ€ν μμλ 리λμν¬ν¬μ 볡ꡬμ λν΄ μ λ¦¬ν΄ λ³΄λλ‘ νκ² μ΅λλ€.
리λμν¬ν¬(LeaderEpoch)λ μΉ΄νμΉ΄μ νν°μ λ€μ΄ 볡ꡬ λμμ ν λ λ©μμ§μ μΌκ΄μ±μ μ μ§νκΈ° μν μ©λλ‘ μ΄μ©λ©λλ€.
리λμν¬ν¬λ 컨νΈλ‘€λ¬μ μν΄ κ΄λ¦¬λλ 32λΉνΈμ μ«μλ‘ ννλ©λλ€.
ν΄λΉ 리λμν¬ν¬ μ 보λ Replication νλ‘ν μ½μ μν΄ μ νλκ³ , μλ‘μ΄ λ¦¬λκ° λ³κ²½λ ν λ³κ²½λ 리λμ λν μ 보λ νλ‘μμκ² μ λ¬λ©λλ€.
리λμν¬ν¬λ 볡ꡬ λμ μ νμ΄μν°λ§ν¬λ₯Ό λ체νλ μλ¨μΌλ‘λ νμ©λ©λλ€.
리λμν¬ν¬ X
peter-test01 ν ν½μ 리λ νν°μ κ³Ό νλ‘μ λͺ¨λ message1 λ©μμ§ Replicationμ μ±κ³΅νμ΅λλ€.
κ·Έλ¦¬κ³ νμ΄μν°λ§ν¬λ₯Ό 1λ‘ μ¬λ¦° ν 리λ νν°μ μ΄ message2λ₯Ό μ μ₯ν ν νλ‘μ νν°μ μ΄ message2μ λν΄ Replication μμ²μ 보λ λλ€.
리λ νν°μ μ νλ‘μ νν°μ μ΄ message2μ λν Replication μμ²μ 보λκΈ° λλ¬Έμ μμ μ νμ΄μν°λ§ν¬λ₯Ό 2λ‘ μ¬λ¦½λλ€.
μ¬κΈ°μ 리λ νν°μ μ΄ μλ΅μ νκΈ° μ μ νλ‘μ΄ νν°μ μ΄ λ€μ΄λλ€κ³ κ°μ ν΄ λ³΄κ² μ΅λλ€.
μ₯μ μμ 볡ꡬλ νλ‘μλ λ΄λΆμ μΌλ‘ λ©μμ§ λ³΅κ΅¬ λμμ νκ² λ©λλ€.
νλ‘μλ μμ μ΄ κ°κ³ μλ λ©μμ§ μ€μμ μμ μ μν°λ§ν¬λ³΄λ€ λμ λ©μμ§λ€μ μ λ’°ν μ μλ λ©μμ§λ‘ νλ¨νκ³ μμ ν©λλ€.
λ°λΌμ 1λ² μ€νμ μ message2λ μμ λ©λλ€.
κ·Έλ¦¬κ³ νλ‘μλ λ€μ 리λ νν°μ μκ² 1λ² μ€νμ μ λ©μμ§μ λν κ°μ Έμ€κΈ°(fetch) μμ²μ 보λ λλ€.
μ΄ μκ° λ¦¬λμλ λΈλ‘μ»€κ° μ₯μ λ‘ λ€μ΄λλ©΄μ, νλ‘μ νν°μ μ΄ μλ‘μ΄ λ¦¬λλ‘ μΉκ²©λ©λλ€.
리λλ‘ μ μΆλ νλ‘μ νν°μ μ message2 λ©μμ§λ₯Ό κ°μ§κ³ μμ§ μκΈ° λλ¬Έμ μ΅μ’ μ μΌλ‘ message2 λ©μμ§κ° μμ€λ©λλ€.
리λμν¬ν¬ O
μκΉμ μν©μμ νλ‘μκ° λ³΅κ΅¬λ μν μ΄νμ λλ€.
리λμν¬ν¬κ° μλ μν©μμλ μμ μ νμ΄μν°λ§ν¬λ³΄λ€ λμ λ©μμ§λ₯Ό μ¦μ μμ νμ΅λλ€.
νμ§λ§ 리λμν¬ν¬λ₯Ό μ¬μ©νλ κ²½μ°μλ νμ΄μν°λ§ν¬λ³΄λ€ μμ μλ λ©μμ§λ₯Ό 무쑰건 μμ νλ κ²μ΄ μλλΌ λ¦¬λ νν°μ μκ² λ¦¬λμν¬ν¬ μμ²μ 보λ λλ€.
- νλ‘μλ 볡ꡬ λμμ νλ©΄μ 리λ νν°μ μκ² λ¦¬λμν¬ν¬ μμ²μ 보λ λλ€.
- μμ²μ λ°μ 리λ νν°μ μ 리λμν¬ν¬μ μλ΅μΌλ‘ '1λ² μ€νμ μ message2κΉμ§'λΌκ³ νλ‘μ νν°μ μκ² λ³΄λ λλ€.
- νλ‘μλ μμ μ νμ΄μν°λ§ν¬λ³΄λ€ λμ 1λ² μ€νμ μ message2λ₯Ό μμ νμ§ μκ³ λ¦¬λμ μλ΅μ νμΈν ν message2κΉμ§ μμ μ νμ΄μν°λ§ν¬λ₯Ό μν₯ μ‘°μ ν©λλ€.
리λμν¬ν¬λ₯Ό νμ©νλ κ²½μ°μλ μμ λμμ νκΈ°μ μμ 리λμν¬ν¬ μμ²κ³Ό μλ΅ κ³Όμ μ ν΅ν΄ νλ‘μμ νμ΄μν°λ§ν¬λ₯Ό μ¬λ¦΄ μ μμκ³ , λ©μμ§ μμ€μ λ°μνμ§ μμ΅λλ€.
리λμν¬ν¬ X
리λλ§ μ€νμ 1κΉμ§ μ μ₯νκ³ , νλ‘μλ μμ§ 1λ² μ€νμ λ©μμ§μ λν΄ Replication λμμ μλ£νμ§ λͺ»ν μνμμ 리λ νν°μ μ΄ λ€μ΄λλ€κ³ κ°μ ν΄ λ³΄κ² μ΅λλ€.
μ΄ κ²½μ° νλ‘μ νν°μ μ΄ μλ‘ λ¦¬λ νν°μ μΌλ‘ μ μΆλκ³ μλ‘μ΄ λ¦¬λκ° νλ‘λμλ‘λΆν° λ€μ λ©μμ§ message3μ μ λ¬λ°κ³ 1λ² μ€νμ μ μ μ₯ν ν, μμ μ νμ΄μν°λ§ν¬λ₯Ό μν₯ μ‘°μ ν©λλ€.
κ·Έλ¦¬κ³ μ₯μ κ° λ°μνλ (ꡬ) 리λ νν°μ μ 볡ꡬ κ³Όμ μ λ€μκ³Ό κ°μ΅λλ€.
- (ꡬ) 리λμλ λΈλ‘컀(νν°μ )κ° μ₯μ μμ 볡ꡬλ©λλ€.
- peter-test01 ν ν½μ 0λ² νν°μ μ μ΄λ―Έ 리λκ° μμΌλ―λ‘, 볡ꡬλ λΈλ‘컀λ νλ‘μκ° λ©λλ€.
- 리λμ λ©μμ§ μ ν©μ± νμΈμ μν΄ μμ μ΄ κ°κ³ μλ λ©μμ§λ₯Ό μμ νμ§ μμ΅λλ€.
- 리λλ νλ‘λμλ‘λΆν° message4 λ©μμ§λ₯Ό λ°μ ν μ€νμ 2μ μμΉμ μ μ₯ν©λλ€.
- νλ‘μλ μ€νμ 2μΈ message4λ₯Ό Replication νκΈ° μν΄ μ€λΉν©λλ€.
μλ‘μ΄ λ¦¬λ νν°μ μ 1λ² μ€νμ μμΉμ message3μ κ°κ³ μκ³ , νλ‘μλ 1λ² μ€νμ μμΉμ message2λ₯Ό κ°κ³ μμ΅λλ€.
리λμ νλ‘μ λ λ€ λμΌν νμ΄μν°λ§ν¬λ₯Ό λνλ΄κ³ μμ§λ§ μλ‘μ λ©μμ§λ λ€λ¦ λλ€. νμ§λ§ 리λμν¬ν¬λ₯Ό μ¬μ©νμ§ μμΌλ©΄ νμ΄μν°λ§ν¬λ§μ κ°μ§κ³ νλ¨νκΈ° λλ¬Έμ μλ‘μ λ©μμ§κ° λΆμΌμΉνλ κ²½μ°κ° λ°μν©λλ€.
리λ μν¬ν¬ O
리λμν¬ν¬λ₯Ό μ¬μ©ν κ²½μ° νλ‘μλ λ©μμ§ μΌκ΄μ±μ μν΄ 1λ² μ€νμ μΈ message2λ₯Ό μμ ν©λλ€.
(νλ‘μλ μ°κΈ° κΆνμ΄ μμΌλ―λ‘, 리λμκ² message2λ₯Ό μΆκ°ν μ μμ΅λλ€.)
리λ μν¬ν¬ μν νμΈ
linuxμ cat λͺ λ Ήμ΄λ₯Ό ν΅ν΄ 리λμν¬ν¬ μνλ₯Ό νμΈν μ μμ΅λλ€.
cat /data/kafka-logs/[partiton name]/leader-epoch-checkpoint
0
1 : νμ¬μ 리λμν¬ν¬ λ²νΈ
0 0 : 첫 λ²μ§Έ 0μ 리λμν¬ν¬ λ²νΈ, λ λ²μ§Έ 0μ μ΅μ’
μ»€λ° ν μλ‘μ΄ λ©μμ§λ₯Ό μ μ‘λ°κ² λ μ€νμ
λ²νΈ
broker 3μ μ’ λ£νκ³ λ€μ 리λμν¬ν¬λ₯Ό μ‘°νν΄ λ³΄λ©΄ λ€μκ³Ό κ°μ΄ λ³κ²½λμ΄ μμ΅λλ€.
0
2 : 리λκ° λ³κ²½λ λλ§λ€ 리λμν¬ν¬ λ²νΈκ° νλμ© μ¦κ°ν©λλ€.
0 0
1 1
μ°Έκ³ μλ£
'Kafka' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
λ©μμ§ λ‘κ·Έ μΈκ·Έλ¨ΌνΈ, λ‘κ·Έ μΈκ·Έλ¨ΌνΈ (0) | 2023.05.07 |
---|---|
컨νΈλ‘€λ¬ (0) | 2023.05.01 |
ISR(In Sync Replica) (0) | 2023.05.01 |
Replication (0) | 2023.05.01 |
λ©ν° λ Έλ μΉ΄νμΉ΄ - 2 (0) | 2023.05.01 |
λκΈ