您的位置:首页 > 其它

Zookeeper集群环境搭建

2017-04-03 23:38 701 查看

Zookeeper集群环境搭建

准备工作

四台centos虚拟机,一台主机控制其他三台

每台虚拟需要配置JDK ,免登录,由主机统一管理配置

需要安装的包

主机httpd服务 yum install -y httpd,方便其他机器下载资源

主机支持expect 命令 yum -y install expect

支持http下载 yum install -y wget

关闭防火墙非常重要 sudo systemctl stop firewalld.service && sudo systemctl disable firewalld.service

开启自动部署

主机配置

配置了httpd服务之后 在var/www/目录下放入jdk

部署自动登录脚本

#!/bin/bash

SERVERS="192.168.23.41 192.168.23.42 192.168.23.43"
PASSWORD=hadoop

#遍历所有的 server,配置免登录

ssh_copy_id_to_all(){
for SERVER in $SERVERS
do auto_ssh_copy_id $SERVERS $PASSWORD
done
}

ssh_copy_id_to_all

#具体实现

auto_ssh_copy_id(){
expect -c "set timeout -1;
spawn ssh_copy_id $1;
expect {
*(yes/no)* {send -- yes\r;exp_continue;}
*assword:* {send -- $2\r;exp_continue;}
eof         {exit 0;}
}";
}

#遍历server

for SERVER in $SERVERS
do
scp install.sh root@$SERVER:/root
ssh root@$ERVER /root/install.sh
done


自动化部署jdk 注意如果 你的jdk是32位,系统是64位需要yum install -y glibc.i686

#!/bin/bash

BASE_SERVER=192.168.23.4
yum install -y wget

#yum install -y glibc.i686 32位jdk配置

wget $BASE_SERVER/jdk-7u72-linux-i586.gz

#解压文件

tar zxvf jdk-7u72-linux-i586.gz -C /usr/local

#配置环境变量

cat >> /etc/profile << EOF
export JAVA_HOME=/usr/local/jdk1.7.0_72
export PATH=\SPATH:\$JAVA_HOME/bin
EOF


关闭防火墙,否则报host name not find

sudo systemctl stop firewalld.service && sudo systemctl disable firewalld.service

集群配置Zookeeper

配置conf/zoo.cfg

dataDir=/root/zkData //配置数据存放的位置
server.1=192.168.23.41:2888:3888//配置集群
server.2=192.168.23.42:2888:3888
server.3=192.168.23.43:2888:3888


在zkData下建立 myid 内容为1,三个主机都要建立,可以用脚本统一搭建

启动Zookeeper ,成功后可以看到服务器的的角色 leader or follower

bin/zkServer.sh start  //启动服务器
bin/zkServer.sh status //服务工作状态
bin/zkServer.sh status //停止服务
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: