Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds
Apache Kafka 1.0 Cookbook
Apache Kafka 1.0 Cookbook

Apache Kafka 1.0 Cookbook: Over 100 practical recipes on using distributed enterprise messaging to handle real-time data

Arrow left icon
Profile Icon Estrada Profile Icon Zinoviev
Arrow right icon
€18.99 per month
Full star icon Full star icon Full star icon Empty star icon Empty star icon 3 (2 Ratings)
Paperback Dec 2017 250 pages 1st Edition
eBook
€15.99 €23.99
Paperback
€29.99
Subscription
Free Trial
Renews at €18.99p/m
Arrow left icon
Profile Icon Estrada Profile Icon Zinoviev
Arrow right icon
€18.99 per month
Full star icon Full star icon Full star icon Empty star icon Empty star icon 3 (2 Ratings)
Paperback Dec 2017 250 pages 1st Edition
eBook
€15.99 €23.99
Paperback
€29.99
Subscription
Free Trial
Renews at €18.99p/m
eBook
€15.99 €23.99
Paperback
€29.99
Subscription
Free Trial
Renews at €18.99p/m

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing
Table of content icon View table of contents Preview book icon Preview Book

Apache Kafka 1.0 Cookbook

Kafka Clusters

In this chapter, we will cover the following topics:

  • Configuring a single-node single-broker cluster – SNSB
  • SNSB – creating a topic, producer, and consumer
  • Configuring a single-node multiple-broker cluster – SNMB
  • SNMB – creating a topic, producer, and consumer
  • Configuring a multiple-node multiple-broker cluster – MNMB

Introduction

In the previous chapter, we explained how to program with the Apache Kafka publisher-subscriber messaging system. In Apache Kafka there are three types of clusters:

  • Single-node single-broker
  • Single-node multiple-broker
  • Multiple-node multiple-broker cluster

The following four recipes show how to run Apache Kafka in these clusters.

Configuring a single-node single-broker cluster – SNSB

The first cluster configuration is single-node single-broker (SNSB). This cluster is very useful when a single point of entry is needed. Yes, its architecture resembles the singleton design pattern. A SNSB cluster usually satisfies three requirements:

  • Controls concurrent access to a unique shared broker
  • Access to the broker is requested from multiple, disparate producers
  • There can be only one broker

If the proposed design has only one or two of these requirements, a redesign is almost always the correct option.

Sometimes, the single broker could become a bottleneck or a single point of failure. But it is useful when a single point of communication is needed.

Getting ready

...

SNSB – creating a topic, producer, and consumer

The SNSB Kafka cluster is running; now let's create topics, producer, and consumer.

Getting ready

We need the previous recipe executed:

  • Kafka already installed
  • ZooKeeper up and running
  • A Kafka server up and running
  • Now, go to the Kafka installation directory (/usr/local/kafka/ for macOS users and /opt/kafka/ for Linux users):
    > cd /usr/local/kafka  

How to do it...

The following steps will show you how to create an SNSB topic, producer, and consumer.

...

Configuring a single-node multiple-broker cluster – SNMB

The second cluster configuration is single-node multiple-broker (SNMB). This cluster is used when there is just one node but inner redundancy is needed.

When a topic is created in Kafka, the system determines how each replica of a partition is mapped to each broker. In general, Kafka tries to spread the replicas across all available brokers.

The messages are first sent to the first replica of a partition (to the current broker leader of that partition) before they are replicated to the remaining brokers.

The producers may choose from different strategies for sending messages (synchronous or asynchronous mode). Producers discover the available brokers in a cluster and the partitions on each (all this by registering watchers in ZooKeeper).

In practice, some of the high volume topics are configured with more than one...

SNMB – creating a topic, producer, and consumer

The SNMB Kafka cluster is running; now let's create topics, producer, and consumer.

Getting ready

We need the previous recipe executed:

  • Kafka already installed
  • ZooKeeper up and running
  • A Kafka server up and running
  • Now, go to the Kafka installation directory (/usr/local/kafka/ for macOS users and /opt/kafka/ for Linux users):
    > cd /usr/local/kafka  

How to do it...

The following steps will show you how to create an SNMB topic, producer, and consumer

...

Configuring a multiple-node multiple-broker cluster – MNMB

Finally, the third cluster configuration is multiple-node multiple-broker (MNMB). This cluster is used when there are several nodes and one or many brokers per node.

Getting ready

Go to the Kafka installation directory (/usr/local/kafka/ for macOS users and /opt/kafka/ for Linux users):

> cd /usr/local/kafka  

How to do it...

The following diagram shows an example MNMB cluster:

Here we are presented with the real power of the cluster. In this cluster, Kafka should be installed on every machine in...

Left arrow icon Right arrow icon
Download code icon Download Code

Key benefits

  • • Use Kafka 1.0 features such as Confluent platforms and Kafka streams to build efficient streaming data applications to handle and process your data
  • • Integrate Kafka with other Big Data tools such as Apache Hadoop, Apache Spark, and more
  • • Hands-on recipes to help you design, operate, maintain, and secure your Apache Kafka cluster with ease

Description

Apache Kafka provides a unified, high-throughput, low-latency platform to handle real-time data feeds. This book will show you how to use Kafka efficiently, and contains practical solutions to the common problems that developers and administrators usually face while working with it. This practical guide contains easy-to-follow recipes to help you set up, configure, and use Apache Kafka in the best possible manner. You will use Apache Kafka Consumers and Producers to build effective real-time streaming applications. The book covers the recently released Kafka version 1.0, the Confluent Platform and Kafka Streams. The programming aspect covered in the book will teach you how to perform important tasks such as message validation, enrichment and composition.Recipes focusing on optimizing the performance of your Kafka cluster, and integrate Kafka with a variety of third-party tools such as Apache Hadoop, Apache Spark, and Elasticsearch will help ease your day to day collaboration with Kafka greatly. Finally, we cover tasks related to monitoring and securing your Apache Kafka cluster using tools such as Ganglia and Graphite. If you're looking to become the go-to person in your organization when it comes to working with Apache Kafka, this book is the only resource you need to have.

Who is this book for?

This book is for developers and Kafka administrators who are looking for quick, practical solutions to problems encountered while operating, managing or monitoring Apache Kafka. If you are a developer, some knowledge of Scala or Java will help, while for administrators, some working knowledge of Kafka will be useful.

What you will learn

  • -Install and configure Apache Kafka 1.0 to get optimal performance
  • -Create and configure Kafka Producers and Consumers
  • -Operate your Kafka clusters efficiently by implementing the mirroring technique
  • -Work with the new Confluent platform and Kafka streams, and achieve high availability with Kafka
  • -Monitor Kafka using tools such as Graphite and Ganglia
  • -Integrate Kafka with third-party tools such as Elasticsearch, Logstash, Apache Hadoop, Apache Spark, and more

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Dec 22, 2017
Length: 250 pages
Edition : 1st
Language : English
ISBN-13 : 9781787286849
Vendor :
Apache
Category :
Languages :
Concepts :
Tools :

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing

Product Details

Publication date : Dec 22, 2017
Length: 250 pages
Edition : 1st
Language : English
ISBN-13 : 9781787286849
Vendor :
Apache
Category :
Languages :
Concepts :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
€18.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
€189.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just €5 each
Feature tick icon Exclusive print discounts
€264.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just €5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total 96.97
Building Data Streaming Applications with Apache Kafka
€36.99
Learning Elastic Stack 6.0
€29.99
Apache Kafka 1.0 Cookbook
€29.99
Total 96.97 Stars icon

Table of Contents

10 Chapters
Configuring Kafka Chevron down icon Chevron up icon
Kafka Clusters Chevron down icon Chevron up icon
Message Validation Chevron down icon Chevron up icon
Message Enrichment Chevron down icon Chevron up icon
The Confluent Platform Chevron down icon Chevron up icon
Kafka Streams Chevron down icon Chevron up icon
Managing Kafka Chevron down icon Chevron up icon
Operating Kafka Chevron down icon Chevron up icon
Monitoring and Security Chevron down icon Chevron up icon
Third-Party Tool Integration Chevron down icon Chevron up icon

Customer reviews

Rating distribution
Full star icon Full star icon Full star icon Empty star icon Empty star icon 3
(2 Ratings)
5 star 0%
4 star 50%
3 star 0%
2 star 50%
1 star 0%
Miguel Angel Enriquez Lopez Feb 16, 2018
Full star icon Full star icon Full star icon Full star icon Empty star icon 4
Recently at work, we had to start using Kafka for processing events from different sources. As a DevOps engineer, I had to set up many environments with Kafka topics available for the applications we are using. I can say that I got this book and I have been checking it almost daily for a quick reference to do my work and it has proven to be very useful to get started quickly and then come back for more advanced topics.Surprisingly this book covers many recipes that I had to copy almost verbatim which is a proof of the quality of the book in the sense that the recipes "just work."Nonetheless, while I with mostly with Docker containers or Hashicorp Packer to create templates of servers, some parts of the book require executing "manual" steps such as go to a particular URL and download the Kafka/Scala binaries. While I understand that it is easier just to write the step as "Go to this URL and get the latest version of X", some steps could have been written better with commands to get the binary from the command line instead of that. Nevertheless, this is not a concern given the overall excellence of the book.
Amazon Verified review Amazon
Gourav Jul 15, 2022
Full star icon Full star icon Empty star icon Empty star icon Empty star icon 2
the content given in the book is very little , it doesnt describe the Kafka in detail , why that feature is used for specific program or what program is doing.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is included in a Packt subscription? Chevron down icon Chevron up icon

A subscription provides you with full access to view all Packt and licnesed content online, this includes exclusive access to Early Access titles. Depending on the tier chosen you can also earn credits and discounts to use for owning content

How can I cancel my subscription? Chevron down icon Chevron up icon

To cancel your subscription with us simply go to the account page - found in the top right of the page or at https://subscription.packtpub.com/my-account/subscription - From here you will see the ‘cancel subscription’ button in the grey box with your subscription information in.

What are credits? Chevron down icon Chevron up icon

Credits can be earned from reading 40 section of any title within the payment cycle - a month starting from the day of subscription payment. You also earn a Credit every month if you subscribe to our annual or 18 month plans. Credits can be used to buy books DRM free, the same way that you would pay for a book. Your credits can be found in the subscription homepage - subscription.packtpub.com - clicking on ‘the my’ library dropdown and selecting ‘credits’.

What happens if an Early Access Course is cancelled? Chevron down icon Chevron up icon

Projects are rarely cancelled, but sometimes it's unavoidable. If an Early Access course is cancelled or excessively delayed, you can exchange your purchase for another course. For further details, please contact us here.

Where can I send feedback about an Early Access title? Chevron down icon Chevron up icon

If you have any feedback about the product you're reading, or Early Access in general, then please fill out a contact form here and we'll make sure the feedback gets to the right team. 

Can I download the code files for Early Access titles? Chevron down icon Chevron up icon

We try to ensure that all books in Early Access have code available to use, download, and fork on GitHub. This helps us be more agile in the development of the book, and helps keep the often changing code base of new versions and new technologies as up to date as possible. Unfortunately, however, there will be rare cases when it is not possible for us to have downloadable code samples available until publication.

When we publish the book, the code files will also be available to download from the Packt website.

How accurate is the publication date? Chevron down icon Chevron up icon

The publication date is as accurate as we can be at any point in the project. Unfortunately, delays can happen. Often those delays are out of our control, such as changes to the technology code base or delays in the tech release. We do our best to give you an accurate estimate of the publication date at any given time, and as more chapters are delivered, the more accurate the delivery date will become.

How will I know when new chapters are ready? Chevron down icon Chevron up icon

We'll let you know every time there has been an update to a course that you've bought in Early Access. You'll get an email to let you know there has been a new chapter, or a change to a previous chapter. The new chapters are automatically added to your account, so you can also check back there any time you're ready and download or read them online.

I am a Packt subscriber, do I get Early Access? Chevron down icon Chevron up icon

Yes, all Early Access content is fully available through your subscription. You will need to have a paid for or active trial subscription in order to access all titles.

How is Early Access delivered? Chevron down icon Chevron up icon

Early Access is currently only available as a PDF or through our online reader. As we make changes or add new chapters, the files in your Packt account will be updated so you can download them again or view them online immediately.

How do I buy Early Access content? Chevron down icon Chevron up icon

Early Access is a way of us getting our content to you quicker, but the method of buying the Early Access course is still the same. Just find the course you want to buy, go through the check-out steps, and you’ll get a confirmation email from us with information and a link to the relevant Early Access courses.

What is Early Access? Chevron down icon Chevron up icon

Keeping up to date with the latest technology is difficult; new versions, new frameworks, new techniques. This feature gives you a head-start to our content, as it's being created. With Early Access you'll receive each chapter as it's written, and get regular updates throughout the product's development, as well as the final course as soon as it's ready.We created Early Access as a means of giving you the information you need, as soon as it's available. As we go through the process of developing a course, 99% of it can be ready but we can't publish until that last 1% falls in to place. Early Access helps to unlock the potential of our content early, to help you start your learning when you need it most. You not only get access to every chapter as it's delivered, edited, and updated, but you'll also get the finalized, DRM-free product to download in any format you want when it's published. As a member of Packt, you'll also be eligible for our exclusive offers, including a free course every day, and discounts on new and popular titles.