www.apache.org/dist/上可以下载Hadoop整个生态环境的组件,我下的Zookeeper3.4.6版本

我一般都是在一个虚拟机上将一、二步都做完,然后克隆出来,再到克隆出来的虚拟机上分别配置,毕竟能省则省,不要重复劳动。

一、CentOS配置

在VMWare中每个虚拟机都选择桥接模式。即可在网络中独立分配一个IP,每台机器单独设定一个IP。

1. 配置hosts

vi /etc/hosts

192.168.1.150 hmaster0

192.168.1.151 hmaster1

192.168.1.152 hslave0

192.168.1.153 hslave1

192.168.1.154 hslave2

2. 关闭防火墙

systemctl status firewalld.service  #检查防火墙状态

systemctl stop firewalld.service  #关闭防火墙

systemctl disable firewalld.service  #禁止开机启动防火墙

3. 关闭SELINUX

vi /etc/selinux/config

#SELINUX=enforcing  #注释掉

#SELINUXTYPE=targeted  #注释掉

SELINUX=disabled  #增加

4. 立即生效配置

setenforce 0  #使配置立即生效

5. 同步网络时间

ntpdate cn.pool.ntp.org  #同步网络时间

在设置完毕后,可以测试能否互相Ping通

二、 Java配置

下载一个Java压缩包,我这里下载的是jdk-8u45-linux-x64.gz

1. 解压Java包

mkdir /usr/java

tar -zxvf jdk-8u45-linux-x64.gz -C /usr/java/

rm -rf jdk-8u25-linux-x64.tar.gz

2. 配置JDK环境变量

vi /etc/environment

JAVA_HOME=/usr/java/jdk1.8.0_25

JRE_HOME=/usr/java/jdk1.8.0_25/jre

vi /etc/profile

export JAVA_HOME=/usr/java/jdk1.8.0_45

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export PATH=$PATH:$JAVA_HOME/bin

source /etc/profile  #使配置文件生效

java -version  #查看java版本

三、配置无密钥的SSH访问

首先讲讲无密钥SSH,每台机器可以生成自己的一对公司钥,私钥自己保存。将本机作为服务器,要通过无密钥SSH访问本机的机器作为客户端,首先将服务器的公钥放到客户端,客户端将此公钥放到authorized_keys中,可以将authorized_keys认为是公钥的字典文件,因为可以放多个服务器的公钥进去,即可实现无密钥SSH访问。

在此处为了方便,我将所有网内的节点机器都互相能SSH无密钥登录,可以理解为双向无密钥登录。

首先得检查是否有SSH服务,如果没有就用yum安装一个并启动。此步省略。

1. 在每个虚拟机上都生成密钥

ssh-keygen -t rsa  #生成密钥,一路回车即可,只适用于测试环境,正式环境请设定密码

2. 每个节点机器更改自己的密钥名称并传输到hmaster0机器上

例如在slave0机器上,其他机器类似,只是公钥名称有变动

cp ~/.ssh/id_rsa.pub ~/.ssh/hslave0.id_rsa.pub #修改名称

scp ~/.ssh/hslave0.id_rsa.pub master:~/.ssh #传输至hmaster0机器上

3. 在hmaster0机器上生成统一的authorized_keys

cd ~/.ssh

cat id_rsa.pub >> authorized_keys #这个是hmaster0生成的公钥,就在本机,不用改名称,生成了就可以

cat hmaster1.id_rsa.pub >> authorized_keys  

cat hslave0.id_rsa.pub >> authorized_keys

...

直到hslave2也导入至authorized_keys

4. 将统一的authorized_keys分发至每个节点

scp authorized_keys hmaster1:~/.ssh #记得路径是在~/.ssh下

...

直到hslave2

5. 修改配置文件(每台机器都要)

vi /etc/ssh/sshd_config

找到以下内容,并去掉注释符”#“

RSAAuthentication yes

PubkeyAuthentication yes

AuthorizedKeysFile      .ssh/authorized_keys

vi /sbin/service sshd restart #重启服务

6. 修改权限(每台机器都要)

chmod 700 ~/.ssh

chmod 600 ~/.ssh/authorized_keys

如果不是root用户,是另外的用户例如A,则key文件在/home/A/.ssh中,/home/A 这个文件夹的权限改为755

chmod 755 /home/A

测试一下

已经不需要密码可以登录了

四、Zookeeper集群安装

只在Slave节点机器上安装

1. 解压安装包

tar -zxvf zookeeper-3.4.6.tar.gz -C /opt/

2. 编辑配置文件

具体的配置参数可以到官方文档上查看

cd /opt/zookeeper-3.4.6/conf

cp zoo_sample.cfg zoo.cfg #将sample配置文件复制为正式的配置文件

vi zoo.cfg #开始编辑

dataDir=/home/zookeeper/data    #数据目录
dataLogDir=/home/zookeeper/logs  #日志目录
server.0=hslave0:2888:3888         
server.1=hslave1:2888:3888
server.2=hslave2:2888:3888
 
3. 创建目录以及要Id文件

mkdir /home/zookeeper/data

mkdir /home/zookeeper/logs

vi /home/zookeeper/data/myid #创建myid文件,并编辑它,编辑的内容就是配置文件中server.后面跟着的号数。例如目前是在slave0机器上,则在myid文件中写入0

4. 启动节点(slave节点机器)

/opt/zookeeper-3.4.6/bin/zkServer.sh start

5. 检查运行情况

/opt/zookeeper-3.4.6/bin/zkServer.sh status

在每个slave节点机器上运行此命令,会出现Follower和Leader

Centos7 ZooKeeper 安装过程的更多相关文章

  1. centos7 mysql-server 安装过程

    官网下载安装mysql-server # wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm # rpm -i ...

  2. centos7 redmine安装过程

     mysql安装配置   redmine 部署过程 redmin官方文档写的太烂加上不熟悉ruby搞了半天,回到家后觉得还是记录下好,希望可以帮助有需要的人,少走弯路. 版本说明 下面的版本很重要re ...

  3. centos7 redmine安装过程(转载)

    redmine 部署过程 redmin官方文档写的太烂加上不熟悉ruby搞了半天,回到家后觉得还是记录下好,希望可以帮助有需要的人,少走弯路. 版本说明 下面的版本很重要redmine 版本 3.3 ...

  4. CentOS7 Zookeeper 安装

    集群部署 192.168.38.6  zk01192.168.38.7  zk02192.168.38.8  zk03 安装zookeeper,必须安装jdk. 1.下载 $ cd /usr/loca ...

  5. Zookeeper安装过程

    zookeeper的安装我反反复复安装了三次,前两次在root用户下安装都失败了,都启动不起来,第三次我改成普通用户安装,没想到成功了,很不可思议,步骤完全一样,接下来介绍一下具体的安装步骤: 1. ...

  6. Centos7 JDK安装过程中 解决java -version 报错: bash: /home/jdk1.8.0_161/bin/java: Permission denied

    1.执行Linux命令 -----vim /etc/profile  编辑profile  文件,在里面添加: #set java enviroment JAVA_HOME=/opt/JavaHome ...

  7. centos7.4安装过程

    开启CPU虚拟化 按到install CentOS7 按下tab 输入net.ifnames=0 biosdevname=0 先来一段文档v1 ============================ ...

  8. Centos7 nginx安装过程

    一.Centos版本: cat /etc/centos-release CentOS Linux release 7.1.1503 (Core) 二.nginx下载 官网:http://nginx.o ...

  9. Centos7:zookeeper安装,配置与使用

    配置jdk环境 解压缩zookeeper的压缩包 配置 创建data目录 复制zoo_sample.cfg为zoo.cfg 修改confg/zoo.cfg中dataDir=**/data 常用命令 . ...

随机推荐

  1. 打开Excel的报错,提示:不能使用对象链接和嵌入

    计算机这几天在打开Excel文档的时候,提示:不能使用对象链接和嵌入, 而且出现如下的提示:Microsoft Office Excel进程已停止工作, 每次打开Excel的时候都是同样的问题,害我跟 ...

  2. mysql解决自动断开8小时未曾用过的链接

    今天有运维的同事反映,发布关键词不太稳定,点了没反应.就去线上看了一下日志,发现数据库没有链接,就查了一下问题 关于mysql自动断开的问题研究结果如下,在mysql中有相关参数设定,当数据库连接空闲 ...

  3. 解决document.onclick在IE下用不了或无效的问题

    document.onclick这个事件在IE这几天突然下不能用了,导致JS代码部分有BUG document.onmouseover;document.onmouseout;document.onm ...

  4. 读w3c中文教程对键盘事件解释的感想 -遁地龙卷风

    写这篇博文源于w3c中文教程对键盘事件的解释, onkeydown 某个键盘按键被按下 onkeypress 某个键盘按键被按下并松开 onkeyup 某个键盘按键被松开 可在实践中发现 只注册key ...

  5. native2ascii.exe

    native2ascii.exe 是 Java 的一个文件转码工具,是将特殊各异的内容 转为 用指定的编码标准文体形式统一的表现出来,它通常位于 JDK_home\bin 目录下,安装好 Java S ...

  6. git 教程(3)--时光机穿梭

    我们已经成功地添加并提交了一个readme.txt文件,现在,是时候继续工作了,于是,我们继续修改readme.txt文件,改成如下内容 Git is a distributed version co ...

  7. HDU 1083 网络流之二分图匹配

    http://acm.hdu.edu.cn/showproblem.php?pid=1083 二分图匹配用得很多 这道题只需要简化的二分匹配 #include<iostream> #inc ...

  8. 36 网络相关函数(四)——live555源码阅读(四)网络

    36 网络相关函数(四)——live555源码阅读(四)网络 36 网络相关函数(四)——live555源码阅读(四)网络 简介 7)createSocket创建socket方法 8)closeSoc ...

  9. python md5加密中文

    import md5 md5.new(u'中文').hexdigest() 会失败,报告ascii码不能解码0x.... 原因是md5会自动将被加密的数据转成字节码,如果没有详细制定编码,则可能采用了 ...

  10. 【转】Git如何Check Out出指定文件或者文件夹

    [转]Git如何Check Out出指定文件或者文件夹http://www.handaoliang.com/a/20140506/195406.html 在进行项目开发的时候,有时候会有这样的需求那就 ...