从新建linux虚拟机到搭建zookeeper+kafka详细版-创新互联
- 虚拟linux系统
- 一.安装虚拟机
- 二.创建虚拟机
- 三. 配置网络
- 四. 搭建集群准备工作
- 安装jdk
- 1. 检查是否已安装openjdk
- 2. 下载
- 3. 上传安装包
- 4. 解压
- 5. 修改环境变量
- 6. 检测是否配置成功
- 搭建zookeeper集群
- 1. 下载
- 2. 上传
- 3. 解压
- 4. 配置zk1
- 5. 启动集群
- 6. 查看启动状态
- Error contacting service. It is probably not running
- 搭建kafka集群
- 1. 下载
- 2. 上传
- 3. 解压
- 4. 更改文件夹名称
- 5. 新建logs文件夹
- 6. 修改配置文件
- 7. 将修改后的文件扩展到computer02和computer03
- 8. 启动kafka
- 使用kafka
- 1. 创建topic
- VMware软件下载地址:https://www.vmware.com/cn/products/workstation-pro/workstation-pro-evaluation.html
按照步骤依次点击下一步即可,只有一点需要注意,请不要将VM安装默认C盘,后续本机电脑可能会卡顿,建议安装到除C盘外的任意一盘 - CentOS 7 下载映像文件地址:http://mirrors.aliyun.com/centos/7/isos/x86_64/
选择CentOS-7-x86_64-DVD-2009.iso
- 创建新的虚拟机
- 选择典型配置(自定义有些麻烦,只是自己学习搭个系统没有必要)
2.选择映射文件
因为我这里是先建的虚拟机,后下载的centos,所以选择了稍后安装,如果你提前下载好了,可以直接选择安装的映射文件 - 选择创建虚拟机的操作系统
- 自定义虚拟机名字和位置
- 选择磁盘大小:40
- 点击完成
- 删除一些不用的插件,增加内存空间(声卡和打印器)
- 添加iso映射文件
- 启动虚拟机,等待安装完成
- 选择语言
- 安装位置
- 设置密码(自定义,但root或者123456这类过于简单的密码是不可以的)
由于配置网络步骤过于繁复,此篇文章不再赘述,有需要请移步另一篇文章~
虚拟机linux系统与本机网络互通
- 由于kafka与zookeeper集群至少需要三台机器,所以需要搭建三台虚拟机,但无需将前几步配置三次,只需要配置一次之后复制一下就可以啦~
注意:复制虚拟机的时候需要先将虚拟机关机再复制
点击克隆之后一直点击下一步,直到选择克隆方法“创建完整克隆” - computer2和computer3从computer1复制完之后,需要分别修改一下ifcfg-ens33中的IPADDR,分别将后缀改为11,12,13,为后续操作方便
rpm -qa|grep jdk
如果已经安装openjdk,需要先卸载,再安装jdk,卸载命令如下
yum -y remove
2. 下载下载地址:https://www.oracle.com/java/technologies/downloads/#java8
新建java目录
cd /usr/local
mkdir java
上传部分由于我是用终端软件上传,并没有用VM操作,所以没有什么参考价值,大家看自己习惯来就好啦~
4. 解压tar -zxvf jdk-8u351-linux-i586.tar.gz
5. 修改环境变量sudo vi /etc/profile
在文件下面增加以下内容,其中JAVA_HOME的路径需要替换成自己的路径
export JAVA_HOME=/usr/local/java/jdk1.8.0_351
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
修改之后需要执行以下命令让配置生效
source /etc/profile
6. 检测是否配置成功java -version
如果失败,出现报错:
-bash: bin/java: /lib/ld-linux.so.2: bad ELF interpreter: 没有那个文件或目录
则可以运行以下命令,问题就可以消除
sudo yum install glibc.i686
搭建zookeeper集群
1. 下载下载地址:https://archive.apache.org/dist/zookeeper/zookeeper-3.5.5/
注意:一定要注意后缀,千万不要下载错了,处处是坑!!!
新建zookeeper目录
cd /usr/local
mkdir zookeeper
上传过程同上节
3. 解压tar -zxvf apache-zookeeper-3.5.5-bin.tar.gz
4. 配置zk1step1:更改文件夹名称(更好的区分三个服务器,不改也行,只是看着不舒服)
mv apache-zookeeper-3.5.5-bin zk1
step2:新建data和logs,用于存放数据和日志
cd /usr/local/zookeeper/zk1
mkdir data logs
step3:更改zoo_sample.cfg文件名称
cd /usr/local/zookeeper/zk1/conf
mv zoo_sample.cfg zoo.cfg
step4:修改zoo.cfg文件
vi zoo.cfg
修改以下内容:
①
dataDir=/usr/local/zookeeper/zk1/data
dataLogDir=/usr/local/zookeeper/zk1/logs #如果这一行没有就在dataDir下面新增
②
clientPort=2181 #这是客户端的请求端口号,需要记住
在文件下面添加以下内容
server.1=192.168.227.11:2881:3881
server.2=192.168.227.12:2882:3882
server.3=192.168.227.13:2883:3883
注意:添加的ip分别为三台虚拟机的ip,后面的端口也是防火墙需要打开的端口,不然无法彻底实现集群内部的网络互通
具体如何开放端口,请看Linux常用语句->防火墙部分
所涉及到的端口:
computer1:2181/2881/3881
computer2:2183/2882/3882
computer3:2183/2883/3883
检测是否防火墙已成功开启端口
telnet 192.168.227.12 3882
step5:将修改好的zoo.cfg文件复制到computer2和computer3中,需要对应修改的部分如下
zk1 ->zk2 zk3
2181 ->2182 2183
step6:data 目录下创建一个 myid 文件,内容为1
cd /usr/local/zookeeper/zk1/data
echo 1 >myid
computer1和computer2也相同操作
5. 启动集群cd /usr/local/zookeeper/zk1/bin
./zkServer.sh start
cd /usr/local/zookeeper/zk2/bin
./zkServer.sh start
cd /usr/local/zookeeper/zk3/bin
./zkServer.sh start
6. 查看启动状态cd /usr/local/zookeeper/zk1/bin
./zkServer.sh status
cd /usr/local/zookeeper/zk2/bin
./zkServer.sh status
cd /usr/local/zookeeper/zk3/bin
./zkServer.sh status
Error contacting service. It is probably not runningps:这里我出现了一个错误:
解决思路:
需要telnet ip 端口,看是否通,首先确认本机和虚拟机之间能telnet通,然后确认虚拟机和虚拟机之间能telnet通,然后执行“./zkServer.sh restart”,即可解决
成功的状态:
下载网址:https://kafka.apache.org/downloads
新建kafka目录
cd /usr/local
mkdir kafka
3. 解压tar -zxvf kafka_2.12-3.3.1.tgz
4. 更改文件夹名称mv kafka-3.3.1-src kafka
5. 新建logs文件夹cd /usr/local/kafka/kafka
mkdir logs
6. 修改配置文件vi /usr/local/kafka/kafka/config/server.properties
修改如下配置
①
broker.id=0 #集群里需要用不用的id号
②
listeners=PLAINTEXT://192.168.227.12:9092
③
log.dirs=/usr/local/kafka/kafka/logs
④
zookeeper.connection=192.168.227.11:2181,192.168.227.12:2182,192.168.227.13:2183
⑤
delete.topic.enable=true
7. 将修改后的文件扩展到computer02和computer03
8. 启动kafkacd /usr/local/kafka/kafka/bin
./kafka-server-start.sh ../config/server.properties
启动成功之后是一个阻塞进程,需要打开新的窗口操作
后续持续更新中~
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
本文名称:从新建linux虚拟机到搭建zookeeper+kafka详细版-创新互联
网页链接:http://myzitong.com/article/hdchi.html