Linux 下搭建 Kafka 环境

2023-11-17

安装步骤#
准备软件目录

mkdir /datalake
上传之前下载好的安装包到 /datalake 目录下

jdk-8u181-linux-x64.gz

kafka_2.11-2.1.0.tgz

zookeeper-3.4.5.tar.gz

批量解压这几个安装包

cd /datalake
ls * | xargs -n1 tar xzvf
将解压的软件移动到 /usr/local 目录

cd /datalake
mv jdk1.8.0_181 /usr/local/jdk
mv kafka_2.11-2.1.0 /usr/local/kafka
mv zookeeper-3.4.5 /usr/local/zk
配置 Zookeeper

cd /usr/local/zk/conf
首先,先备份 Zookeeper 的默认配置文件

cp zoo_sample.cfg zoo.cfg
然后将配置文件修改下

vi zoo.cfg
将 dataDir 选项配置为

dataDir=/usr/local/zk/data
接下来,配置 Kafka

vi /usr/local/kafka/config/server.properties
将 log.dirs 参数修改为

log.dirs=/usr/local/zk/logs
由于 Kafka 和 Zookeeper 装在同一个 Linux 中,所以 zookeeper.connect 配置维持默认配置即可

zookeeper.connect=localhost:2181
配置环境变量

vi /usr/profile
添加如下内容

export JAVA_HOME=/usr/local/jdk
export ZK_HOME=/usr/local/zk
export KAFKA_HOME=/usr/local/kafka
export PATH= P A T H : PATH: PATH:JAVA_HOME/bin: Z K H O M E / b i n : ZK_HOME/bin: ZKHOME/bin:KAFKA_HOME/bin
应用环境变量

source /etc/profile
接下来,就开始启动 Kafka,首先,需要先启动 Zookeeper

zkServer.sh start
输出信息如下

[root@datalake conf]# zkServer.sh start
JMX enabled by default
Using config: /usr/local/zk/bin/…/conf/zoo.cfg
Starting zookeeper … STARTED
说明启动成功。

接下来启动 Kafka

kafka-server-start.sh /usr/local/kafka/config/server.properties
接下来,再打开 Shell 一个窗口,创建 topic

kafka-topics.sh --zookeeper 127.0.0.1:2181 --replication-factor 1 --partitions 1 --create --topic test
然后再开一个 Shell 窗口,启动生产者

kafka-console-producer.sh --broker-list 127.0.0.1:9092 --topic test
再打开一个 Shell 窗口,启动消费者

kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --topic test
切换到生产者启动页面,发送数据,消费者能正常接收数据

生产者

image

消费者

image

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux 下搭建 Kafka 环境 的相关文章

  • Java Runtime.getRuntime().freeMemory() 问题

    我搜索并看到了一些线程 但没有一个能够解决我遇到的具体问题 我正在尝试使用以下方式监视我的内存使用情况Runtime getRuntime freeMemory Runtime getRuntime maxMemory and Runtim
  • Java:无法从同一包中的不同类访问静态变量

    这很奇怪 因为我有一个可以访问 Frame dimension getWidth 的 Character 类 及其伙伴 getHeight 但是当我想在 Map 类中使用它时 Eclipse 强调了它并且无法给我反馈 运行该程序最终会出现
  • JVisualVM/JConsole 中的 System.gc() 与 GC 按钮

    我目前正在测试处理 XML 模式的概念验证原型 并围绕一个非常消耗内存的树自动机外部库 我已经获得了源代码 构建 我想绘制 真实峰值 堆 随着模式大小的增加 不同运行的内存消耗 使用的指标符合我的目的并且不会影响问题 或者至少是它的合理近似
  • 是否有任何简单(且最新)的 Java 框架可用于在 Swing 应用程序中嵌入电影?

    我正在构建一个小型 Swing 应用程序 我想在其中嵌入一部电影 重要的是 这个应用程序是一个 WebStart 应用程序 并且该库应该能够打包在我启动的 jnlp 中 即 不依赖于本机库 我知道并尝试过 JMF 但我认为与其他框架相比 其
  • 如何在 Antlr4 中为零参数函数编写语法

    我的函数具有参数语法 如下面的词法分析器和解析器 MyFunctionsLexer g4 lexer grammar MyFunctionsLexer FUNCTION FUNCTION NAME A Za z0 9 DOT COMMA L
  • 打印星号的 ASCII 菱形

    我的程序打印出这样的钻石 但只有当参数或菱形的每一面为4 例如如果我输入6 底部三角形的间距是错误的 我一直在试图找出答案 当参数改变时 底部的三角形不会改变 只有顶部的三角形会改变 它只适用于输入4 public static void
  • Java:在 eclipse 中导出到 .jar 文件

    我正在尝试将 Eclipse 中的程序导出到 jar 文件 在我的项目中 我添加了一些图片和 PDF s 当我导出到 jar 文件时 似乎只有main已编译并导出 我的意愿是如果可能的话将所有内容导出到 jar 文件 因为这样我想将其转换为
  • Spring Boot自动装配存储库始终为空[重复]

    这个问题在这里已经有答案了 每次我进入我的服务类时 存储库似乎都没有自动连接 因为它不断抛出 NullPointerException 谁能帮我检查一下我缺少什么吗 这是我的代码 演示应用程序 java package com exampl
  • 是否可以使用 Flying Saucer (XHTML-Renderer) 将 css 解析为类路径资源?

    我正在尝试将资源打包到 jar 中 但我无法让 Flying Saucer 在类路径上找到 css 我无法轻松构建 URL 来无缝解决此问题 https stackoverflow com questions 861500 url to l
  • 大数据使用什么数据结构

    我有一个包含一百万行的 Excel 工作表 每行有 100 列 每行代表一个具有 100 个属性的类的实例 列值是这些属性的值 哪种数据结构最适合在这里使用来存储数百万个数据实例 Thanks 这实际上取决于您需要如何访问这些数据以及您想要
  • Kotlin 未解决的参考:CLI 上 gradle 的 println

    放一个printlnkotlin 函数返回之前的语句会崩溃 堆栈跟踪 thufir dur NetBeansProjects kotlin thufir dur NetBeansProjects kotlin gradle clean bu
  • 什么时候可以在 Java 中使用 Thead.stop() ?

    Thread stop 的 Java 文档听起来好像如果您调用 Thread stop 世界就会终结 已弃用 这种方法本质上是不安全的 停止线程 Thread stop 导致它解锁所有已锁定的监视器 作为未经检查的 ThreadDeath
  • 需要使用 joda 进行灵活的日期时间转换

    我想使用 joda 解析电子邮件中的日期时间字符串 不幸的是我得到了各种不同的格式 例如 Wed 19 Jan 2011 12 52 31 0600 Wed 19 Jan 2011 10 15 34 0800 PST Wed 19 Jan
  • 如何根据 HTTP 请求使用 Python 和 Flask 执行 shell 命令并流输出?

    下列的这个帖子 https stackoverflow com questions 15092961 how to continuously display python output in a webpage 我能够tail f网页的日志
  • Linux TUN/TAP:无法从 TAP 设备读回数据

    问题是关于如何正确配置想要使用 Tun Tap 模块的 Linux 主机 My Goal 利用现有的路由软件 以下为APP1和APP2 但拦截并修改其发送和接收的所有消息 由Mediator完成 我的场景 Ubuntu 10 04 Mach
  • JMenu 中的文本居中

    好吧 我一直在网上寻找有关此问题的帮助 但我尝试的任何方法似乎都不起作用 我想让所有菜单文本都集中在菜单按钮上 当我使用setHorizontalTextPosition JMenu CENTER 没有变化 事实上 无论我使用什么常量 菜单
  • Java Swing:需要一个高质量的带有复选框的开发 JTree

    我一直在寻找一个 Tree 实现 其中包含复选框 其中 当您选择一个节点时 树中的所有后继节点都会被自动选择 当您取消选择一个节点时 树中其所有后继节点都会自动取消选择 当已经选择了父节点 并且从其后继之一中删除了选择时 节点颜色将发生变化
  • 如何在 shell 脚本中并行运行多个实例以提高时间效率[重复]

    这个问题在这里已经有答案了 我正在使用 shell 脚本 它读取 16000 行的输入文件 运行该脚本需要8个多小时 我需要减少它 所以我将其划分为 8 个实例并读取数据 其中我使用 for 循环迭代 8 个文件 并在其中使用 while
  • org.apache.commons.net.io.CopyStreamException:复制时捕获 IOException

    我正在尝试使用以下方法中的代码将在我的服务器中创建的一些文件复制到 FTP 但奇怪的是我随机地低于错误 我无法弄清楚发生了什么 Exception org apache commons net io CopyStreamException
  • Java EE 目录结构

    我对以下教程有疑问 http www mkyong com jsf2 jsf 2 internationalization example http www mkyong com jsf2 jsf 2 internationalizatio

随机推荐

  • HDFS DataNode高密度存储机型的探索尝试

    前言 随着公司业务的发展 我们需要存储越来越庞大的数据来支撑公司业务的发展 这里就涉及到了数据存储能力的问题 需要存储的数据越多 其实意味着我们需要更多的机器来扩增HDFS集群存储的总capacity 但是机器数量的变多另外一方面带来的则是
  • Android Studio获取系统级签名方式

    android sharedUserId android uid system 系统签名 通过sharedUserId 拥有同一个User id的多个APK可以配置成运行在同一个进程中 那么把程序的UID配成android uid syst
  • CAS与ABA问题

    在JDK 5之前Java语言是靠synchronized关键字保证同步的 这会导致有锁机制存在以下问题 1 在多线程竞争下 加锁 释放锁会导致比较多的上下文切换和调度延时 引起性能问题 2 一个线程持有锁会导致其它所有需要此锁的线程挂起 3
  • Python爬虫到入门只需要三个月

    如何入门Python 为了能够帮助大家更轻松的学好Python开发 Python爬数据 Python数据分析等相关理论知识 给大家共同分享自己一套Python学习生活资料 文章最后面的有附属的相关资料 无论你是大牛还是小白 是想转行还是想入
  • C语言-扫雷游戏程序设计

    文章目录 一 问题要求 1 问题描述 2 程序的功能 二 基本要求 1 要求分析 2 需求分析 四 设计概要 1 程序的设计概要 2 程序的主要流程 1 设置棋盘 2 布地雷 五 用户说明 六 测试结果 1 运行结果说明 2 测试结论 七
  • 区块链基本加密概念

    什么是区块链 目前狭义就任务就是一个超级账本 区块链可以用来做什么 可以用来无障碍的置换 既然是用来交易的 那么我们就要有一个地址存放我的资产 地址 举例比特资产地址 一个比特币地址由两部分组成 一部分是公钥哈希值经过Base58check
  • 面试:Spring&SpringMVC&Mybatis 面试必备面试题

    Spring SpringMVC Mybatis常见面试题 历史文章 多线程史上最全面试题 持续更新中 dubbo zookeeper55道高频面试题 附加答案 SpringCloud SpringBoot经典面试题 附加答案 Spring
  • linux进程snprintf函数功能,linux 之 snprintf函数用法

    int snprintf char restrict buf size t n const char restrict format 函数说明 最多从源串中拷贝n 1个字符到目标串中 然后再在后面加一个0 所以如果目标串的大小为n 的话 将
  • MapReduce实现TopN的效果

    1 背景 最近在学习Hadoop的MapReduce 此处记录一下如何实现 TopN 的效果 以及在MapReduce中如何实现 自定义分组 2 需求 我们有一份数据 数据中存在如下3个字段 订单编号 订单项和订单项价格 输出的数据 需求如
  • 最近邻检索(NN)和近似最近邻(ANN)检索

    文章目录 1 最近邻检索 Nearest Neighbor Search 1 1 概述 1 2 应用领域 2 最近邻检索的发展 2 1 精确检索 2 2 近似检索 参考文献 1 最近邻检索 Nearest Neighbor Search 1
  • 解决导入aliyun-sdk-vod-upload后仍报错的问题

    在手动下载阿里云的aliyun sdk vod upload jar包并执行mvn install install file DgroupId com aliyun DartifactId aliyun sdk vod upload Dve
  • STM32 Freertos 添加 外部sram heap_5.c

    1 添加外部SRAM 初始化 2 添加heap 5 c 3 初始化heap 5 c 外部堆栈 Define the start address and size of the two RAM regions not used by the
  • MYSQL基础命令及添加用户及权限操作

    用root管理打开mysql 1 连接数据库 mysql u root p或者 mysql h192 168 222 132 uroot p通过ip远程连接数据库 mysql h host u user p password P port
  • 啊哈C语言——安装啊哈C编译器

    安装啊哈C编译器 首先访问啊哈C语言编译器的官网www ahacpp com 下载啊哈 C语言编译器安装包 Windows 单击下载之后会跳转到腾讯微云 选中文件复选框 然后单击保存微云 这个时候会弹出登录框 选择自己喜欢的登录方式 然后再
  • 华为OD机试 - 全量和已占用字符集(Java)

    题目描述 给定两个字符集合 一个是全量字符集 一个是已占用字符集 已占用字符集中的字符不能再使用 要求输出剩余可用字符集 输入描述 输入一个字符串 一定包含 前为全量字符集 后的为已占用字符集 已占用字符集中的字符一定是全量字符集中的字符
  • drop mysql,MySQL删除大表更快的DROP TABLE办法

    本文内容遵从CC版权协议 可以随意转载 但必须以超链接形式标明文章原始出处和作者信息及版权声明网址 http www penglixun com tech database mysql fast drop table use hard li
  • 【Python】植物大战僵尸-基于pygame模块-part2

    文章目录 版本介绍 一 种子栏类 SeedBank py 1 成员变量 2 方法 展示种子栏 二 主游戏类 MainGame py 1 成员变量 2 加载项 3 主事件项 三 最终效果 版本介绍 继上篇内容开发 该版本为ver1 1 后续版
  • go 进阶 请求代理相关: 二. ReverseProxy 基础讲解

    目录 一 ReverseProxy 基础 ReverseProxy 中提供了哪些功能 ReverseProxy 结构详解 ReverseProxy实现代理的简单示例 1 NewSingleHostReverseProxy 函数源码解释 2
  • 元宇宙大投资 & 元宇宙通证

    元宇宙大投资 元宇宙大投资 1 备战元宇宙大浪潮 元宇宙大投资 2 抓紧元宇宙本质 元宇宙大投资 3 决胜元宇宙投资 元宇宙大投资 4 元宇宙的终局 生物与数字的融合 元宇宙大投资 6 元宇宙中国之崛起 元宇宙大投资 7 全球投资脉络下的元
  • Linux 下搭建 Kafka 环境

    安装步骤 准备软件目录 mkdir datalake 上传之前下载好的安装包到 datalake 目录下 jdk 8u181 linux x64 gz kafka 2 11 2 1 0 tgz zookeeper 3 4 5 tar gz