
How to Make a Kafka Cluster with 3 Brokers: Understand Replication Factor
Engineering Digest
Overview
рдпрд╣ рд╡реАрдбрд┐рдпреЛ Apache Kafka рдХреНрд▓рд╕реНрдЯрд░ рдмрдирд╛рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдмрддрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рддреАрди рдмреНрд░реЛрдХрд░ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдпрд╣ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдХреИрд╕реЗ рд╕рд░реНрд╡рд░ рдкреНрд░реЙрдкрд░реНрдЯреАрдЬрд╝ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдХреЗ, рдпреВрдирд┐рдХ рдмреНрд░реЛрдХрд░ рдЖрдИрдбреА, рдкреЛрд░реНрдЯ рдФрд░ рд▓реЙрдЧ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рд╕реЗрдЯ рдХрд░рдХреЗ рдХрдИ рдмреНрд░реЛрдХрд░ рд╢реБрд░реВ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рд╡реАрдбрд┐рдпреЛ рдпрд╣ рднреА рд╕рдордЭрд╛рддрд╛ рд╣реИ рдХрд┐ рд░рд┐рдкреНрд▓рд┐рдХреЗрд╢рди рдлреИрдХреНрдЯрд░ рдХреНрдпрд╛ рд╣реИ рдФрд░ рдпрд╣ рдлреЙрд▓реНрдЯ рдЯреЙрд▓рд░реЗрдВрд╕ рдХреЗ рд▓рд┐рдП рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдЯреЙрдкрд┐рдХ рдХреЗ рдбреЗрдЯрд╛ рдХреА рдХрдИ рдХреЙрдкреАрдЬрд╝ рдмрдирд╛рдИ рдЬрд╛рддреА рд╣реИрдВред рдЕрдВрдд рдореЗрдВ, рдпрд╣ рдПрдХ Kafka рдЯреЙрдкрд┐рдХ рдмрдирд╛рдиреЗ, рдкреНрд░реЛрдбреНрдпреВрд╕рд░ рд╕реЗ рдореИрд╕реЗрдЬ рднреЗрдЬрдиреЗ рдФрд░ рдХрдВрдЬреНрдпреВрдорд░ рд╕реЗ рдЙрдиреНрд╣реЗрдВ рдкрдврд╝рдиреЗ рдХрд╛ рдПрдХ рдкреНрд░реИрдХреНрдЯрд┐рдХрд▓ рдбреЗрдореЛ рджрд┐рдЦрд╛рддрд╛ рд╣реИред
Save this permanently with flashcards, quizzes, and AI chat
Chapters
- Kafka рдХреНрд▓рд╕реНрдЯрд░ рдХрдИ Kafka рд╕рд░реНрд╡рд░ (рдмреНрд░реЛрдХрд░) рдХрд╛ рдПрдХ рд╕рдореВрд╣ рд╣реЛрддрд╛ рд╣реИред
- рдПрдХ Kafka рдмреНрд░реЛрдХрд░ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП `server.properties` рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
- `server.properties` рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдмреНрд░реЛрдХрд░ рдЖрдИрдбреА, рдкреЛрд░реНрдЯ рдирдВрдмрд░ рдФрд░ рд▓реЙрдЧ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдЬреИрд╕реА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╣реЛрддреА рд╣реИрдВред
- рдПрдХ рдХреНрд▓рд╕реНрдЯрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдХрдИ `server.properties` рдлрд╝рд╛рдЗрд▓реЗрдВ рдмрдирд╛рдиреА рд╣реЛрдВрдЧреА, рдкреНрд░рддреНрдпреЗрдХ рдмреНрд░реЛрдХрд░ рдХреЗ рд▓рд┐рдП рдПрдХред
- рдкреНрд░рддреНрдпреЗрдХ рдмреНрд░реЛрдХрд░ рдХреЗ рд▓рд┐рдП рдмреНрд░реЛрдХрд░ рдЖрдИрдбреА, рдкреЛрд░реНрдЯ рдирдВрдмрд░ рдФрд░ рд▓реЙрдЧ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдпреВрдирд┐рдХ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред
- рд╕рднреА рдмреНрд░реЛрдХрд░ рдПрдХ рд╣реА ZooKeeper рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рд╡реЗ рдПрдХ рд╣реА рдХреНрд▓рд╕реНрдЯрд░ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдорд╛рдиреЗ рдЬрд╛рддреЗ рд╣реИрдВред
- Kafka рдореЗрдВ, рдЯреЙрдкрд┐рдХ рдбреЗрдЯрд╛ рдХреЛ рд╕реНрдЯреЛрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓реЙрдЬрд┐рдХрд▓ рдХреИрдЯреЗрдЧрд░реА рд╣реИрдВред
- рд░рд┐рдкреНрд▓рд┐рдХреЗрд╢рди рдлреИрдХреНрдЯрд░ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рдЯреЙрдкрд┐рдХ рдХреЗ рдбреЗрдЯрд╛ рдХреА рдХрд┐рддрдиреА рдХреЙрдкреАрдЬрд╝ рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рд░рдЦреА рдЬрд╛рдПрдВрдЧреАред
- рдЙрдЪреНрдЪ рд░рд┐рдкреНрд▓рд┐рдХреЗрд╢рди рдлреИрдХреНрдЯрд░ рдлреЙрд▓реНрдЯ рдЯреЙрд▓рд░реЗрдВрд╕ рдмрдврд╝рд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрджрд┐ рдПрдХ рдмреНрд░реЛрдХрд░ рдбрд╛рдЙрди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдбреЗрдЯрд╛ рдЙрдкрд▓рдмреНрдз рд░рд╣рддрд╛ рд╣реИред
- рдкреНрд░рддреНрдпреЗрдХ рдкрд╛рд░реНрдЯреАрд╢рди рдХреЗ рд▓рд┐рдП рдПрдХ рд▓реАрдбрд░ рдмреНрд░реЛрдХрд░ рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рдЙрд╕ рдкрд╛рд░реНрдЯреАрд╢рди рдХреЗ рд▓рд┐рдП рд╕рднреА рд░реАрдб рдФрд░ рд░рд╛рдЗрдЯ рд░рд┐рдХреНрд╡реЗрд╕реНрдЯ рдХреЛ рд╣реИрдВрдбрд▓ рдХрд░рддрд╛ рд╣реИред
- рдЬрдм рдкреНрд░реЛрдбреНрдпреВрд╕рд░ рдбреЗрдЯрд╛ рднреЗрдЬрддрд╛ рд╣реИ, рддреЛ рд╡рд╣ рдкрд╣рд▓реЗ рд▓реАрдбрд░ рдмреНрд░реЛрдХрд░ рдХреЛ рдЬрд╛рддрд╛ рд╣реИред
- рд▓реАрдбрд░ рдмреНрд░реЛрдХрд░ рдлрд┐рд░ рдбреЗрдЯрд╛ рдХреЛ рдЕрдиреНрдп рд░реЗрдкреНрд▓рд┐рдХрд╛ рдмреНрд░реЛрдХрд░реНрд╕ рдкрд░ рд░реЗрдкреНрд▓рд┐рдХреЗрдЯ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдлреЙрд▓реНрдЯ рдЯреЙрд▓рд░реЗрдВрд╕ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реЛрддрд╛ рд╣реИред
- Kafka рдХрдорд╛рдВрдб-рд▓рд╛рдЗрди рдЯреВрд▓реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЯреЙрдкрд┐рдХ рдмрдирд╛рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред
- рдкреНрд░реЛрдбреНрдпреВрд╕рд░ рдЯреЙрдкрд┐рдХ рдкрд░ рдореИрд╕реЗрдЬ рднреЗрдЬрддреЗ рд╣реИрдВ, рдФрд░ рдХрдВрдЬреНрдпреВрдорд░ рдЙрди рдореИрд╕реЗрдЬ рдХреЛ рдкрдврд╝рддреЗ рд╣реИрдВред
- рдирдП Kafka рд╡рд░реНрдЬрди рдХреЗ рд▓рд┐рдП, `bootstrap-server` рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмреНрд░реЛрдХрд░реНрд╕ рдХреЛ рд╕реНрдкреЗрд╕рд┐рдлрд╛рдИ рдХрд░рдирд╛ рд╣реЛрддрд╛ рд╣реИред
Key takeaways
- Kafka рдХреНрд▓рд╕реНрдЯрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреНрд░рддреНрдпреЗрдХ рдмреНрд░реЛрдХрд░ рдХреЗ рд▓рд┐рдП рдпреВрдирд┐рдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди (рдЖрдИрдбреА, рдкреЛрд░реНрдЯ, рд▓реЙрдЧреНрд╕) рдХреЗ рд╕рд╛рде `server.properties` рдлрд╝рд╛рдЗрд▓реЗрдВ рд╕реЗрдЯ рдЕрдк рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред
- рд░рд┐рдкреНрд▓рд┐рдХреЗрд╢рди рдлреИрдХреНрдЯрд░ рдбреЗрдЯрд╛ рдХреА рдбреНрдпреВрд░реЗрдмрд┐рд▓рд┐рдЯреА рдФрд░ рдлреЙрд▓реНрдЯ рдЯреЙрд▓рд░реЗрдВрд╕ рдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ; рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдбреЗрдЯрд╛ рдХреА рдХрд┐рддрдиреА рдХреЙрдкреАрдЬрд╝ рд░рдЦреА рдЬрд╛рдПрдВрдЧреАред
- Kafka рдореЗрдВ, рд▓реАрдбрд░ рдЗрд▓реЗрдХреНрд╢рди рдкрд╛рд░реНрдЯреАрд╢рди рд▓реЗрд╡рд▓ рдкрд░ рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рд▓реАрдбрд░ рдмреНрд░реЛрдХрд░ рд╣реА рдбреЗрдЯрд╛ рд░рд╛рдЗрдЯреНрд╕ рдХреЛ рд╣реИрдВрдбрд▓ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд░реЗрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдореИрдиреЗрдЬ рдХрд░рддрд╛ рд╣реИред
- рдПрдХ Kafka рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ, рд╕рднреА рдмреНрд░реЛрдХрд░ рдПрдХ рд╣реА ZooKeeper рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрдкрд╕ рдореЗрдВ рд╕рдордиреНрд╡рдп рдХрд░рддреЗ рд╣реИрдВред
- Kafka рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб-рд▓рд╛рдЗрди рдЯреВрд▓реНрд╕ (рдЬреИрд╕реЗ рдЯреЙрдкрд┐рдХ рдмрдирд╛рдирд╛, рдкреНрд░реЛрдбреНрдпреВрд╕рд░, рдХрдВрдЬреНрдпреВрдорд░) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдПрдХ рдЖрд╡рд╢реНрдпрдХ рд╕реНрдХрд┐рд▓ рд╣реИред
- рдирдП Kafka рд╡рд░реНрдЬрди рдореЗрдВ, рдмреНрд░реЛрдХрд░реНрд╕ рдХреЛ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП `bootstrap-server` рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
Key terms
Test your understanding
- Kafka рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдмреНрд░реЛрдХрд░ рдХреЗ рд▓рд┐рдП `server.properties` рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреМрди рд╕реА рддреАрди рдореБрдЦреНрдп рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдпреВрдирд┐рдХ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП рдФрд░ рдХреНрдпреЛрдВ?
- рд░рд┐рдкреНрд▓рд┐рдХреЗрд╢рди рдлреИрдХреНрдЯрд░ 3 рдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ рдФрд░ рдпрд╣ Kafka рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рдлреЙрд▓реНрдЯ рдЯреЙрд▓рд░реЗрдВрд╕ рдХреЛ рдХреИрд╕реЗ рдмрдврд╝рд╛рддрд╛ рд╣реИ?
- Kafka рдореЗрдВ рд▓реАрдбрд░ рдЗрд▓реЗрдХреНрд╢рди рдХрд┐рд╕ рд▓реЗрд╡рд▓ рдкрд░ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рд▓реАрдбрд░ рдмреНрд░реЛрдХрд░ рдХреА рдХреНрдпрд╛ рднреВрдорд┐рдХрд╛ рд╣реЛрддреА рд╣реИ?
- рдПрдХ Kafka рдЯреЙрдкрд┐рдХ рдмрдирд╛рдиреЗ рдФрд░ рдЙрд╕ рдкрд░ рдореИрд╕реЗрдЬ рднреЗрдЬрдиреЗ рдФрд░ рдкрдврд╝рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдЕрдкрдиреЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ рд╕рдордЭрд╛рдПрдВред
- рдирдП Kafka рд╡рд░реНрдЬрди рдореЗрдВ рдмреНрд░реЛрдХрд░реНрд╕ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕ рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдХреНрдпреЛрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ?