{"id":65356,"date":"2020-08-31T15:46:12","date_gmt":"2020-08-31T15:46:12","guid":{"rendered":"https:\/\/www.baeldung.com\/?p=86420"},"modified":"2020-08-31T15:46:12","modified_gmt":"2020-08-31T15:46:12","slug":"listing-kafka-consumers","status":"publish","type":"post","link":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/2020\/08\/31\/listing-kafka-consumers\/","title":{"rendered":"Listing Kafka Consumers"},"content":{"rendered":"<p class=\"syndicated-attribution\"><meta name= \\\"keywords \\\" content= \\\"\u96fb\u5b50\u8a08\u7b97\u6a5f, \u6559\u80b2, IT \u96fb\u8166\u73ed,\u96fb\u8166\u88dc\u7fd2\uff0c \u96fb\u8166\u73ed\uff0c \u5bb6\u6559\uff0c \u79c1\u4eba\u8001\u5e2b\uff0c \u8cc7\u8a0a\u6280\u8853\uff0c \u7a0b\u5e8f\u8a2d\u8a08\uff0c \u96fb\u5b50\u8a08\u7b97\u6a5f\uff0c \u904a\u6232\uff0c \u860b\u679c\uff0c \u96fb\u5f71\uff0c \u8a08\u7b97\u6a5f\uff0c\u7de8\u78bc\uff0c Java\uff0c C\/C++\uff0c JavaScript\uff0c PHP\uff0c HTML\uff0c CSS\uff0c MySQL\uff0c mobile\uff0c Android\uff0c \u52d5\u6f2b\uff0c Python\uff0c teacher\uff0c \u88dc\u7fd2\uff0c \u96fb\u8166\u88dc\u7fd2 \u8cc7\u8a0a, \u7535\u5b50\u8ba1\u7b97\u673a, IT ,Game, apple, movie, Computer,student,Java,\u6559\u80b2, ,\u5b66\u751f, \u5b66\u4e60, learn, \u6559\u5b66,  Android, apple,anime, animation, \u4fe1\u606f\u6280\u672f, \u7a0b\u5e8f\u8bbe\u8ba1, \u79fb\u52a8\u7535\u8bdd, \u8cc7\u8a0a\u79d1\u6280,Game, Jeu, Juego,Call Of Duty ,\u4f7f\u547d\u53ec\u559a , \u6e38\u620f, \u7535\u5b50\u6e38\u620f,, \u591a\u4eba\u7535\u5b50\u6e38\u620f, \u7f51\u7edc\u6e38\u620f\uff0conline\uff0conline game, \u624b\u673a\u6e38\u620f, mobile \\\"><\/p>\n<h2 data-id=\"overview\">1. Overview<\/h2>\n<div class=\"bd-anchor\" id=\"overview\"><\/div>\n<p>In this quick tutorial, we&#8217;ll learn how to list Kafka consumer groups and also take a peek at their details.<\/p>\n<h2 data-id=\"prerequisites\">2. Prerequisites<\/h2>\n<div class=\"bd-anchor\" id=\"prerequisites\"><\/div>\n<p>To run the examples in this tutorial, we&#8217;ll need a Kafka cluster to send our requests to. This can be a full-blown Kafka cluster running on a production environment, or it can be a test-specific, <a href=\"https:\/\/feeds.feedblitz.com\/~\/t\/0\/0\/baeldung\/~https:\/\/www.baeldung.com\/devops\/kafka-list-topics#setting-up-kafka\">single-instance Kafka cluster<\/a>.<\/p>\n<p>For the sake of simplicity, we&#8217;re going to assume that we have a single-node cluster listening to port 9092 with a <a href=\"https:\/\/feeds.feedblitz.com\/~\/t\/0\/0\/baeldung\/~https:\/\/www.baeldung.com\/java-zookeeper\">Zookeeper<\/a> instance listening to the 2181 port on the localhost.<\/p>\n<p>Furthermore, note that we&#8217;re running all example commands from the Kafka installation directory.<\/p>\n<h2 data-id=\"adding-topics-and-consumers\">3. Adding Topics and Consumers<\/h2>\n<div class=\"bd-anchor\" id=\"adding-topics-and-consumers\"><\/div>\n<p>Before listing the consumers on a particular Kafka cluster, let&#8217;s <a href=\"https:\/\/feeds.feedblitz.com\/~\/t\/0\/0\/baeldung\/~https:\/\/kafka.apache.org\/documentation\/#basic_ops_add_topic\">add a few topics<\/a> first using the <em>kafka-topics.sh<\/em> shell script:<\/p>\n<pre><code class=\"language-bash\">$ .\/bin\/kafka-topics.sh --create --topic users.registrations --replication-factor 1 \\ \r\n  --partitions 2 --zookeeper localhost:2181\r\n$ .\/bin\/kafka-topics.sh --create --topic users.verfications --replication-factor 1 \\ \r\n  --partitions 2 --zookeeper localhost:2181<\/code><\/pre>\n<p>Now, we need to <strong>add a few consumer groups<\/strong>, too. The simplest way is to <strong>use the console consumer bundled in Kafka distributions<\/strong>:<\/p>\n<pre><code class=\"language-bash\">$ .\/bin\/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic users.registrations --group new-user\r\n$ .\/bin\/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic users.registrations --group new-user<\/code><\/pre>\n<p>Here, we&#8217;ve used the <em>kafka-console-consumer.sh\u00a0<\/em>shell script to add two consumers listening to the same topic. <strong>These consumers are in the same group, so the messages from topic partitions will be spread across the members of the group<\/strong>. This way we can implement the <a href=\"https:\/\/feeds.feedblitz.com\/~\/t\/0\/0\/baeldung\/~https:\/\/www.enterpriseintegrationpatterns.com\/patterns\/messaging\/CompetingConsumers.html\">competing consumers<\/a>\u00a0pattern in Kafka.<\/p>\n<p>Let&#8217;s consume from another topic, too:<\/p>\n<pre><code class=\"language-bash\">$ .\/bin\/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic users.verifications<\/code><\/pre>\n<p>Since we didn&#8217;t specify a group for the consumer, the <strong>console consumer created a new group, with itself as the lone member<\/strong>.<\/p>\n<p>We&#8217;ll see this new group in the next section, where we&#8217;ll learn how to list consumers and consumer groups on the Kafka cluster.<\/p>\n<h2 data-id=\"listing-consumers\">4. Listing Consumers<\/h2>\n<div class=\"bd-anchor\" id=\"listing-consumers\"><\/div>\n<p>To list the consumers in the Kafka cluster, we can use the <em>kafka-consumer-groups.sh\u00a0<\/em>shell script. <strong>The\u00a0<em>&#8211;list\u00a0<\/em>option will list all the consumer groups<\/strong>:<\/p>\n<pre><code class=\"language-bash\">$ .\/bin\/kafka-consumer-groups.sh --list --bootstrap-server localhost:9092\r\nnew-user\r\nconsole-consumer-40123<\/code><\/pre>\n<p>In addition to the\u00a0<em>&#8211;list\u00a0<\/em>option, we&#8217;re passing the\u00a0<em>&#8211;bootstrap-server\u00a0<\/em>option to specify the Kafka cluster address. We have three individual consumers in two groups, so the result contains only two groups.<\/p>\n<p><strong>To see the members of the first group<\/strong>, we can use the\u00a0<em>&#8220;&#8211;group &lt;name&gt; &#8211;describe &#8211;members&#8221; <\/em>options:<\/p>\n<pre><code class=\"language-bash\">$ .\/bin\/kafka-consumer-groups.sh --describe --group new-user --members --bootstrap-server localhost:9092\r\nGROUP           CONSUMER-ID                    HOST            CLIENT-ID            #PARTITIONS\r\nnew-user        consumer-new-user-1-b90...     \/127.0.0.1      consumer-new-user-1  1\r\nnew-user        consumer-new-user-1-af8...     \/127.0.0.1      consumer-new-user-1  1<\/code><\/pre>\n<p>Here, we can see that there are two individual consumers in our <em>new-user<\/em> group, each consuming from one partition.<\/p>\n<p>If we omit the <em>&#8211;members\u00a0<\/em>option, it&#8217;ll list the consumers in the group, the partition number each is listening to, and their offsets:<\/p>\n<pre><code class=\"language-bash\">$ .\/bin\/kafka-consumer-groups.sh --describe --group new-user --bootstrap-server localhost:9092\r\nGROUP           TOPIC                       PARTITION  CURRENT-OFFSET  LOG-END-OFFSET  LAG          \r\nnew-user        users.registrations         1          3               3               0              \r\nnew-user        users.registrations         0          5               5               0            <\/code><\/pre>\n<p>One more thing to note is that the cluster or bootstrap server address is required for this command. <strong>If we omit the cluster connection information, the shell script will throw an error<\/strong>:<\/p>\n<pre><code class=\"language-bash\">$ .\/bin\/kafka-consumer-groups.sh --list\r\nMissing required argument \"[bootstrap-server]\"\r\n\/\/ truncated<\/code><\/pre>\n<h2 data-id=\"conclusion\">5. Conclusion<\/h2>\n<div class=\"bd-anchor\" id=\"conclusion\"><\/div>\n<p>In this short tutorial, we added a few Kafka topics and consumer groups at first. Then, we learned how to list consumer groups and view the details for each group.<\/p>\n<p>The post <a href=\"https:\/\/feeds.feedblitz.com\/~\/t\/0\/0\/baeldung\/~https:\/\/www.baeldung.com\/devops\/listing-kafka-consumers\/\" >Listing Kafka Consumers<\/a> first appeared on <a href=\"https:\/\/feeds.feedblitz.com\/~\/t\/0\/0\/baeldung\/~https:\/\/www.baeldung.com\/\" >Baeldung<\/a>.<\/p>\n<p><Img align=\"left\" border=\"0\" height=\"1\" width=\"1\" alt=\"\" style=\"border:0;float:left;margin:0;padding:0;width:1px!important;height:1px!important;\" hspace=\"0\" src=\"https:\/\/feeds.feedblitz.com\/~\/i\/634851128\/0\/baeldung\"><\/p>\n<div style=\"clear:both;padding-top:0.2em;\"><a title=\"Like on Facebook\" href=\"https:\/\/feeds.feedblitz.com\/_\/28\/634851128\/baeldung\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/fblike20.png\" style=\"border:0;margin:0;padding:0;\"><\/a>&#160;<a title=\"Share on Google+\" href=\"https:\/\/feeds.feedblitz.com\/_\/30\/634851128\/baeldung\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/googleplus20.png\" style=\"border:0;margin:0;padding:0;\"><\/a>&#160;<a title=\"Pin it!\" href=\"https:\/\/feeds.feedblitz.com\/_\/29\/634851128\/baeldung,\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/pinterest20.png\" style=\"border:0;margin:0;padding:0;\"><\/a>&#160;<a title=\"Tweet This\" href=\"https:\/\/feeds.feedblitz.com\/_\/24\/634851128\/baeldung\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/twitter20.png\" style=\"border:0;margin:0;padding:0;\"><\/a>&#160;<a title=\"Subscribe by email\" href=\"https:\/\/feeds.feedblitz.com\/_\/19\/634851128\/baeldung\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/email20.png\" style=\"border:0;margin:0;padding:0;\"><\/a>&#160;<a title=\"Subscribe by RSS\" href=\"https:\/\/feeds.feedblitz.com\/_\/20\/634851128\/baeldung\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/rss20.png\" style=\"border:0;margin:0;padding:0;\"><\/a>&#160;<a rel=\"NOFOLLOW\" title=\"View Comments\" href=\"https:\/\/www.baeldung.com\/devops\/listing-kafka-consumers#respond\"><img decoding=\"async\" height=\"20\" style=\"border:0;margin:0;padding:0;\" src=\"https:\/\/assets.feedblitz.com\/i\/comments20.png\"><\/a>&#160;<a title=\"Follow Comments via RSS\" href=\"https:\/\/www.baeldung.com\/devops\/listing-kafka-consumers\/feed\/\"><img decoding=\"async\" height=\"20\" style=\"border:0;margin:0;padding:0;\" src=\"https:\/\/assets.feedblitz.com\/i\/commentsrss20.png\"><\/a><\/p>\n<h3 style=\"clear:left;padding-top:10px\">Related Stories<\/h3>\n<ul>\n<li><a rel=\"NOFOLLOW\" href=\"https:\/\/www.baeldung.com\/devops\/kafka-list-topics\">Listing Kafka Topics<\/a><\/li>\n<\/ul>\n<p>&#160;<\/p><\/div>\n\n<p class=\"syndicated-attribution\"><figure class= \\\"wp-block-image alignnone \\\"><img src= \\\"http:\/\/itteacheritfreelance.hk\/test\/wordpress\/wp-content\/uploads\/2016\/05\/logo2-2.png\\\" alt=\\\"IT\u96fb\u8166\u88dc\u7fd2 java\u88dc\u7fd2 \u70ba\u5927\u5bb6\u914d\u5c0d\u96fb\u8166\u88dc\u7fd2,IT freelance, \u79c1\u4eba\u8001\u5e2b, PHP\u88dc\u7fd2,CSS\u88dc\u7fd2,XML,Java\u88dc\u7fd2,MySQL\u88dc\u7fd2,graphic design\u88dc\u7fd2,\u4e2d\u5c0f\u5b78ICT\u88dc\u7fd2,\u4e00\u5c0d\u4e00\u79c1\u4eba\u88dc\u7fd2\u548cFreelance\u81ea\u7531\u5de5\u4f5c\u914d\u5c0d\u3002\\\"\/><figcaption>\u7acb\u523b\u8a3b\u518a\u53ca\u5831\u540d\u96fb\u8166\u88dc\u7fd2\u8ab2\u7a0b\u5427!<\/figcaption><\/figure>\r\n<\/br>Find A Teacher Form:\r\n<\/br>https:\/\/docs.google.com\/forms\/d\/1vREBnX5n262umf4wU5U2pyTwvk9O-JrAgblA-wH9GFQ\/viewform?edit_requested=true#responses\r\n<\/br><\/br>Email:\r\n<\/br>public1989two@gmail.com<br><br><br><br><br><br><br>\r\n<a href=www.itsec.hk style=color:#FFFFFF;>www.itsec.hk<\/a><br>\r\n<a href=\\\"www.itsec.vip\\\" style=color:#FFFFFF;>www.itsec.vip<\/a><br>\r\n<a href=\\\"www.itseceu.uk\\\" style=color:#FFFFFF;>www.itseceu.uk<\/a><br><\/p>","protected":false},"excerpt":{"rendered":"<div class=\"mh-excerpt\"><p>learn how to list Kafka consumer groups and find more information.<\/p>\n<p>The post <a rel=\"NOFOLLOW noopener noreferrer\" href=\"https:\/\/feeds.feedblitz.com\/~\/634851128\/0\/baeldung~Listing-Kafka-Consumers\/\" target=\"_blank\">Listing Kafka Consumers<\/a> first appeared on <a rel=\"NOFOLLOW noopener noreferrer\" href=\"https:\/\/www.baeldung.com\/\" target=\"_blank\">Baeldung<\/a>.<\/p>\n<div><a title=\"Like on Facebook\" href=\"https:\/\/feeds.feedblitz.com\/_\/28\/634851128\/baeldung\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/fblike20.png\"><\/a>&nbsp;<a title=\"Share on Google+\" href=\"https:\/\/feeds.feedblitz.com\/_\/30\/634851128\/baeldung\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/googleplus20.png\"><\/a>&nbsp;<a title=\"Pin it!\" href=\"https:\/\/feeds.feedblitz.com\/_\/29\/634851128\/baeldung,\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/pinterest20.png\"><\/a>&nbsp;<a title=\"Tweet This\" href=\"https:\/\/feeds.feedblitz.com\/_\/24\/634851128\/baeldung\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/twitter20.png\"><\/a>&nbsp;<a title=\"Subscribe by email\" href=\"https:\/\/feeds.feedblitz.com\/_\/19\/634851128\/baeldung\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/email20.png\"><\/a>&nbsp;<a title=\"Subscribe by RSS\" href=\"https:\/\/feeds.feedblitz.com\/_\/20\/634851128\/baeldung\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/rss20.png\"><\/a>&nbsp;<a rel=\"NOFOLLOW\" title=\"View Comments\" href=\"https:\/\/www.baeldung.com\/devops\/listing-kafka-consumers#respond\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/comments20.png\"><\/a>&nbsp;<a title=\"Follow Comments via RSS\" href=\"https:\/\/www.baeldung.com\/devops\/listing-kafka-consumers\/feed\/\"><img decoding=\"async\" height=\"20\" src=\"https:\/\/assets.feedblitz.com\/i\/commentsrss20.png\"><\/a><\/p>\n<h3>Related Stories<\/h3>\n<ul>\n<li><a rel=\"NOFOLLOW\" href=\"https:\/\/www.baeldung.com\/devops\/kafka-list-topics\">Listing Kafka Topics<\/a><\/li>\n<\/ul>\n<p>&nbsp;<\/p><\/div>\n<\/div>","protected":false},"author":760,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"slim_seo":{"title":"Listing Kafka Consumers - ITTeacherITFreelance.hk","description":"learn how to list Kafka consumer groups and find more information. The post Listing Kafka Consumers first appeared on Baeldung . &nbsp; &nbsp; &nbsp; &nbsp; &nb"},"footnotes":""},"categories":[6],"tags":[],"_links":{"self":[{"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/65356"}],"collection":[{"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/users\/760"}],"replies":[{"embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/comments?post=65356"}],"version-history":[{"count":10,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/65356\/revisions"}],"predecessor-version":[{"id":69421,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/65356\/revisions\/69421"}],"wp:attachment":[{"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/media?parent=65356"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/categories?post=65356"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/tags?post=65356"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}