虚拟机软件安装、环境搭建

1、 wget: 未找到命令

[root@localhost ~]# yum -y install wget
安装完毕即可。

上面的方法使用的前提是你的linux 系统是已经连接外网,可以ping一下百度主页,如果通,就是连接外网了,不是的话,就要先去打开网络链接(这个百度一下就很多),打开网络链接后,重启linux系统这样才真的可以上外网,因为wget是通过外网进行下载的,然后运行yum install wget,这样就可以.

2、在线安装下载JDK

命令:
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm
参考地址:
https://www.cnblogs.com/justuntil/p/11665540.html

3、创建目录

mkdir /data1/ehserver/env/kafka_2.11-2.2.0/logs/kafka-logs-1 -pv
解压缩:
tar -zxf kafka_2.11-2.0.0.tgz -C /data1/ehserver/env

4、 查看虚拟机中现存在的jdk版本:

输入指令:rpm -qa|grep jdk

5、安装下载ZK

wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.6.0/apache-zookeeper-3.6.0.tar.gz
wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz

参考地址:
https://www.cnblogs.com/expiator/p/9853378.html

6、zk 启动找不到或无法加载主类 org.apache.zookeeper.ZooKeeperMain

https://www.cnblogs.com/zhoading/p/11593972.html

7、安装kafka

参考上篇kafka安装

8、测试demo


创建一个topic:
对于linux或者macos操作系统,执行kafka的shell文件
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test对于windows操作系统用户,请执行对应的bin/windows目录下的bat文件
bin/windows/kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test启动producer:
对于linux或者macos操作系统,执行kafka的shell文件bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
对于windows操作系统,执行kafka的bat文件bin/windows/kafka-console-producer.bat --broker-list localhost:9092 --topic test启动consumer:
对于linux或者macos操作系统,执行kafka的shell命令bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test
对于windows操作系统,执行kafka的bat命令bin/windows/kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test

9、出现异常:

ERROR Error when sending message to topic test with key: null, value: 14 bytes with error: (org.apache.kafka.clients.producer.internals.ErrorLoggingCallback)
org.apache.kafka.common.errors.CorruptRecordException: This message has failed its CRC checksum, exceeds the valid size, has a null key for a compacted topic, or is otherwise corrupt.

原因:kafka 生成者创建需要一个key值

启动producer修改为:bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test \--property parse.key=true \--property key.separator=,

发送格式为:key,value 
这样在消费端可以收到value.

10、安装Redis

wget http://download.redis.io/releases/redis-5.0.5.tar.gz

参考资料:

https://blog.csdn.net/slss01/article/details/88920845
https://blog.csdn.net/weixin_44899258/article/details/93976868

启动:

 ./bin/redis-server /data1/ehserver/env/redis-4.0.8/etc/redis.conf 

重启:

1、关闭redis或者关闭远程redis

/usr/local/redis/redis-cli shutdown
/usr/local/redis/redis-cli -h 127.0.0.1 -p 6379 shutdown

2、重启redis

 ./bin/redis-server /data1/ehserver/env/redis-4.0.8/etc/redis.conf 

11、-bash: mkde: 未找到命令

原因是因为未安装gcc
解决方法:
yum install gcc-c++ -y

12、redis 启动日志 输出

https://www.cnblogs.com/hzb462606/p/9117193.html

logfile "/data1/ehserver/env/redis-4.0.8/logs/nohup.out"

/data1/ehserver/env/redis-4.0.8/bin/redis-server
/data1/ehserver/env/redis-4.0.8/etc/redis.conf

10、 tomcat

wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-9/v9.0.8/bin/apache-tomcat-9.0.8.tar.gz

wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-7/v7.0.100/bin/apache-tomcat-7.0.100.tar.gz

# docker run -d -p 58080:8080 -v /root/webapps/:/opt/tomcat/webapps/ --name mytomcat_1 mytomcat:1.0 /root/run.sh

11、kafka配置文件介绍(server.properties)

server.properties(broker.id和listeners每个节点都不相同)

#是否允许删除topic,默认false不能手动删除
delete.topic.enable=true
#当前机器在集群中的唯一标识,和zookeeper的myid性质一样
broker.id=0
#当前kafka服务侦听的地址和端口,端口默认是9092
listeners = PLAINTEXT://192.168.100.21:9092
#这个是borker进行网络处理的线程数
num.network.threads=3
#这个是borker进行I/O处理的线程数
num.io.threads=8
#发送缓冲区buffer大小,数据不是一下子就发送的,先会存储到缓冲区到达一定的大小后在发送,能提高性能
socket.send.buffer.bytes=102400
#kafka接收缓冲区大小,当数据到达一定大小后在序列化到磁盘
socket.receive.buffer.bytes=102400
#这个参数是向kafka请求消息或者向kafka发送消息的请请求的最大数,这个值不能超过java的堆栈大小
socket.request.max.bytes=104857600
#消息日志存放的路径
log.dirs=/opt/module/kafka_2.11-1.1.0/logs
#默认的分区数,一个topic默认1个分区数
num.partitions=1
#每个数据目录用来日志恢复的线程数目
num.recovery.threads.per.data.dir=1
#默认消息的最大持久化时间,168小时,7天
log.retention.hours=168
#这个参数是:因为kafka的消息是以追加的形式落地到文件,当超过这个值的时候,kafka会新起一个文件
log.segment.bytes=1073741824
#每隔300000毫秒去检查上面配置的log失效时间
log.retention.check.interval.ms=300000
#是否启用log压缩,一般不用启用,启用的话可以提高性能
log.cleaner.enable=false
#设置zookeeper的连接端口
zookeeper.connect=node21:2181,node22:2181,node23:2181
#设置zookeeper的连接超时时间
zookeeper.connection.timeout.ms=6000

12、kafka启动多个broker

如果想在同一台服务器启动多个broker可以复制多份config/server.propoerties文件

这里我复制了三份server.properties文件,这样我可以启动三个broker。在启动broker之前,需要先修改server.properties文件中的三个属性,broker.id、listeners和log.dirs,保证这三个属性不同。

bin/kafka-server-start.sh --daemon config/server1.properties
bin/kafka-server-start.sh --daemon config/server2.properties
bin/kafka-server-start.sh --daemon config/server3.properties

13、分发安装包到其他节点

[admin@node21 module]$ scp -r kafka_2.11-1.1.0 admin@node22:/opt/module/
[admin@node21 module]$ scp -r kafka_2.11-1.1.0 admin@node23:/opt/module/
修改node22,node23节点kafka配置文件conf/server.properties里面的broker.id和listeners的值。

14、 添加环境变量

[admin@node21 module]$ vi /etc/profile
#KAFKA_HOME
export KAFKA_HOME=/opt/module/kafka_2.11-1.1.0
export PATH=$PATH:$KAFKA_HOME/bin
保存使其立即生效

[admin@node21 module]$  source /etc/profile

3.1 首先启动zookeeper集群
所有zookeeper节点都需要执行

[admin@node21 ~]$ zkServer.sh start
3.2 后台启动Kafka集群服务
所有Kafka节点都需要执行

[admin@node21 kafka_2.11-1.1.0]$ bin/kafka-server-start.sh config/server.properties &

15、kafka命令行操作

kafka-broker-list:node21:9092,node22:9092,node23:9092

zookeeper.connect-list: node21:2181,node22:2181,node23:2181

在node21节点上创建一个新的Topic

[admin@node21 kafka_2.11-1.1.0]$ bin/kafka-topics.sh --create --zookeeper node21:2181,node22:2181,node23:2181 --replication-factor 3 --partitions 3 --topic TestTopic

选项说明:

--topic 定义topic名--replication-factor  定义副本数--partitions  定义分区数

查看topic副本信息
[admin@node21 kafka_2.11-1.1.0]$ bin/kafka-topics.sh --describe --zookeeper node21:2181,node22:2181,node23:2181 --topic TestTopic

查看已经创建的topic信息
[admin@node21 kafka_2.11-1.1.0]$ kafka-topics.sh --list --zookeeper node21:2181,node22:2181,node23:2181

在node21上生产消息

[admin@node21 kafka_2.11-1.1.0]$ bin/kafka-console-producer.sh --broker-list node21:9092,node22:9092,node23:9092 --topic TestTopic

在node22上消费消息(旧命令操作)

[admin@node22 kafka_2.11-1.1.0]$ kafka-console-consumer.sh --zookeeper node21:2181,node22:2181,node23:2181  --from-beginning --topic TestTopic
--from-beginning:会把TestTopic主题中以往所有的数据都读取出来。根据业务场景选择是否增加该配置。

新消费者命令

[admin@node22 kafka_2.11-1.1.0]$ kafka-console-consumer.sh --bootstrap-server node21:9092,node22:9092,node23:9092  --from-beginning --topic TestTopic

删除topic
[admin@node22 kafka_2.11-1.1.0]$ bin/kafka-topics.sh --zookeeper node21:2181,node22:2181,node23:2181  --delete --topic TestTopic

需要server.properties中设置delete.topic.enable=true否则只是标记删除或者直接重启。

16、 停止Kafka服务

[admin@node21 kafka_2.11-1.1.0]$ bin/kafka-server-stop.sh stop

编写kafka启动脚本

[admin@node21 kafka_2.11-1.1.0]$ cd bin
[admin@node21 bin]$ vi start-kafka.sh
#!/bin/bash
nohup /opt/module/kafka_2.11-1.1.0/bin/kafka-server-start.sh  /opt/module/kafka_2.11-1.1.0/config/server.properties >/opt/module/kafka_2.11-1.1.0/logs/kafka.log 2>&1 &
赋权限给脚本:chmod +x start-kafka.sh

17、-bash: unzip: 未找到命令

Install 安装
[root@dev-redis agent]# yum install -y unzip zip

这里介绍的是在虚拟机上搭建Kafka的开发环境过程中遇到的一些问题,在此做一下总计记录。仅自己学习

每天努力一点,每天都在进步。

虚拟机基础常用操作命令(2)——软件安装、环境搭建相关推荐

  1. Database之SQLSever:SQLSever基础知识进阶、软件安装注意事项、软件使用经验总结之详细攻略

    Database之SQLSever:SQLSever基础知识进阶.软件安装注意事项.软件使用经验总结之详细攻略 目录 SQLSever基础知识进阶 SQL与T-SQL.PL-SQL的区别 数据库相关基 ...

  2. 我的全栈之路-Python基础之Python概述与开发环境搭建

    我的全栈之路-Python基础之Python概述与开发环境搭建 我的全栈之路 1.1 信息技术发展趋势 1.2 浅谈计算机系统架构 1.2.1 计算机系统架构概述 1.2.2 计算机硬件系统 1.2. ...

  3. Mac (M1) 软件及环境搭建

    Mac (M1) 软件及环境搭建 1.JDK 2.maven 3.idea2022 4.git 5.mysql5.7 6.redis 7.rabbitmq 8.smartGit 写在前面 说明:电脑版 ...

  4. phonegap安装 环境搭建与配置详解(3.4 完整版 提供下载地址)

    phonegap安装 环境搭建与配置详解(3.4 完整版 提供下载地址) 原文连接:http://blog.csdn.net/aaawqqq/article/details/19755179 phon ...

  5. python+admin(simpleui)软件和环境搭建

    这里写目录标题 python+admin(simpleui)软件和环境搭建 [教学内容] (一)`xadmin`安装使用 1.安装`python` 2.安装`Django` python+admin( ...

  6. 基于Qt Designer和PyQt5的桌面软件开发--环境搭建和入门例子

      本文介绍了如何使用技术栈PyCharm+Qt Designer+PyQt5来开发桌面软件,从环境搭建.例子演示到对容易混淆概念的解释.文中用到的全部软件+代码下载链接为:https://url39 ...

  7. Spark安装-环境搭建

    Spark安装-环境搭建 1.1Spark简介 ApacheSpark 是用于大规模数据处理的统一分析引擎.是一个基于内存分布式计算框架.由于Spark基于内存,相对于hadoop的MapReduce ...

  8. 《在(虚拟机)ubuntu16.04上进行openwrt环境搭建及源码下载》

    广西·河池学院 广西高校重点实验室培训基地 系统控制与信息处理重点实验室 本篇博客来之河池学院:OpenWrt无线路由组 写作时间: 2020年7月30日21:00:51 <在(虚拟机)ubun ...

  9. Java基础入门:IDEA软件安装和软件初始化设置

    IDEA是一个专门针对Java的集成开发工具(IDE),由Java语言编写.所以,需要有JRE运行环境并配置好环境变量. 它可以极大地提升我们的开发效率.可以自动编译,检查错误.在公司中,使用的就是I ...

最新文章

  1. 交易所频频被盗,你该如何保护自己的数字资产?
  2. Sql字符串操作函数
  3. 转载:谢谢原作者: 块设备驱动实战基础篇二 (继续完善170行过滤驱动代码至200行)
  4. cpu,内核和逻辑处理器的关系
  5. java metrics 简书_Spring Boot Metrics
  6. LeetCode:Rotate Image
  7. 99乘法表的四种位置类型for...in while
  8. Python 爬虫实战2 百度贴吧帖子
  9. 用计算机算3次根号0.00005,数值分析复习题13
  10. php国际象棋棋盘奇行奇列,国际象棋怎么玩
  11. Linux命令之新增组groupadd
  12. lesson2分频计数器设计
  13. 基于BERT-PGN模型的中文新闻文本自动摘要生成
  14. redis实现共同好友功能
  15. Balsamiq Wireframes 免费安装
  16. 64位windows无法正常安装dnw的解决方案
  17. 汇编语言六 报数出列设有n(设为17)个人围坐在圆桌周围,按顺时针给他们编号(1,2,~~~,n),从第1个人开始顺时针方向+1报数,当报数到m(设为11)时,该人出列
  18. mycat原理及分表分库入门
  19. 全选与反选 (转)
  20. linux主机sys使用率忽高忽低,cpu使用率忽高忽低的原因和解决方法

热门文章

  1. 盘点开复时代Google中国的变化
  2. oracle服务 linux启动命令
  3. 牛仔裤品牌!!大排行
  4. usb转RS232通用串口与虚拟机连接使用
  5. 串口;电脑连接串口;为啥需要/保留串口
  6. 一文看懂Filter过滤器
  7. 实现网站常见的轮播图
  8. C语言||暴力算法解数独
  9. 应用宝sdk接入流程与注意事项总结
  10. jpg/png格式图片转eps格式的方法总结