安装jdk,zookeeper,kafka

本文主要介绍在Linux上安装JDK、Zookeeper和Kafka的过程及遇到的问题。安装JDK需下载、解压并配置环境;安装Zookeeper和Kafka时也遇到诸多问题,如Zookeeper提示找不到Java命令,Kafka因内存不足报错,经修改配置后得以解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

jdk

linux上安装jdk其实很简单,下载jdk的bin文件,解压,配置好环境就ok了

坑爹的是oracle现在必须登陆才能下载了 ,建议还是注册一下,下载速度杠杆的

本机是window10,kafka的资料linux更加多一些,这里就使用了虚拟机

  1. 安装虚拟机
  2. 安装系统
  3. oracle官网下载jdk,这里用的是jdk1.8.0_211
  4. 配置环境
    1. vi /etc/profile
    2. 底部加入下面内容

    3. JAVA_HOME=/usr/local/java/jdk1.8.0_201

      PATH=$JAVA_HOME/bin:$PATH

      CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar

      export PATH JAVA_HOME CLASSPATH

    4. source /etc/profile 使配置文件生效

    5. java -version 查看是否安装成功

安装的时候遇到如下问题

  1. 本机使用winscp来传输数据,在配置好jdk环境之后,发现无法传输数据,网上教程也无法解决;tab 的时候提示无法为立即文档创建临时文件,如果有人知道还请告知
  2. 只能重新安装一次虚拟机,可是securesrc又无法连接,发现是ssh-server的问题,apt安装之后解决

zookeeper

下载,解压,配置

#tar -zxf zookeeper-3.4.14.tar.gz
#mv zookeeper-3.4.14 /usr/local/zookeeper
#mkdir -p /var/lib/zookeeper
#cat > /usr/local/zookeeper/conf/zoo.cfg <<EOF
>tickTime=2000
>dataDir=/var/lib/zookeeper
>clientPort=2181
>EOF
#/usr/local/zookeeper/bin/zkServer.sh start

上述命令就可以开启zookeeper服务器

可以利用

#/usr/local/zookeeper/bin/zkServer.sh status

查看运行状态,可是发现报错,process may not run

网上查询发现应该是jdk的问题,并且~/zookeeper/bin/zookeeper.out中也提示是java命令找不到

但是jdk的确是正确安装的,不管,在sh脚本中加入下面两行

export JAVA_HOME=/usr/local/java/jdk1.8.0_211
export PATH=$JAVA_HOME:$PATH

成功

kafka

同样,下载,解压

tar -zxf kafka_2.11-2.2.1.tgz
mv kafka_2.11-2.2.1 /usr/local/kafka
mkdir /tmp/kafka-logs
/usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties

再执行如下创建主题

/usr/local/kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

不出意外,报错

replication factor: 1 larger than available brokers: 0

也就是broker根本没有启动

查看kafka.out中发现如下

can not allocate memory

所以怀疑是分配的内存不够,因为是虚拟机嘛,没有那么多内存,果断修改kafka-server-start.sh

将-Xmx1G -Xms1G 改为256M,256M

得以成功;by the way, 一开始修改为128,不行,会报内存溢出错误。后来将分配给虚拟机的内存改为2g,这里改为256才顺利通过

启动发布和消费

/usr/local/kafka/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
/usr/local/kafka/bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning

发现这种消费方式是不支持的(kafka的版本较高,废除了这种方式)

/usr/local/kafka/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning

这种方式是可以的

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值