1、Zookeeper的安装部署

7.1 Zookeeper工作机制

7.1.1、Zookeeper集群角色

Zookeeper集群的角色:  Leader 和  follower (Observer)

zk集群最好配成奇数个节点

只要集群中有半数以上节点存活,集群就能提供服务

7.2 Zookeeper部署

7.2.1 机器准备

1/ 安装到3台虚拟机上,准备的三台服务器地址是:

C:\Windows\System32\drivers\etc\hosts中配置的内容如下:

192.168.106.80      hadoop

192.168.106.81      hadoop2

192.168.106.82      hadoop3

如果想同时能够操作三台服务器,可以进行如下配置:

2/ 安装好JDK

3/ 上传安装包。上传用工具。

4/ 解压

su - hadoop(切换到hadoop用户),如果直接是root用户则不需要这样切换

tar -zxvfzookeeper-3.4.5.tar.gz(解压)

5/ 重命名

mv zookeeper-3.4.5 zookeeper(重命名文件夹zookeeper-3.4.5为zookeeper)

可以删除里面一些源码工程相关的文件,剩下的是这些:

7.2.2修改环境变量

(注意:3台zookeeper都需要修改)

1/ su – root(切换用户到root)

2/ vi /etc/profile(修改文件)

3/ 添加内容:

exportZOOKEEPER_HOME=/home/hadoop/zookeeper

export PATH=$PATH:$ZOOKEEPER_HOME/bin

4/ 加载环境配置:

source /etc/profile

5/ 修改完成后切换回hadoop用户:

su - hadoop

7.2.3 修改Zookeeper配置文件

1、用root用户操作

cd zookeeper/conf

cp zoo_sample.cfg zoo.cfg

2、vi zoo.cfg

3、添加内容:

dataDir=/home/tuzq/software/zookeeper/zkdata

dataLogDir=/home/tuzq/software/zookeeper/log

server.1= hadoop:2888:3888     ## (心跳端口、选举端口)

server.2= hadoop2:2888:3888

server.3= hadoop3:2888:3888

4、创建文件夹:

cd /home/tuzq/software/zookeeper/

mkdir zkdata

mkdir -m 755 log

5、在data文件夹下新建myid文件,myid的文件内容为:

cd zkdata

echo 1 > myid

7.2.4 分发安装包到其他机器

scp -r /root/apps root@hadoop2:/root/

scp -r /root/apps root@hadoop3:/root/

7.2.5 修改其他机器的配置文件

1、修改myid文件

到hadoop2上:修改myid为:2

到hadoop3上:修改myid为:3

7.2.6 启动(每台机器)

注:

1、事先将三台服务器的防火墙都关掉

2、全网统一hosts映射

先配好一台上的hosts

在hadoop机器中的hosts文件中做如下修改:

[root@hadoop zkdata]# cat /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.106.80      hadoop

192.168.106.81      hadoop2

192.168.106.82      hadoop3

然后:

scp /etc/hosts  hadoop2:/etc

scp /etc/hosts  hadoop3:/etc

查看hadoop2中的hosts文件中的内容

[root@hadoop2 zkdata]# cat /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.106.80      hadoop

192.168.106.81      hadoop2

192.168.106.82      hadoop3

3、然后一台一台地启动

bin/zkServer.sh start

或者编写一个脚本来批量启动所有机器:

for host in " hadoop hadoop2 hadoop3"

do

ssh $host "source /etc/profile;/home/tuzq/software/zookeeper/bin/zkServer.shstart"

vim startupZK.sh

chmod +x startupZK.sh

#!/bin/bash

for host in "hadoop hadoop2 hadoop3"

do

ssh $host "source /etc/profile;/home/tuzq/software/zookeeper/bin/zkServer.sh start"

done

7.2.7 查看集群状态

1、jps(查看进程)

2、zkServer.sh status(查看集群状态,主从信息)

分别查看hadoop hadoop2 hadoop3这三台服务器上的zookeeper的状态

Zookeeper的安装部署的更多相关文章

  1. zookeeper,hadoop安装部署其实与防火墙无关

    网上查看了很多人关于hadoop,zookeeper的文章,大多都把关闭防火墙作为首要前提,个人觉得这大可不必. 首先你需要知道你部署的是什么东西,它需要哪些端口即可.把相关端口打开就可以了啊.然后把 ...

  2. Zookeeper单机安装部署与配置(二)

    在上篇博客中简单介绍了Zookeeper的特点和应用场景,详情可参考:<Zookeeper简介(一)>,那么这篇博客我们介绍一下关于Zookeeper的单机模式安装步骤与配置. 环境准备 ...

  3. Zookeeper分布式安装部署

    1. 解压安装 1.1 解压Zookeeper安装包到/opt/module/目录下 tar -zxvf /opt/software/apache-zookeeper-3.6.2-bin.tar.gz ...

  4. Zookeeper介绍及安装部署

    本节内容: Zookeeper介绍 Zookeeper特点 Zookeeper应用场景 用到了Zookeeper的一些系统 Zookeeper集群安装部署 一.Zookeeper介绍 是一个针对大型分 ...

  5. ZooKeeper的安装及部署

    Zookeeper的安装部署 2.1 Zookeeper的安装 Zookeeper安装前需要安装好 JDK.配置好环境变量. 下载:zookeeper-3.4.5-cdh5.7.0.tar.gz 解压 ...

  6. ZooKeeper 笔记(1) 安装部署及hello world

    先给一堆学习文档,方便以后查看 官网文档地址大全: OverView(概述) http://zookeeper.apache.org/doc/r3.4.6/zookeeperOver.html Get ...

  7. 161209、简要分析ZooKeeper基本原理及安装部署

    一.ZooKeeper 基本概念 1.ZooKeeper 是什么? Zookeeper官网地址: http://zookeeper.apache.org/ Zookeeper官网文档地址:http:/ ...

  8. ZooKeeper 安装部署及hello world(转)

    ZooKeeper  安装部署及hello world 先给一堆学习文档,方便以后查看官网文档地址大全:OverView(概述)http://zookeeper.apache.org/doc/r3.4 ...

  9. (转)ZooKeeper 笔记(1) 安装部署及hello world

    ZooKeeper 笔记(1) 安装部署及hello world   先给一堆学习文档,方便以后查看 官网文档地址大全: OverView(概述) http://zookeeper.apache.or ...

随机推荐

  1. asp.net core 三 Nuget包管理

        参考连接:http://www.cnblogs.com/netcore2/p/7412891.html     这里的说明,基本就是学习了别人的文章,自己做了个备份     asp.net c ...

  2. sys.exc_info()可以捕获到任意异常

    import sys try: a = 3 assert a > 4 except: exc = sys.exc_info()#返回异常的元祖 print (exc)

  3. [转]map函数补充

    map()函数 map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回. 例如,对于li ...

  4. phpmyadmin设置编码和字符集gbk或utf8_导入中文乱码解决方法

    一.phpmyadmin设置新建数据库的默认编码为utf8编码的方法 1:新建数据库  my_db 2:使用sql语句  set character_set_server=utf8;  //设置默认新 ...

  5. zookeeper初探

    安装三台linux虚拟机,安装好java环境,并配置好网络以及host文件,分别改好hostname为node0.node1.node2 上传下载好的zookeeper文件到node0的/usr/lo ...

  6. TNS-12560: Message 12560 not found; No message file for product=network, facility=TNS报错

    [oracle@localhost bin]$ ./lsnrctl startLSNRCTL for Linux: Version 12.2.0.1.0 - Production on 17-APR- ...

  7. 理解error和exception之间的区别

    很多程序员不清楚error和exception之间的区别,这区别对于如何正确的处理问题而言非常重要(见附1,"简要的叙述error和exception").就像Mary Campi ...

  8. MyBatis 框架系列之基础初始

    1.什么是 MyBatis MyBatis 本是 apache 的一个开源项目 iBatis,后改名为 MyBatis,它 是一个优秀的持久层框架,对 jdbc 的操作数据库的过程进行封装,使开发者只 ...

  9. [LeetCode] K Inverse Pairs Array K个翻转对数组

    Given two integers n and k, find how many different arrays consist of numbers from 1 to n such that ...

  10. [LeetCode] 01 Matrix 零一矩阵

    Given a matrix consists of 0 and 1, find the distance of the nearest 0 for each cell. The distance b ...