Linux系统的Zookeeper集群环境搭建
2016-08-24 16:49
323 查看
说明:提供服务的机器数量2*n + 1 奇数台
至少要超过半数,zookeeper才可以提供服务,因为Zookeeper只允许半数宕机。
操作步骤:
下载Zookeeper安装包
这里我用到的是zookeeper-3.4.8
下载地址:http://mirror.bit.edu.cn/apache/zookeeper/
解压到指定目录
准备三台linux服务器,每台服务器都放zookeeper压缩文件。解压zookeeper-3.4.8.tar.gz到一个目录下,比如解压到根目录下/zookeeper 文件夹
解压命令:
tar zxvf zookeeper-3.4.8.tar.gz
修改hosts文件
ZooKeeper建议使用hostname,而非ip。这需要对主机的/etc/hostname和/etc/hosts做host绑定。
ZooKeeper以Fast Paxos算法为基础,用于完成leader的选举工作,所以至少需要3个节点。
为此,我准备了以下3个节点:
172.16.101.83 ubuntu-zookeeper-01
172.16.101.91 ubuntu-zookeeper-02
172.16.101.94 ubuntu-zookeeper-03
修改命令:
sudo vim /etc/hosts
修改如下:
达到如下效果则配置成功:
修改配置文件
打开解压后的Zookeeper文件目录下conf目录的zoo_sample.xml文件
ubuntu-zookeeper-01:代表zookeeper的主机名
12888端口:代表访问Zookeeper的端口
13888端口:代表重新选举leader的端口
linux不同机器之间无法访问,端口没有开通处理办法
开放端口命令:
iptables -A INPUT -p tcp –dport 12888-j ACCEPT
或者编辑 /etc/sysconfig/iptables 增加:
-A INPUT -m state –state NEW -m tcp -p tcp –dport 12888 -j ACCEPT
查看端口是否已经开放
/etc/init.d/iptables status
查看端口占用,来检验下是不是已经打开了某某端口
netstat -an | grep 端口号
修改之后,重启iptables
service iptables restart
新建dataDir目录
在根目录下新建/tmp/zookeeper,不过不建议新建tmp目录,这个是临时目录,最好自己新建其他名字的目录。三台服务器都需要新建目录。
linux系统新建文件夹命令:
mkdir zookeeper
创建myid文件
在三台主机下,分别在刚才新建的dataDir目录下新建名称为myid,内容分别为1,2,3的文件
命令如下:
echo “1” > myid
echo “2” > myid
echo “3” > myid
打开myid文件查看内容:
cat myid
修改权限
修改bin目录下文件权限为可执行:
原来bin目录下文件权限为:
-rw-r–r–
修改bin目录下文件夹权限为可执行权限:
-rwxr-xr-x
给bin目录下所有用户添加x–可执行权限
chomd -R a+x bin/
启动Zookeeper
启动Zookeeper命令:
./zkServer.sh start
查看集群的状态:
./zkServer.sh status
至少要超过半数,zookeeper才可以提供服务,因为Zookeeper只允许半数宕机。
操作步骤:
下载Zookeeper安装包
这里我用到的是zookeeper-3.4.8
下载地址:http://mirror.bit.edu.cn/apache/zookeeper/
解压到指定目录
准备三台linux服务器,每台服务器都放zookeeper压缩文件。解压zookeeper-3.4.8.tar.gz到一个目录下,比如解压到根目录下/zookeeper 文件夹
解压命令:
tar zxvf zookeeper-3.4.8.tar.gz
修改hosts文件
ZooKeeper建议使用hostname,而非ip。这需要对主机的/etc/hostname和/etc/hosts做host绑定。
ZooKeeper以Fast Paxos算法为基础,用于完成leader的选举工作,所以至少需要3个节点。
为此,我准备了以下3个节点:
172.16.101.83 ubuntu-zookeeper-01
172.16.101.91 ubuntu-zookeeper-02
172.16.101.94 ubuntu-zookeeper-03
修改命令:
sudo vim /etc/hosts
修改如下:
达到如下效果则配置成功:
修改配置文件
打开解压后的Zookeeper文件目录下conf目录的zoo_sample.xml文件
ubuntu-zookeeper-01:代表zookeeper的主机名
12888端口:代表访问Zookeeper的端口
13888端口:代表重新选举leader的端口
linux不同机器之间无法访问,端口没有开通处理办法
开放端口命令:
iptables -A INPUT -p tcp –dport 12888-j ACCEPT
或者编辑 /etc/sysconfig/iptables 增加:
-A INPUT -m state –state NEW -m tcp -p tcp –dport 12888 -j ACCEPT
查看端口是否已经开放
/etc/init.d/iptables status
查看端口占用,来检验下是不是已经打开了某某端口
netstat -an | grep 端口号
修改之后,重启iptables
service iptables restart
新建dataDir目录
在根目录下新建/tmp/zookeeper,不过不建议新建tmp目录,这个是临时目录,最好自己新建其他名字的目录。三台服务器都需要新建目录。
linux系统新建文件夹命令:
mkdir zookeeper
创建myid文件
在三台主机下,分别在刚才新建的dataDir目录下新建名称为myid,内容分别为1,2,3的文件
命令如下:
echo “1” > myid
echo “2” > myid
echo “3” > myid
打开myid文件查看内容:
cat myid
修改权限
修改bin目录下文件权限为可执行:
原来bin目录下文件权限为:
-rw-r–r–
修改bin目录下文件夹权限为可执行权限:
-rwxr-xr-x
给bin目录下所有用户添加x–可执行权限
chomd -R a+x bin/
启动Zookeeper
启动Zookeeper命令:
./zkServer.sh start
查看集群的状态:
./zkServer.sh status
相关文章推荐
- Hadoop 、Hbase、zookeeper 集群环境搭建
- 分布式集群环境hadoop1.2.0、hbase0.94.4、zookeeper、elasticsearch搭建2
- 第2讲 zookeeper 集群环境的搭建与测试
- ZooKeeper 集群环境搭建 (本机3个节点)
- zookeeper集群环境的搭建
- Zookeeper集群环境搭建实践
- 搭建ZooKeeper集群环境
- Hadoop+Flume+Kafka+Zookeeper集群环境搭建(一)
- Zookeeper集群环境搭建实践
- VMware+CentOS+zookeeper+solr集群环境搭建_org.apache.solr.handler.dataimport.DataImportHandler
- 分布式集群环境hadoop1.2.0、hbase0.94.4、zookeeper、elasticsearch搭建
- 伪分布式集群环境hadoop、hbase、zookeeper搭建(全)
- zookeeper集群环境搭建
- zookeeper伪分布式集群环境搭建
- 配置密码分布式集群环境hadoop、hbase、zookeeper搭建(全)
- 伪分布式集群环境hadoop、hbase、zookeeper搭建(全)
- hadoop1.2.1+zookeeper3.4.6+hbase0.94集群环境搭建
- 【zookeeper】zookeeper单机和集群环境的搭建
- 生产环境Zookeeper集群搭建
- Hadoop+Hbase+Zookeeper集群环境搭建