备注:无ping命令则安装 yum install iputils-ping 若有问题则 host映射问题
【软件】准备好jdk环境,此次我们的环境是open_jdk1.8.0_101 zookeeper-3.4.6.tar.gz 【步骤】 1. 准备条件 如果有内部dns或者外网有域名,则直接使用域名 如果没有需要修改/etc/hosts文件,或者直接使用IP
基于公司发展硬性需求,生产VM服务器要统一迁移到ZStack 虚拟化服务器。检查自己项目使用的服务器,其中zookeeper集群中招,所以需要进行迁移。
1.2名字服务 名字服务这个就很好理解了。比如为了通过网络访问一个系统,我们得知道对方的 IP 地址,但是 IP 地址对人非常不友好,这个时候我们就需要使用域名来访问。但是计算机是 不能是域名的。怎么办呢?如果我们每台机器里都备有一份域名到 IP 地址的映射,这个倒 是能解决一部分问题,但是如果域名对应的 IP 发生变化了又该怎么办呢?于是我们有了 DNS 这个东西。我们只需要访问一个大家熟知的(known)的点,它就会告诉你这个域名对应 的 IP 是什么。在我们的应用中也会存在很多这类问题,特别是在我们的服务特别多的时候, 如果我们在本地保存服务的地址的时候将非常不方便,但是如果我们只需要访问一个大家都 熟知的访问点,这里提供统一的入口,那么维护起来将方便得多了。
Kafka简介Zookeeper搭建Zookeeper单机版安装下载Zookeeper解压配置启动测试Zookeeper伪集群安装server1创建新建目录创建文件myid创建文件zoo.cfgserver2创建新建目录创建文件myid创建文件zoo.cfgserver3创建新建目录创建文件myid创建文件zoo.cfg启动查看启动的服务Zookeeper集群安装
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
Zookeeper 是一个开源的分布式的,为分布式框架提供协调服务的 Apache 项目。
一、Zookeeper 安装 1.zookeeper支持brew安装。 ➜ ~ brew info zookeeper zookeeper: stable 3.4.10 (bottled), HEAD Centralized server for distributed coordination of services https://zookeeper.apache.org/ Not installed From: https://github.com/Homebrew/homebrew-core/bl
这篇文章中我们将使用 Docker 创建 Zookeeper 镜像,包括如何将 Zookeeper 安装到容器,如何配置 ZooKeeper 应用程序以及如何在宿主机和容器之间共享数据卷。
ZooKeeper 顾名思义 动物园管理员,他是拿来管大象(Hadoop) 、 蜜蜂(Hive)等等一些大数据组件。
在此博主先把自己用的ZooKeeper包上传到百度网盘,如有需要的可自行提取,在文章的最后也会介绍怎样在官网下载的。 链接:https://pan.baidu.com/s/178EYOx9N5rHZyjRnrHu13Q
2、下载ZooKeeper, 以 zookeeper-3.4.14 为例,下载地址如下:
上述命令在后台运行一个名为 zookeeper-standalone 的容器。由于 Zookeeper 是’快速失败’,因此最好通过 --retart参数设置容器在意外停止时自动重启。默认是 no,表示不重启。-p 参数将宿主机端口 8080 与容器端口 8080 映射。通过如下命令查看运行中的 Zookeeper 容器:
ERROR [master:3890:QuorumCnxManager$Listener@517] - Exception while listening
上图是TDSQL结构图,因部署高可用环境2机房增加到3机房时需要增加ZOOKEEPER节点的情形,比方说从3台增加到5台。具体操作方法,以及需要修改的配置文件我们可以参考以下方法:
1. 首先 CentOS 7 中应该安装好 Docker, Docker 安装参考
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,是一个针对大型分布式系统的可靠协调系统;
我们下面搭建一个三个节点的Zookeeper集群节点主机名称分别为zoo1,zoo2,zoo3
之前发过一个单机部署教程,集群部署类似,这次我们通过docker-compse进行编排部署
在hadoop101、hadoop102和hadoop103,这三个节点上部署Zookeeper。
1.环境前置说明: MAC电脑:自带的ssh终端 ssh hadoop@hadoop-machine ssh hadoop@192.168.21.166 Windws系统:CRT,XShell客户端 远程服务器:CentOS 6.7 hadoop-machine(192.168.21.166)是远程服务器的hostname 如果想在本地通过ssh hadoop@hadoop-machine远程登录, 那么本地的hosts肯定要添加ip和hostname的映射 192.168.21.16
ZooKeeper服务器是用Java创建的,它运行在JVM之上。需要安装JDK 7或更高版本。
依次关掉服务 当前状态 [root@h101 zk]# zookeeper-3.4.6/bin/zkServer.sh status JMX enabled by default Using config: /root/zk/zookeeper-3.4.6/bin/../conf/zoo.cfg Mode: follower [root@h101 zk]# zookeeper-3.4.6.1/bin/zkServer.sh status JMX enabled by default Using conf
本例搭建的是伪集群模式,即一台机器上启动四个zookeeper实例组成集群,真正的集群模式无非就是实例IP地址不同,搭建方法没有区别。
上一篇文章分析了动态扩容的方法,并没有给出详细步骤,这次给出扩容的详细步骤。 首先分两种情况,第一种情况是以前是单机状态,现在将其扩展为多个机器的集群状态。另一种情况是以前是集群状态,现在扩展为更多的集群状态。 单机扩展 步骤 首先假设原机器ip为{OLD_SERVER},新机器为2台,{NEW_SERVER1}、{NEW_SERVER2},zookeeper的安装目录为{ZOO_HOME}。新机器的安装目录尽量和原机器保持一致,这样configure文件就可以统一管理,在所有机器上保持一致。 在新
1.集群规划 在hadoop002、hadoop003和hadoop004三个节点上部署Zookeeper。 2.解压安装 (1)解压Zookeeper安装包到/opt/module/目录下 tar -zxvf zookeeper-3.4.10.tar.gz -C /opt/module/ (2)同步/opt/module/zookeeper-3.4.10目录内容到hadoop003、hadoop004 xsync zookeeper-3.4.10/ 3.配置服务器编号 (1)在/opt/module/zookeeper-3.4.10/这个目录下创建zkData mkdir zkData (2)编辑myid文件 添加myid文件,注意一定要在linux里面创建,在notepad++里面很可能乱码 vi myid 在文件中添加与server对应的编号: 2 (3)拷贝配置好的zookeeper到其他机器上 xsync zkData/ 并分别在hadoop003、hadoop004上修改myid文件中内容为3、4
1、创建 /usr/local/services/zookeeper 文件夹: mkdir -p /usr/local/services/zookeeper 2、进入到 /usr/local/services/zookeeper 目录中: cd /usr/local/services/zookeeper 3、下载 zookeeper-3.4.9.tar.gz: wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gz 4、解压缩 zookeeper-3.4.9.tar.gz: tar -zxvf zookeeper-3.4.9.tar.gz 5、进入到 /usr/local/services/zookeeper/zookeeper-3.4.9/conf 目录中: cd zookeeper-3.4.9/conf/ 6、复制 zoo_sample.cfg 文件的并命名为为 zoo.cfg: cp zoo_sample.cfg zoo.cfg 7、用 vim 打开 zoo.cfg 文件并修改其内容为如下: # The number of milliseconds of each tick # zookeeper 定义的基准时间间隔,单位:毫秒 tickTime=2000 # The number of ticks that the initial # synchronization phase can take initLimit=10 # The number of ticks that can pass between # sending a request and getting an acknowledgement syncLimit=5 # the directory where the snapshot is stored. # do not use /tmp for storage, /tmp here is just # example sakes. # dataDir=/tmp/zookeeper # 数据文件夹 dataDir=/usr/local/services/zookeeper/zookeeper-3.4.9/data # 日志文件夹 dataLogDir=/usr/local/services/zookeeper/zookeeper-3.4.9/logs # the port at which the clients will connect # 客户端访问 zookeeper 的端口号 clientPort=2181 # the maximum number of client connections. # increase this if you need to handle more clients #maxClientCnxns=60 # # Be sure to read the maintenance section of the # administrator guide before turning on autopurge. # # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance # # The number of snapshots to retain in dataDir #autopurge.snapRetainCount=3 # Purge task interval in hours # Set to "0" to disable auto purge feature #autopurge.purgeInterval=1 8、保存并关闭 zoo.cfg 文件: 9、进入到 /usr/local/services/zookeeper/zookeeper-3.4.9/bin 目录中: cd ../bin/ 10、用 vim 打开 /etc/ 目录下的配置文件 profile: vim /etc/profile 并在其尾部追加如下内
5、进入到 /usr/local/services/zookeeper/zookeeper-3.4.9/conf 目录中:
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
一、环境描述 我的生产环境ZooKeeper 版本3.4.6,5个节点组成的ZooKeeper集群。ZooKeeper集群为一套8个节点的Hadoop集群和HBase 集群提供高可用保障。 二、问题描述 因为某些特殊原因,需要替换掉myid为5(IP:10.10.10.30)的ZooKeeper节点,故障节点IP:10.10.10.30替换为10.10.10.37。10.10.10.37节点是现有环境的namenode节点,Hadoop用户、相关目录,授权、hosts文件已经满足ZooKeeper的部署要求
SolrCloud(solr 云)是Solr提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时使用 SolrCloud。当一个系统的索引数据量少的时候是不需要使用SolrCloud的,当索引量很大,搜索请求并发很高,这时需要使用SolrCloud来满足这些需求。
3.文件自己选择安装目录,接着进入conf,复制zoo_sample.cfg改名为zoo.cfg
安装步骤 1、修改主机host 2、上传并解压安装包,重命名文件夹 3、在节点目录下创建 数据和日志文件夹 4、修改zoo.cfg配置文件 5、zoo.cfg配置参数说明 6、在数据文件夹下创建myid文件 7、防火墙设置 8、配置开机启动 以三个节点为例 服务器1:192.168.13.81 端口:2181、2881、3881 服务器2:192.168.13.82 端口:2182、2882、3882 服务器3:192.168.13.83 端口:2183、2883、3883 1 修改主机host 三
因为ZooKeeper的机制中,myid大的会向小的发起连接,而小的不会向大的发起连接。因此如果最后重启myid最小的机器,则其可能无法加入集群
2、ZooKeeper压缩包上传到服务器,压缩包下载地址: Apache ZooKeeper
https://www-eu.apache.org/dist/zookeeper/
真实的集群是需要部署在不同的服务器上的,但是在我们测试时同时启动很多个虚拟机内存会吃不消,所以我们通常会搭建伪集群,也就是把所有的服务都搭建在一台虚拟机上,用端口进行区分。
服务操作 启动服务 [root@h101 zookeeper-3.4.6]# cp conf/zoo_sample.cfg conf/zoo.cfg [root@h101 zookeeper-3.4.6]# bin/zkServer.sh start JMX enabled by default Using config: /root/zk/zookeeper-3.4.6/bin/../conf/zoo.cfg Starting zookeeper ... STARTED [root@h101 zook
# zookeeper servers 172.16.73.112 edu-provider-01
虚拟机安装步骤:https://my.oschina.net/u/3535099/blog/3099424
整体的搭建十分简单,只需要区别一些各个实例的dataDir和clientPort配置信息即可。
当前环境:centos7.3一台 软件版本:zookeeper-3.5.2 部署目录:/usr/local/zookeeper 启动端口:2181,2182,2183 配置文件:/usr/local/zookeeper/conf/zoo1 ~ 3.cfg
本人现在对zookeeper的环境搭建做一个总结,一般zookeeper的安装部署可以有三种模式,单机模式、伪分布式和分布式,这三种模式在什么时候应用具体看大家的使用场景,如果你只有一台机器且只是想自己开发测试时用,你可以安装个单机模式,简单又实用。如果想装逼但又没有足够的机器,那你可以选择伪分布式的方式搭建,这可以满足你内心高大上的分布式需求又可以满足没有机器的屌丝现状。如果手头有三台以上的服务器,那就可以大展高富帅的风采,直接上真的分布式,真的分布式部署一般是在系统的正式环境中应用。下面我来对这三种搭建模式作个介绍。
ZooKeeper 是一个分布式的,开放源码的分布式应用程序协调服务,是 Google 的 Chubby 一个开源的实现,是 Hadoop 和 Hbase 的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。ZooKeeper 的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。ZooKeeper 包含一个简单的原语集,提供 Java 和 C 的接口。ZooKeeper 代码版本中,提供了分布式独享锁、选举、队列的接口。其中分布锁和队列有 Java 和 C 两个版本,选举只有 Java 版本。
1、准备奇数个linux主机 我用到了三个虚拟机系统 ip地址分别为192.168.194.128、192.168.194.129 、192.168.194.130
正文: 安装zookeeper、kafka 解压zk安装包 tar -zxvf zookeeper-3.4.10.tar.gz 添加系统环境变量 vim /etc/profile尾部追加 export ZOOKEEPER_HOME=/software/zookeeper-3.4.10/ export PATH=$ZOOKEEPER_HOME/bin:$PATH export PATH 输入source /etc/profile重新加载系统环境变量 修改zookeeper配置文件 [root@server28
一般情况下,zookeeper 的配置文件为 zoo.cfg。但是在 刚安装时,并不会有这个文件,而是 有一个 zoo_sample.cfg 文件,改文件便是配置文件的示例文件。
领取专属 10元无门槛券
手把手带您无忧上云