(保姆级)Zookeeper+Hadoop+HBase的环境的配置

Zookeeper的安装和配置

在安装Zookeeper之前需要先安装一下Java,这里就不再详述,网上确实很多相关的教程。我这边是先下载了Java的JDK然后上传上服务器解压,然后配置环境变量。

Zookeeper的下载和安装和Java JDK大同小异,先从官网上下载安装包然后本地使用scp上传到服务器,使用的命令:

scp Zookeeper安装包名 hadoop@服务器ip地址:~/

进入服务器,在/usr/local目录下创建一个cluster文件。将根目录下的Zookeeper安装包解压到/usr/local/cluster下。这里我们把cluster文件的所属设为hadoop用户,使用:

chown -R username dir

这里因为要分配给hadoop用户,所以username改为hadoopdir改为/usr/local/cluster
解压Zookeeper:

tar -zxvf ~/Zookeeper安装包名 -C /usr/local/cluster/

进入cluster文件下,然后使用软链接的方法将zookeeper解压后的文件和zookeeper文件链接起来,其实就是将zookeeper解压后的文件改个名字,不过用软链接之后你会发现更名后的文件和zookeeper本身的文件会保持一致,修改任何一个另一个都会修改(这步可不做):

#软链接
ln -s zookeeper解压后的文件名 zookeeper

设置环境变量:

#打开~/.bashrc文件修改
vim ~/.bashrc

#添加如下内容:
#zookeeper
export ZOOKEEPER=/usr/local/cluster/zookeeper(根据自己Zookeeper实际安装位置修改)
export PATH=$PATH:$ZOOKEEPER/bin

#使环境变量生效
source ~/.bashrc

开始配置Zookeeper:

#首先建立数据和日志文件:
mkdir /usr/local/cluster/zookeeper/data
mkdir /usr/local/cluster/zookeeper/logs (还是根据自己安装的zookeeper文件路径填写)

#进入zookeeper下的conf目录然后修改zoo.cfg文件
#先将zoo——sample.cfg复制为zoo.cfg文件
cp zoo_sample.cfg zoo.cfg
vim zoo.cfg

#在末尾添加以下几句
quorumListenOnAllIPs=true
server.0=xxx.xxx.x.xxx:2888:3888
server.1=xxx.xxx.x.xxx:2888:3888
server.2=xxx.xxx.x.xxx:2888:3888

server.A=B:C:D,其中A是一个数字, 表示这是第几号server。B是该server所在的IP地址。C配置该server和集群中的leader交换消息所使用的端口。D配置选举leader时所使用的端口。这里需要注意的是,填写的ip地址要对应,且自己的主机编号填写内网ip,分机填写外网ip。如果是在云服务器上部署的,需要配置quorumListenOnAllIPs=true,用以监听所有网卡,这个和云服务器的一些虚拟技术有关。为了安全起见,最好所有主机都去服务器运营商的控制台手动开启一下2888和3888两个端口的连接,然后重启服务器。

打开之前创建的data文件,创建一个名为myid的文件,文件只有一行,master填写0,slave1填写1,slave2填写2,以此类推,对应的是server.x中的x

其他节点的主机按照这样的配置方法配置完后,所有主机启动zookeepe,然后查看状态:

#启动zookeeper
zkServer.sh start

#查看状态
zkServer.sh status

如果显示如下图,则说明配置成功:

这里要注意的是,master的Mode不一定就是leader,zookeeper会自动选择一个主机作为leader。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注