机器配置:

机器

Hostname

user

192.168.169.139  

node139

hadoop  

192.168.169.140

node140

hadoop

192.168.169.141

node141

hadoop

root用户先新建用户hadoop

useradd hadoop

passwd hadoop

输入密码并确认密码即可

1、安装局部jdk

1)hadoop用户登录
2)进入用户主目录
cd
3)上传jdk包到目录下,并解压
4)修改    .bash _profile文件
vi  .bash_profile
添加:
export JAVA_HOME=/home/hadoop/jdk1.7(自己安装解压后的jdk路径----自行修改)
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
5)添加完毕进行保存并执行
source .bash_profile
6)看是否生效,执行
java -version
返回

3台机器的hadoop用户中均需要安装并配置环境变量(jdk配置路径保持相同,解压后文件夹名称保持相同)

2、关闭防火墙

依次执行:

chkconfig iptables off(永久关闭,但需重启,所以执行下面语句进行临时关闭)

service iptables stop(临时关闭)

service iptables status(防火墙状态进行查看)

3、修改主机hostname

vi /etc/sysconfig/network(需重启生效)

echo ***(例如:node139)> /proc/sys/kernel/hostname(即时生效,需重新打开一个shell窗口方能看到)

4、配置静态的DNS域名

手动配置三台机器的域名,实现三台机器之间通过域名即可访问。

在node139机器上使用root账号通过Xshell工具登录系统,修改hosts文件

输入命令:vi /etc/hosts

增加3台主机的域名配置:

192.168.169.139 node139

192.168.169.140 node140

192.168.169.141 node141

保存退出即可

以上1-4步骤每台服务器均需操作

5、配置时钟同步ntpd服务

为使集群相关机器所有时间均保持相同,故而进行配置,很重要。

现在将139服务器作为服务端,root用户登录

修改配置:

vim /etc/ntp.conf

取消下面注释

server  127.127.1.0   

fudge   127.127.1.0 stratum 10 (外部时间服务器不可用时,以本地时间作为时间服务)

 

6、同样的root用户在客户端140和141服务器上面修改配置文件

vim /etc/ntp.conf

添加一行服务端的server,并取消下面标注的两行注释

server node139

server  127.127.1.0    

fudge   127.127.1.0 stratum 10

7、启动ntp服务端(node139)上的ntp服务,启动后,一般需要5-10分钟左右的时候才能与外部时间

服务器开始同步时间(因此不急着执行9-11步骤,否则会报20 Mar 23:11:31 ntpdate[61783]: no server

suitable  for synchronization found)。

输入命令:   service ntpd start  

8、输入命令 ps -ef | grep ntp   查看ntpd进程是否启动

9、客户端时间同步,输入命令 ntpdate node139 查看时间服务器同步时间 (node140和node141均执行)

10、输入命令hwclock -w 更新客户端bios时钟node140和node141均执行)

11、输入命令 crontab -e 将时间同步设置为定时任务node140和node141执行),添加下面内容

0-59/10 * * * * ntpdate node139 && hwclock -w

注解:增加一个10分钟一次的时间同步任务

12、zookeeper集群安装(node139服务器hadoop用户)

上传zookeeper-3.4.5-cdh5.5.4.tar.gz包至hadoop用户主目录,解压,解压后删除tar包

上传包完毕后依次执行

安装包下载地址

链接:https://pan.baidu.com/s/1V4klTVidPEAkkn8W_f8_Ow

密码:koye

tar -zxvf zookeeper-3.4.5-cdh5.5.4.tar.gz

rm -rf  zookeeper-3.4.5-cdh5.5.4.tar.gz

13、进入到zookeeper的安装目录

 cd zookeeper-3.4.5-cdh5.5.4/

14、新建data和logs文件夹

mkdir data

mkdir logs

 

15、复制zoo_sample.cfg文件

cd  conf/

cp zoo_sample.cfg zoo.cfg

16、修改zoo.cfg文件

vi  zoo.cfg

tickTime=2000

initLimit=5

syncLimit=2

dataDir=/home/hadoop/cm/zookeeper-3.4.5-cdh5.5.4/data
dataLogDir=/home/hadoop/cm/zookeeper-3.4.5-cdh5.5.4/logs

clientPort=2181 

server.1=node139:2888:3888
server.2=node140:2888:3888

server.3=node141:2888:3888

maxClientCnxns=60

minSessionTimeout=4000

maxSessionTimeout=300000

注释:

tickTime:心跳时间

initLimit:多少个心跳时间内,允许其他server连接并初始化数据

syncLimit:多少个tickTime内,允许follower节点同步

dataDir:存放内存数据文件目录,根据实际环境修改

dataLogDir:存放日志文件目录,根据实际环境修改

clientPort:监听端口,使用默认2181端口

server.x:配置集群主机信息,[hostname]:[通信端口]:[选举端口],根据自己的主机信息修改

maxClientCnxns:最大并发客户端数,用于防止DOS的,设置为0是不加限制

minSessionTimeout:最小的客户端session超时时间(单位是毫秒)

maxSessionTimeout:最大的客户端session超时时间(单位是毫秒)

17、将本机安装目录,通过scp全部拷贝至另外2台机器。

输入命令:

scp -r zookeeper-3.4.5-cdh5.5.4/ hadoop@node140:/home/hadoop/cm/

scp -r zookeeper-3.4.5-cdh5.5.4/ hadoop@node141:/home/hadoop/cm/

输入yes和密码就能完美复制过去

18、在三台服务器的zookeeper安装目录下的data文件夹下面新建文件myid

touch myid

vi myid

分别输入数字1、2、3,对应上面配置文件的server后面的数字

19、Zookeeper的启动停止

分别进入三台服务器的zookeeper安装目录,输入命令bin/zkServer.sh start   启动Zookeeper服务

20、进入节点,执行命令为:

bin/zkCli.sh -server  192.168.169.139:2181 回车

ls  /   (查看当前 ZooKeeper 中所包含的内容,输入命令quit 退出Zookeeper服务)

21、启动zookeeper服务后可以通过jps命令查看zookeeper进程,进程名为QuorumPeerMain

22、在zookeeper安装目录下输入命令 bin/zkServer.sh status 各个节点的状态

23、如果需要停止zookeeper服务,则在zookeeper安装目录上输入命令 bin/zkServer.sh stop 

zookeeper3.4.5集群安装的更多相关文章

  1. 分布式Apache ZooKeeper-3.4.6集群安装

    fesh个人实践,欢迎经验交流!本文Blog地址:http://www.cnblogs.com/fesh/p/3900253.html Apache ZooKeeper是一个为分布式应用所设计的开源协 ...

  2. (转)ZooKeeper-3.3.4集群安装配置

    转载于 千与 的 http://blog.csdn.net/shirdrn/article/details/7183503 ZooKeeper是一个分布式开源框架,提供了协调分布式应用的基本服务,它向 ...

  3. ZooKeeper-3.3.4集群安装配置(转载)

    ZooKeeper是一个分布式开源框架,提供了协调分布式应用的基本服务,它向外部应用暴露一组通用服务——分布式同步(Distributed Synchronization).命名服务(Naming S ...

  4. zookeeper3.4.13集群安装

    环境: Centos7.6 Zookeeper3.4.13 Java1.8 安装前准备 安装java 官网下载jdk-8u201-linux-x64.tar.gz 备用 三台主机:192.168.2. ...

  5. ZooKeeper3.4.10集群安装配置-Docker

    一. 服务器规划 主机 IP 端口 备注 b-mid-24 172.16.0.24 2181, 2888, 3888 2181:对cline端提供服务 3888:选举leader使用 2888:集群内 ...

  6. 原创zookeeper3.4.6集群安装

    tar -zxvf zookeeper-3.4.6.tar.gz -C /home/hadoop/ vi ~/.bash_profile export ZOOKEEPER_HOME=/home/had ...

  7. ZooKeeper-3.3.4集群安装配置

    https://blog.csdn.net/shirdrn/article/details/7183503

  8. ubuntu12.04+kafka2.9.2+zookeeper3.4.5的伪分布式集群安装和demo(java api)测试

    博文作者:迦壹 博客地址:http://idoall.org/home.php?mod=space&uid=1&do=blog&id=547 转载声明:可以转载, 但必须以超链 ...

  9. Storm-1.0.1+ZooKeeper-3.4.8+Netty-4.1.3 HA集群安装

    Storm-1.0.1+ZooKeeper-3.4.8+Netty-4.1.3 HA集群安装 下载Storm-1.0.1 http://mirrors.tuna.tsinghua.edu.cn/apa ...

随机推荐

  1. 转载:JMeter压力测试入门教程[图文]

    JMeter压力测试入门教程[图文] Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试,它最初被设计用于Web应用测试但后来扩展到其他测试领域. 它可 ...

  2. list<> 中find的使用

    昨天要在 std::list<std::string> 中判断是否存在某一字符串 std::string . 我首先想到的是 list迭代+std::string重载的"==&q ...

  3. php 相同的产品 一个背景色

    Array ( [0] => 12 [1] => 17 [2] => 17 [3] => 17 [4] => 17 [5] => 3 [6] => 3 [7] ...

  4. Educational Codeforces Round 22 E. Army Creation 主席树 或 分块

    http://codeforces.com/contest/813/problem/E 题目大意: 给出长度为n的数组和k,  大小是1e5级别. 要求在线询问区间[l, r]权值,  权值定义为对于 ...

  5. CH Round #55 - Streaming #6 (NOIP模拟赛day2)(被虐哭)

    http://ch.ezoj.tk/contest/CH%20Round%20%2355%20-%20Streaming%20%236%20%28NOIP%E6%A8%A1%E6%8B%9F%E8%B ...

  6. 2014-04-17-网易有道-研发类-笔试题&amp;參考答案

    一套卷子,共10道小题,3道编程大题 一.填空&选择 1.选择:给了一个递归求Fibonacci的代码,问算法复杂度 指数复杂度 2.选择:忘记了,应该不难 3.选择:给你52张除掉大小王的扑 ...

  7. Xcode The operation couldn’t be completed. (NSURLErrorDomain error -1012.)

    使用Xcode SVN 出现问题 The operation couldn’t be completed. (NSURLErrorDomain error -1012.) 解决方法: 打开终端 然后输 ...

  8. AOSP5.0换8G eMMC不能开机问题

    AOSP5.0 MT6572平台.用H9TP32A4GDBCPR_KGM这颗4G的eMMC就能够.可是用H9TP65A8JDACPR_KGM这个8G的就开不了机,一直是重新启动.用串口抓LOG发现以下 ...

  9. 在odl中怎样实现rpc

    opendaylight作为sdn主要开源项目,採用osgi框架.已经得到非常多厂商的支持.氦版本号也公布在即. 以下介绍一下在odl中怎样实现rpc. odl使用yang作为model模型定义文件. ...

  10. ASP.NET常见内置对象(一)

    在web开发中,数据库都是通过HTTP协议来传输的.但HTTP是一个无状态协议,不会保留数据的状态和信息. 为了解决问题.各种开发语言都提供了状态管理功能. 状态管理是在同一页或不同页的多个请求发生时 ...