Zookeeper3.4.10集群部署

在安装Zookeeper之前,首先需要确保的就是主机名称(可选)、hosts都已经更改,并且JDK成功安装。

#vim /etc/hosts

添加zookeeper服务器IP、主机名,例如: 113.106.77.50 zookeeper-1

1、安装Zookeeper

使用命令“tar -zxvf”命令将gz压缩文件解压。,解压后的目录为/app/zookeeper-3.4.10,最好确保Master、Slave1、Slave2机器上的Zookeeper安装路径一致。

2、配置Zookeeper的环境变量

成功安装Zookeeper后,接下来要做的事情就是配置Zookeeper的环境变量,并通过命令“source “/etc/profile”命令使修改后的配置生效,如下所示:

vim /root/.bash_profile

#zookeeper env

export ZOOKEEPER_HOME=/app/zookeeper-3.4.10

export PATH=$ZOOKEEPER_HOME/bin:$PATH

3、修改Zookeeper的配置文件

首先将/app/zookeeper-3.4.10/conf/zoo_sample.cfg文件复制一份,并更名为zoo.cfg,如下所示:

  1. # The number of milliseconds of each tick
  2. tickTime=2000
  3. # The number of ticks that the initial
  4. # synchronization phase can take
  5. initLimit=10
  6. # The number of ticks that can pass between
  7. # sending a request and getting an acknowledgement
  8. syncLimit=5
  9. # the directory where the snapshot is stored.
  10. # do not use /tmp for storage, /tmp here is just
  11. # example sakes.
  12. dataDir=/service/zookeeper-3.4.10/data #需创建data目录
  13. dataLogDir=/app/zookeeper-3.4.10/log #需创建log目录
  14. # the port at which the clients will connect
  15. clientPort=2181 端口
  16. # the maximum number of client connections.
  17. # increase this if you need to handle more clients
  18. #maxClientCnxns=60
  19. #
  20. # Be sure to read the maintenance section of the
  21. # administrator guide before turning on autopurge.
  22. #
  23. # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
  24. #
  25. # The number of snapshots to retain in dataDir
  26. #autopurge.snapRetainCount=3
  27. # Purge task interval in hours
  28. # Set to "0" to disable auto purge feature
  29. #autopurge.purgeInterval=1
  30. server.1=Master:3333:4444 单机版zookeeper此处配置一个
  31. server.3=Slave2:3333:4444

server.A=B:C:D:其中 A 是一个数字,表示这个是第几号服务器;B 是这个服务器的 ip 地址;C 表示的是这个服务器与集群中的 Leader 服务器交换信息的端口;D 表示的是万一集群中的 Leader 服务器挂了,需要一个端口来重新进行选举,选出一个新的 Leader,而这个端口就是用来执行选举时服务器相互通信的端口。如果是伪集群的配置方式,由于 B 都是一样,所以不同的 Zookeeper 实例通信端口号不能一样,所以要给它们分配不同的端口号。

根据dataDir和dataLogDir变量创建相应的目录。

mkdir /app/zookeeper-3.4.10/data

mkdir /app/zookeeper-3.4.10/log

4、创建myid文件(单机版也需要创建myid文件)

在dataDir目录下创建一个myid文件,然后分别在myid文件中按照zoo.cfg文件的server.A中A的数值,在不同机器上的该文件中填写相应的值。

vim /app/zookeeper-3.4.10/data/myid

5、启动Zookeeper

执行命令“zkServer.sh start”将会启动Zookeeper。在此大家需要注意,和在Master启动Hadoop不同,不同节点上的Zookeeper需要单独启动。而执行命令“zkServer.sh stop”将会停止Zookeeper。

开发人员可以使用命令“JPS”查看Zookeeper是否成功启动,以及执行命令“zkServer.sh status”查看Zookeeper集群状态,也可使用四字命令(如 echo stat | netcat localhost 2181 )快速确定节点状态如下所示:

  1. #192.168.1.224
  2. JMX enabled by default
  3. Using config: /app/zookeeper-3.4.10/bin/../conf/zoo.cfg
  4. Mode: follower
  5. #192.168.1.225
  6. JMX enabled by default
  7. Using config: /app/zookeeper-3.4.10/bin/../conf/zoo.cfg
  8. Mode: leader
  9. #192.168.1.226
  10. JMX enabled by default
  11. Using config: /app/zookeeper-3.4.10/bin/../conf/zoo.cfg
  12. Mode: follower

Zookeeper集群在启动的过程中,查阅zookeeper.out,会有如下异常:

  1. java.net.ConnectException: Connection refused
  2. at java.net.PlainSocketImpl.socketConnect(Native Method)
  3. at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
  4. at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
  5. at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
  6. at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
  7. at java.net.Socket.connect(Socket.java:579)
  8. at org.apache.zookeeper.server.quorum.QuorumCnxManager.connectOne(QuorumCnxManager.java:368)
  9. at org.apache.zookeeper.server.quorum.QuorumCnxManager.toSend(QuorumCnxManager.java:341)
  10. at org.apache.zookeeper.server.quorum.FastLeaderElection$Messenger$WorkerSender.process(FastLeaderElection.java:449)
  11. at org.apache.zookeeper.server.quorum.FastLeaderElection$Messenger$WorkerSender.run(FastLeaderElection.java:430)
  12. at java.lang.Thread.run(Thread.java:745)

上述异常可以忽略,因为集群环境中某些子节点还没有启动zookeeper。

配置zookeeper开机启动,编辑/etc/rc.local文件,加入

su -root -c ‘ /app/zookeeper-3.4.10/data/bin/zkServer.sh start‘

(此配置对zookeeper集群无效)

原文地址:https://www.cnblogs.com/snowwhitecityofsky/p/9177028.html

时间: 2024-10-18 09:15:47

Zookeeper3.4.10集群部署的相关文章

zookeeper3.4.5集群部署及dubbo2.5.3入门例子

一.基础信息配置 1.1 虚拟机硬件配置 1.2虚拟机软件配置(准备三台机器) 1.2.1 公共配置 [[email protected] ~]# cat /etc/redhat-release  CentOS release 6.7 (Final) [[email protected] ~]# uname -r 2.6.32-573.el6.x86_64 [[email protected] ~]# cat /etc/sysconfig/i18n LANG="en_US.UTF-8"

搭建 Zookeeper-3.4.10 集群

先准备好三台linux(虚拟机). 1. 先把Java环境配好.我CentOS7 + jdk1.8.0_131 1.1 先把jdk上传到系统里面(如果不会的话去百度),我在系统的根目录建了一个文件夹mysoft,用来存放需要的安装包,比如jdk.Zookeeper 1.2 然后cd 到/usr/local/下,建立一个文件夹用来存放jdk cd /usr/local/ mkdir java cd java/ mkdir jdk 1.3 然后定位到我们安装包的目录. 解压安装包到我们指定的目录下.

二、Kubernetes_V1.10集群部署-master-etcd

1.添加配置文件 (1)master节点 cat >/etc/etcd/etcd.conf <<EOF#[Member] ETCD_NAME="etcd01" ETCD_DATA_DIR="/var/lib/etcd/default.etcd" ETCD_LISTEN_PEER_URLS="https://172.18.6.39:2380" ETCD_LISTEN_CLIENT_URLS="https://172.18

六、Kubernetes_V1.10集群部署-node-部署节点组件

一.配置kubelet 1.配置启动文件 # cat > /usr/lib/systemd/system/kubelet.service <<EOF [Unit] Description=Kubernetes Kubelet After=docker.service Requires=docker.service [Service] EnvironmentFile=-/etc/kubernetes/kubelet ExecStart=/usr/bin/kubelet \$KUBELET_

Redis集群部署文档(Ubuntu15.10系统)

Redis集群部署文档(Ubuntu15.10系统)(要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对应的redis节点的ip和端口对应关系如下)127.0.0.1:7000127.0.0.1:7001127.0.0.1:7002127.0.0.1:7003127.0.0.1:7004127.0.0.1:7005 1:下载redis.官网下载3.0.0版本,之前2.几的版本不支持集群模式下载地址:http://download.redis

solr 集群(SolrCloud 分布式集群部署步骤)

SolrCloud 分布式集群部署步骤 安装软件包准备 apache-tomcat-7.0.54 jdk1.7 solr-4.8.1 zookeeper-3.4.5 注:以上软件都是基于 Linux 环境的 64位 软件,以上软件请到各自的官网下载. 服务器准备 为搭建这个集群,准备三台服务器,分别为 192.168.0.2 -- master 角色192.168.0.3 -- slave 角色192.168.0.4 -- slave 角色 搭建基础环境 安装 jdk1.7 - 这个大家都会安装

solrCloud 4.9 分布式集群部署及注意事项

环境搭建 一.zookeeper 参考:http://blog.chinaunix.net/uid-25135004-id-4214399.html 现有4台机器 10.14.2.201 10.14.2.202 10.14.2.203 10.14.2.204 安装zookeeper集群 在所有机器上进行 1.下载安装包解压 tar xvf zookeeper-3.4.5.tar.gz -C /export/ cd /export/ ln -s zookeeper-3.4.5 zookeeper

ZooKeeper分布式集群部署及问题

ZooKeeper为分布式应用系统提供了高性能服务,在许多常见的集群服务中被广泛使用,最常见的当属HBase集群了,其他的还有Solr集群.Hadoop-2中的HA自己主动故障转移等. 本文主要介绍了为HBase集群部署ZooKeeper集群的过程.并说明了部署过程中遇到的问题. 默认情况下,由HBase管理ZooKeeper的启动和停止.要想改动这一默认行为,须要将hbase-env.sh中的export HBASE_MANAGES_ZK=true改为export HBASE_MANAGES_

kafka基础集群部署

kafka集群部署方案 ZooKeeper第一步主机名称到IP地址映射配置ZooKeeper集群中具有两个关键的角色Leader和Follower.集群中所有的结点作为一个整体对分布式应用提供服务集群中每个结点之间都互相连接所以在配置的ZooKeeper集群的时候每一个结点的host到IP地址的映射都要配置上集群中其它结点的映射信息.例如我的ZooKeeper集群中每个结点的配置以zk-01为例/etc/hosts内容如下所示:192.168.0.11   zk-01192.168.0.12