近一直在看zookeeper的知识,有所收获,打算写些一些关于zookeeper的博客,也当做是自己的复习和笔记。

上一篇 博客中简单地介绍了centos 7 下如何安装jdk,这一篇将介绍如何在centos中安装zookeeper并做集群部署。

1、下载zookeeper安装包,百度一下zookeeper就可以找到了,建议使用stable版本,我使用的是版本是:zookeeper-3.4.10.tar.gz。

2、通过xshell等工具复制到虚拟机或服务器下,我存放的路径是:/opt/java/zookeeper-3.4.10.tar.gz。使用解压命令:tar -zxvf zookeeper-3.4.10.tar.gz

3、解压完后,会在/opt/java 下看到 /opt/java/zookeeper-3.4.10 这个文件夹,这个文件夹里面有很多内容,如下图:

在这里面,有两个文件夹需要注意,就是bin文件夹和conf文件夹。其中conf 存放的是zookeeper的配置文件,而bin则是存放zookeeper的shell命令形式的服务器和客户端脚本。

4、进入conf文件夹,有个 zoo_sample.cfg 文件,这个是zookeeper配置的示例配置。zookeeper的默认配置的是zoo.cfg。使用 cp zoo_sample.cfg zoo.cfg复制这个zoo_sample.cfg,vim zoo.cfg,打开后看到的内容如下:

5、克隆多个服务器,用于部署集群。vmware->虚拟机->管理->克隆,一直下一步即可。建议由一个有2n台server,1leader、2follower、1observer

6、使用命令:ip addr 查看每台服务器的ip,在每一台服务器的zoo.cfg中,添加下面的代码: 

server.1=192.168.111.128:2888:3181
server.2=192.168.111.129:2888:3181
server.3=192.168.111.130:2888:3181
server.4=192.168.111.131:2888:3181:observer

其中,192.168.111.128、192.168.111.129、192.168.111.130、192.168.111.131,是部署的每一台服务器的ip,2888是用于leader 和follower、observer 之间进行通信的端口,3181 是用于leader选举的端口。这两个端口都是自定义的,只需要端口不被占用即可。zookeeper的client和server的端口是2181。

server.4=192.168.111.131:2888:3181:observer  这一行是用于标识192.168.111.131 这台服务器用于observer,这一行不一定需要有。如果需要部署observer,需要在192.168.111.131 的zoo.cfg 中增加一行:peerType=observer

7、zoo.cfg中同时定义了数据文件(快照)的存放路径:dataDir=/tmp/zookeeper。这个是可以自定义,也可以直接使用。进入/tmp/zookeeper 已经创建。

在/tmp/zookeeper中新建一个文件:myid,用于标识所在服务器在zookeeper集群中的唯一标识,这个文件只有一行数据,如下图所示:

这里的1,就是对面上面的server.1。当然,这里可以随意自定义id,建议是顺序的id。

8、进入zookeeper下的bin目录下,使用命令:sh zkServer.sh start 启动zookeeper,启动成功后如下图所示:

9、使用sh zkServer.sh status 查看启动的情况。刚开始的时候,可能不会马上看到有服务器被选举为leader,因为leader选举需要一点时间,leader 和follower、observer之间的数据同步也需要一点时间。正常后的启动情况如下图,可以看到有1leader 、2follower、1observer。

10、安装的过程中,使用ip addr 可能会看不到ip地址,这个是因为centos 是默认不开启网络的,需要关闭网络防火墙后使用命令sudo service network restart重启网络 ,即可以查看到ip了

11、中途可能会碰到防火墙的问题,使用命令:systemctl disable firewalld.service #禁止firewall开机启动,然后再使用命令:systemctl stop firewalld.service #停止firewall ,重启reboot 即可

centos 7环境下安装部署zookeeper的更多相关文章

  1. Centos 7环境下安装配置Hadoop 3.0 Beta1简记

    前言 由于以前已经写过一篇Centos 7环境下安装配置2.8的随笔,因此这篇写得精简些,只挑选一些重要环节记录一下. 安装环境为:两台主机均为Centos 7.*操作系统,两台机器配置分别为: 主机 ...

  2. CentOS 7.4 下安装部署Nagios监控系统详细攻略(三)

    Nagios是一个流行的电脑系统和网络监控程序,它检测主机和服务,当异常发生和解除时能提醒用户.它是基于GPLv2开发的开源软件,可免费获得及使用. nagios工作原理 nagios的功能是监控服务 ...

  3. Centos 7环境下安装配置MySQL 5.7

    安装步骤为: 1.由于Centos 7版中已经移除MySQL rpm,因此需要到其官方网站上下载rpm,下载完成后,使用以下命令,来安装MySQL的rpm配置. rpm -ivh *****[注释:* ...

  4. windows环境下安装部署并启用zkui的web图形界面

    在此之前的工作:不是本机部署的三个服务器最为伪集群的zookeeper环境,并将三个为服务启动起来. 然后才有了下面的工作. 1. 首先,zkui项目地址:https://github.com/Dee ...

  5. CentOS 7.x下安装部署MySQL 8.0实施手册

    MySQL 8 正式版 8.0.11 已发布,官方表示 MySQL 8 要比 MySQL 5.7 快 2 倍,还带来了大量的改进和更快的性能! 一.  Mysql8.0版本相比之前版本的一些特性 1) ...

  6. centos 7环境下安装jdk

    在此之前已经安装了xshell并能传输文件. 1.下载对应版本的jdk:jdk-8u191-linux-x64.tar.gz 2.上传到centos的目录下 3.解压jdk的gz包,命令: tar - ...

  7. centos,linux环境下安装JDK1.8完整

    进入oracle官网下载安装包,cetos一般选择xx-xx-linux-x64.tar.gz.获取到地址后可以点击下载,也可以使用wget命令下载. 在得到下载好的文件后下面就可以开始安装了.比如我 ...

  8. centos 7环境下安装rabbitmq

    以 前在windows 7下面成功安装过rabbitmq,但是在windows 10下面安装失败,各种问题,各种解决方法都试过,还是不成功,最终放弃治疗. 后来经人指点,在linux下安装rabbit ...

  9. Centos 7 环境下安装 RabbitMQ 3.6.10

    一.单机安装 在Centos7系统下部署(阿里云服务),使用yum安装 hostnamectl set-hostname rabbit01 #永久修改 1.1安装Erlang,因为RabbitMQ 是 ...

随机推荐

  1. 入手这个商业智能工具,建设自助式BI平台轻松搞定

    ​数据的重要性无需多言,可数据的获取和使用却依然不是一件容易的事.尤其是对企业中不掌握数据的广大业务人员,对数据又爱又恨,对掌握数据对IT部门,更是恨多爱少,为了拿到数据分析数据,不断的申请.催促.沟 ...

  2. 命名空间 namespace

    ​ 命名空间是一块程序员可以自己命名的内存区域,用于解决同名冲突的问题. ​ 举例来说,某班及内有三个张三,分别坐在班级的第一排.第三排和最后一排.当老师喊张三时,三个张三都站起来应答,这就是同名冲突 ...

  3. SpringMVC教程--Idea中使用Maven创建SpringMVC项目

    1.新建项目 参照idea教程中的创建maven项目https://www.cnblogs.com/daxiang2008/p/9061653.html 2.POM中加入依赖包 (1)指定版本 (2) ...

  4. 爬虫之爬取B站视频及破解知乎登录方法(进阶)

    今日内容概要 爬虫思路之破解知乎登录 爬虫思路之破解红薯网小说 爬取b站视频 Xpath选择器 MongoDB数据库 爬取b站视频 """ 爬取大的视频网站资源的时候,一 ...

  5. TensorFlow入门示例教程

    本部分的代码目前都是基于GitHub大佬非常详细的TensorFlow的教程上,首先给出链接: https://github.com/aymericdamien/TensorFlow-Examples ...

  6. gdb调试快速入门

    编译指令 gcc test.c -o test -g -g是加入调试信息,加入源码信息 启动gdb调试 gdb test 进入gdb中 设置参数 set args 10 20 显示参数show age ...

  7. JZ-056-删除链表中重复的结点

    删除链表中重复的结点 题目描述 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针. 例如,链表1->2->3->3->4-> ...

  8. LeetCode-001-两数之和

    两数之和 题目描述:给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标. 你可以假设每种输入只会对应一个答 ...

  9. CentOS 8: yum仓库配置

    在CentOS 8中,使用yum时出现错误,镜像列表中没有url,类似如下: Error: Failed to download metadata for repo 'appstream': Cann ...

  10. HarmonyOS小白入门设备开发的“芯”路历程

    HarmonyOS Connect设备开发,相信不少刚入门的开发者都被这些问题所困扰,面对五花八门的开发板不知道该怎么选取?芯片.模组.开发板傻傻分不清?如何使用代码控制开发板? 本期,我们将一一为你 ...