从零开始搭建zookeeper集群(超详细)

从零开始搭建zookeeper集群(超详细)

zookeeper的集群环境搭建其实非常简单,我也是对zookeeper完全不了解的情况下搭建集群,下面详细的整理一下我搭建的过程,大家跟着下面的步骤一步一步来,基本上是能实现的。

主要包括如下的几个大的步骤

  • 虚拟机安装
  • 虚拟机的网络配置
  • jdk安装
  • zookeeper安装
  • 配置文件的设置

下面详细的介绍上面的具体步骤

一、linux虚拟机的安装

这个可参考下面这个博客:http://blog.51cto.com/13438667/2059926

我安装的linux的centos的版本是6.8。

下载地址:链接:https://pan.baidu.com/s/1XlyEDjg86hABc-3QfSQKsA

提取码:xo5w

跟着上面这个步骤做肯定是没问题的,但是我这边有些小意见

1、内存可以根据自己电脑的配置进行修改,一般1G+20G就够了

2、内存分区可以根据自己上面配置的内存进行调整

二、虚拟机网络配置

虚拟机如果不配置网络的话就非常不好玩了,同时也非常不方便,比如下载文件都干不了,导致无法安装软件。下面详细介绍一下网络linux虚拟机网络的配置。

1、虚拟机网络编辑

(1)在VMware Workstation上面的菜单栏中点击“编辑”–>“虚拟机网络编辑器”进入到如下的界面

从零开始搭建zookeeper集群(超详细)

 (2)进入更改设置之后

从零开始搭建zookeeper集群(超详细)

2、修改网络配置文件

(1)进入到linux系统,进入到network-scripts文件夹下面

cd /etc/sysconfig/network-script

(2)打开ifcfg-eth0

Vi ifcfg-eth0

从零开始搭建zookeeper集群(超详细)

参考我上面的截图配置,尤其是有箭头标注的,配置完成之后保存

最后重启网络服务

(3)service network restart

如果上面的步骤都操作正确的话,应该是可以上网的,ping 一下百度试试

从零开始搭建zookeeper集群(超详细)

通过上面的步骤,整个linux系统和网络已经弄好了,如果需要搭建zookeeper集群的话,最好需要三台机器,所以可以重复上面的步骤再创建两台虚拟机

三、jdk安装

Linux上安装jdk和zookeeper非常的简单,直接下载压缩包,然后解压就可以了,但是jdk需要配置环境变量,有两个方法安装他们,(1)从windows系统中拷贝下载好的压缩文件到linux虚拟机中(2)直接在虚拟机中使用wget指令下载。我这里为了简单打算jdk的安装就使用windows中拷贝,zookeeper安装就用wget指令下载。

1、从window中拷贝jdk的压缩文件到linux系统中,使用的工具是secureCRT,另外jdk可以从官网下载,也可以从我的百度云下载

链接:https://pan.baidu.com/s/1INHY2RkBtRNLTzOBelsm0g 提取码:p72n

(1)使用secureCRT创建SFTP的session

从零开始搭建zookeeper集群(超详细)

(2)使用指令传输文件

使用put指令传输或者直接将jdk托到secureCRT的界面中,我是传输到我的linux中的/soft/jdk路径

(3)解压tar -zvxf指令

tar -zvxf jdk-8u77-linux-x64.tar.gz

(4)配置jdk环境变量

打开/etc/profile文件,在最下面添加如下的设置

从零开始搭建zookeeper集群(超详细)

(5)刷新profile文件

source /etc/profile

完成了上面的步骤基本上就安装好了jdk环境了,使用java -version测试一下

从零开始搭建zookeeper集群(超详细)

出现上面的步骤,就表示已经jdk已经配置好了

四、zookeeper安装

Zookeeper安装我就用wget指令进行下载了

1、下载zookeeper

wget http://archive.apache.org/dist/zookeeper/stable/zookeeper-3.4.12.tar.gz

如果报如下错误:

从零开始搭建zookeeper集群(超详细)

需要先安装wget

yum install wget

2、解压zookeeper

tar -zvxf zookeeper-3.4.12.tar.gz

3、增加zoo.cfg,我这边是直接将zoo_sample.cfg改成zoo.cfg

mv zoo_sample.cfg  zoo.cfg

4、测试,创建一个节点试试

进入对应的zookeeper中的bin目录,这里面有客户端和服务端启动的脚本

(1)启动zk服务

 ./zkServer.sh start

(2)启动zk客户端

./zkCli.sh

启动成功如下:

从零开始搭建zookeeper集群(超详细)

(3)创建节点

从零开始搭建zookeeper集群(超详细)

上面的步骤完成表示zookeeper已经安装好了,如果需要搭建集群的话,需要在其他的linux虚拟机中重复上面的步骤安装jdk和zookeeper

5、关闭防火墙

关闭命令:  service iptables stop

永久关闭防火墙:chkconfig iptables off

两个命令同时运行,运行完成后查看防火墙关闭状态

service iptables status

五、配置文件设置

集群的最后一步就是设置每一个linux虚拟机的zookeeper的集群文件

1、修改zoo.cfg文件

在zoo.cfg文件中增加红色框中的内容,我这里是将zookeeper-3.4.12重新命名了zookeeper,不重命名也行

从零开始搭建zookeeper集群(超详细)

解释一下上面两个红色标记的地方

创建data目录是因为需要在里面创建myid文件,内容为0,1或者2…这个数字表示下面

server.0=192.168.0.230:2888:3888中的server.num中的num的值,后面的ip为linux虚拟机的ip地址,这两者要一一对应,比如我ip地址为230的虚拟机,它的myid的值就是0,ip地址为231的myid对应的就是1…

从零开始搭建zookeeper集群(超详细)

到这里集群的配置已经ok了,我们测试一下吧

分别启动linux虚拟机的zk服务

./zkServer.sh start

分别看下他们是follower还是leader

./zkServer.sh status

从零开始搭建zookeeper集群(超详细)

是不是非常的简单呢,按照上面的步骤,一个小时之内就能搭建zookeeper 

 

 

 

 

 

 

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/111191.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • freemarker map遍历_freemarker使用流程

    freemarker map遍历_freemarker使用流程 freemarker中map遍历获取值后台数据: HashMap<String,String>map=newHashMap<>();map.put("adf","空间");map.put("xxx","空间2");map.put("jjj","空间3");model.addAttribute

    2022年9月21日
    0
  • Ubuntu修改密码和用户名

    Ubuntu修改密码和用户名​Ubuntu是一个Linux操作系统,修改密码和用户名是有危险的动作,请谨慎修改。一、Ubuntu修改密码和用户名Ubuntu更改密码步骤:1、进入Ubuntu,打开一个终端,输入sudosu转为root用户。注意,必须先转为root用户!!!2、sudopasswduser(user是对应的用户名)3、输入新密码,确认密码。4、修改密码成功,重启,输入新密码进入Ubun…

    2022年9月29日
    0
  • 组合模式解决什么问题_组合模式实例

    组合模式解决什么问题_组合模式实例组合模式 Composite动机模式定义实例结构要点总结笔记动机在软件某些情况下,客户代码过多地依赖于对象容器复杂的内部实现结构,对象内部实现结构(而非抽象接口)地变化将引起客户代码地频繁变化.带来代码地维护性,扩展性等弊端如何将”客户代码与复杂地对象容器结构”解耦?让对象容器自己来实现自身地复杂结构,从而使得客户代码就像处理简单对象一样来处理复杂地对象容器模式定义将对象组合成树形结构以表示”整体-部分”地层次结构.Composite使得用户对单个对象和组合对象地使用具有一致性(稳定)实例树形

    2022年8月9日
    3
  • C语言 list 链表

    C语言 list 链表目录一、list简介二、list包含方法2.1.push_front2.2.push_back2.3.begin2.3.end2.2.pop_front2.2.pop_back2.2.size2.2.empty2.2.clear三、源码list.clist.h一、list简介这里用双向链表实现,包含插入头、插入尾、删除头、删除尾等操作。二、list包含方法2.1.push_front功能插入数据到list头部参数list:list指针,data:插入数据指

    2022年7月12日
    17
  • pycharm2021.12激活_在线激活「建议收藏」

    (pycharm2021.12激活)2021最新分享一个能用的的激活码出来,希望能帮到需要激活的朋友。目前这个是能用的,但是用的人多了之后也会失效,会不定时更新的,大家持续关注此网站~https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~00…

    2022年3月30日
    76
  • Laravel 5.3 用户验证源码探究 (一) 路由与注册

    Laravel 5.3 用户验证源码探究 (一) 路由与注册

    2021年10月24日
    38

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号