1. 安装JDK

1.1 官网下载JDK

进入网址<a href="http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html">JDK官网</a>
选择对应jdk版本下载

1.2 建立Java安装目录

cd /usr # 路径根据自己意愿选择
mkdri java

1.3 将下载的压缩包放入安装目录下

cp jdk-8u60-linux-x64.tar.gz  /usr/java/

1.4 解压

tar -zxvf jdk-8u60-linux-x64.tar.gz

1.5 配置环境变量

vi /etc/profile  # 打开文件

添加Java的路径, 将下面内容添加到文件结尾

export JACA_HOME=/usr/java/jdk1.8.0_60 # java解压后的目录
export CLASSPATH=$JAVA_HOME/lib/
export JRE_HOME=$JAVA_HOME/jre
export PATH=$PATH:$JAVA_HOME/bin

1.6 重新加载环境变量

source /etc/profile

1.7 检查是否安装成功

java -version

出现版本信息则代表安装成功

java version "1.8.0_60"
Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
Java HotSpot(TM) Client VM (build 25.60-b23, mixed mode)

2 安装ZooKeeper

2.1 下载压缩包

<a href="http://zookeeper.apache.org/releases.html"> 官网地址</a>

<a href="https://archive.apache.org/dist/zookeeper/zookeeper-3.4.5/zookeeper-3.4.5.tar.gz">zookeeper-3.4.5.tar.gz</a>

2.2 解压

su -hadoop #切换到hadoop用户
tar -zxvf zookeeper-3.4.5.tar.gz

2.3 重命名

mv zookeeper-3.4.5 zookeeper # 将解压后的文件夹重命名,方便后续操作

2.4 修改环境变量

su -root # 切换到root用户操作
vi /etc/profile # 打开文件
# 在profile文件结尾添加内容
export ZOOKEEPER_HOME=/home/hadoop/zookeeper # zookeeper的解压目录
export PATH=$PATH:$ZOOKEEPER_HOME/bin

2.5 重新加载环境变量

source /etc/profile

2.6 修改配置文件

su -hadoop # 切换用户
cd zookeeper/conf # 进入配置文件目录
cp zoo_sample.cfg zoo.cfg # 复制一份配置文件模版
vi zoo.cfg # 打开配置文件进行修改
# zoo.cfg文件, 添加以下内容
dataDir=/home/hadoop/zookeeper/data # 数据存放目录
dataLogDir=/home/hadoop/zookeeper/log # 日志存放目录
server.1=server1:2888:3888 # (主机名, 心跳端口、数据端口) 搭建集群的其他服务器的信息 server1是在/etc/hosts文件中进行域名映射的主机名,如果没有做映射那么就使用ip地址
server.2=server2:2888:3888
server.3=server3:2888:3888

2.7 创建文件夹

cd /home/hadoop/zookeeper
mkdir -m 755 data # 是在配置文件中设置的目录
mkdir -m 755 log

2.8 添加myid

# 进入data文件夹
cd data
# 创建新文件 myid
vi myid
# myid 文件 添加内容是在配置文件中设置的主机对应的数字
1

2.9 集群分发

# 分发zoopkeeper
scp -r /home/hadoop/zookeeper hadoop@server2:/home/hadoop/
scp -r /home/hadoop/zookeeper hadoop@server3:/home/hadoop/
# 分发环境配置
scp /etc/profile root@server2:/etc/profile
scp /etc/profile root@server3:/etc/profile
# 修改其他服务器上的myid
# 在server2上将myid文件的内容修改为 2
# 在server3上将myid文件的内容修改为 3

2.10 启动

zkServer.sh start # 注意:每台服务器都要启动

2.11 查看集群状态

jps  # 查看进程

出现QuorumPeerMain进程代表启动成功

2125 QuorumPeerMain
2159 Jps

zkServer.sh status # 查看集群的状态,主从信息

会输出以下信息

ZooKeeper JMX enabled by default

Using config: /root/zookeeper/bin/../conf/zoo.cfg # 配置文件路径

Mode: leader/ follower # leader代表老大,follower代表小弟

3. ZooKeeper集群启动shell脚本

3.1 创建shell文件

vi /home/hadoop/ZK_All_Start.sh # 名字自己愿意取啥都行

在文件中添加下面内容

#!/bin/bash
echo "开始启动zookeeper服务..." for i in 1 2 3
do
echo "正在启动server0$i的zookeeper服务..."
# 需要将server修改为自己集群的主机名 我的主机名分别为server1, server2, server3
ssh server$i "source /etc/profile;/home/hadoop/zookeeper/bin/zkServer.sh start"
# /home/hadoop/zookeeper/bin/zkServer.sh start 这里需要修改为自己的解压路径
done

3.2 添加可执行权限

chmod +x /home/hadoop/ZK_All_Start.sh

3.3 使用方法

./ZK_All_Start.sh # 需要shell脚步的目录

作者:python_LiuYi
链接:https://www.jianshu.com/p/a172c0d9704f

ZooKeeper集群详细安装教程的更多相关文章

  1. ZooKeeper 集群的安装、配置---Dubbo 注册中心

    ZooKeeper 集群的安装.配置.高可用测试 Dubbo 注册中心集群 Zookeeper-3.4.6 Dubbo 建议使用 Zookeeper 作为服务的注册中心. Zookeeper 集群中只 ...

  2. Zookeeper 集群的安装及高可用性验证已完成!

    安装包 kafka_2.12-0.10.2.0.tgz zookeeper-3.3.5.tar.gz Java 环境 Zookeeper 和 Kafka 的运行都需要 Java 环境,Kafka 默认 ...

  3. Dubbo入门到精通学习笔记(十三):ZooKeeper集群的安装、配置、高可用测试、升级、迁移

    文章目录 ZooKeeper集群的安装.配置.高可用测试 ZooKeeper 与 Dubbo 服务集群架构图 1. 修改操作系统的/etc/hosts 文件,添加 IP 与主机名映射: 2. 下载或上 ...

  4. Zookeeper集群的安装和使用

    Apache Zookeeper 由 Apache Hadoop 的 Zookeeper 子项目发展而来,现已经成为 Apache 的顶级项目,它是一个开放源码的分布式应用程序协调服务,是Google ...

  5. zookeeper集群的安装和配置

    Zookeeper的目的是封装好复杂易出错的关键服务,将简单易用的接口和性能高效.功能稳定的系统提供给用户.Zookeeper有两种运行模式,单机模式(Standalone)和集群模式(Distrib ...

  6. zookeeper集群环境安装配置

    众所周知,Zookeeper有三种不同的运行环境,包括:单机环境.集群环境和集群伪分布式环境 在此介绍的是集群环境的安装配置 一.下载: http://apache.fayea.com/zookeep ...

  7. zookeeper集群的安装

    顾名思义zookeeper就是动物园管理员,他是用来管hadoop(大象).Hive(蜜蜂).pig(小猪)的管理员, Apache Hbase和 Apache Solr 的分布式集群都用到了zook ...

  8. ZooKeeper集群的安装、配置、高可用测试

    Dubbo注册中心集群Zookeeper-3.4.6 Dubbo建议使用Zookeeper作为服务的注册中心. Zookeeper集群中只要有过半的节点是正常的情况下,那么整个集群对外就是可用的.正是 ...

  9. 大数据集群环境 zookeeper集群环境安装

    大数据集群环境 zookeeper集群环境准备 zookeeper集群安装脚本,如果安装需要保持zookeeper保持相同目录,并且有可执行权限,需要准备如下 编写脚本: vi zkInstall.s ...

随机推荐

  1. css居中小技巧

    一.行内元素-水平居中 在父元素的样式中添加: text-align:center; 二.定宽块级元素-水平居中 所谓定宽块级元素指块级元素的宽度指定,而不是默认的100%,否则此方法无效: 代码: ...

  2. BZOJ 1443 游戏(二分图博弈)

    新知识get. 一类博弈问题,基于以下条件: 1.博弈者人数为两人,双方轮流进行决策.2.博弈状态(对应点)可分为两类(状态空间可分为两个集合),对应二分图两边(X集和Y集).任意合法的决策(对应边) ...

  3. Promise.all和Promise.race区别,和使用场景

    一.Pomise.all的使用 常见使用场景 : 多个异步结果合并到一起 Promise.all可以将多个Promise实例包装成一个新的Promise实例.用于将多个Promise实例,包装成一个新 ...

  4. [WC2018]州区划分——FWT+DP+FST

    题目链接: [WC2018]州区划分 题目大意:给n个点的一个无向图,点有点权,要求将这n个点划分成若干个部分,每部分合法当且仅当这部分中所有点之间的边不能构成欧拉回路.对于一种划分方案,第i个部分的 ...

  5. Android 根据版本号更新

    1 读取android 版本号 具体文件位置: app下 build.gradle文件 versionCode和 versionName defaultConfig { versionCode 1 v ...

  6. 三:C#对象转换Json时的一些高级(特殊)设置;

    导航目录: Newtonsoft.Json 概述 一:Newtonsoft.Json 支持序列化与反序列化的.net 对象类型:    二:C#对象.集合.DataTable与Json内容互转示例: ...

  7. 一个模拟——抢票部分功能的 简单版(主要实例化一下 Lock 的使用)

    """ 抢票! 多个用户在同时读写同一个数据 """ from multiprocessing import Process,Lock im ...

  8. pycharm修改注释颜色

    原来的注释是红色的,看着跟报错似的.. 还有flask中html文件的注释,我修改了Django的注释颜色,flask也就改了 也可以直接点击下面的代码,哪里难看点哪里

  9. MT【305】丹德林双球

    如图.在正方体$ABCD-A_1B_1C_1D_1$中,点$M,N$分别是直线$CD,AB$上的动点,点$P$是$\Delta A_1C_1D_1$内的动点(不包括边界),记直线$DP$与$MN$所成 ...

  10. 【HDU - 4927】Series 1

    BUPT2017 wintertraining(15) #5I 题意 输出序列A[1..n]的第n-1阶差分(一个整数). 题解 观察可知答案就是 \[ \sum_{i=0}^{n-1} {(-1)^ ...