升级背景说明

最近在做系统安全扫描时,扫出来zookeeper存在安全漏洞

Apache Zookeeper 缓冲区溢出漏洞(CVE--)

官方给出的升级建议:

地址:https://zookeeper.apache.org/security.html#CVE-2016-5017

Mitigation: It is important to use the fully featured/supported Java cli shell rather than the C cli shell independent of version.

  • ZooKeeper 3.4.x users should upgrade to 3.4.9 or apply this patch

  • ZooKeeper 3.5.x users should upgrade to 3.5.3 when released or apply this patch

即:升级到较高版本或者打补丁。由于当前环境中使用的版本是3.4.8.所以,将zk升级到3.4版本当前的最新版本。3.4.14

环境说明

  当前运行的zookeeper版本:3.4.8

升级过程

总:本次升级采用的是,新旧版本配置相同,不不使用旧节点的数据,关闭旧节点,启动新节点,新节点启动之后,自动同步数据。

1.下载zookeeper 3.4最新的版本3.4.14

下载地址:https://archive.apache.org/dist/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz

2.将软件上传到zookeeper所在的服务器

3.解压缩

tar -C ../app/ -zxf zookeeper-3.4..tar.gz 

4.增加配置文件,创建数据目录,创建id文件

cp zookeeper-3.4./conf/zoo.cfg zookeeper-3.4./conf/
mkdir zookeeper-3.4.14/data
cp zookeeper-3.4.8/data/myid zookeeper-3.4.14/data/

备注:直接将原来zk版本中的配置文件拷贝到新版本目录下,同时,id文件必须要拷贝。

5.修改zoo.cfg配置文件中的dataDir配置,变更为新版本的data目录

[aiprd@host---- app]$ grep dataDir zookeeper-3.4./conf/zoo.cfg
dataDir=/mnt/aiprd/app/zookeeper-3.4./data
# The number of snapshots to retain in dataDir

备注:修改为新版本的data目录

6.关闭旧节点,启动新节点,并查看节点的状态

zookeeper-3.4./bin/zkServer.sh stop
zookeeper-3.4./bin/zkServer.sh start
[aiprd@host-10-124-163-135 app]$ zookeeper-3.4.14/bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /mnt/aiprd/app/zookeeper-3.4.14/bin/../conf/zoo.cfg
Mode: follower

备注:节点已经启动成功,可以通过zkCli.sh脚本查看其中的配置

zookeeper-3.4./bin/zkCli.sh -server 10.124.163.135:2181
#查看其中注册的regionserver的信息。已经有数据,说明升级成功。
[zk: 10.124.163.135:2181(CONNECTED) 15] ls /hbase/rs        
[host-10-124-163-134,16020,1562122185977, host-10-124-163-135,16020,1562122203415, host-10-124-163-136,16020,1562122183160]

7.通过滚动升级的方式,将其他的节点进行升级,升级的过程中,如果是leader,关闭之后,则会自动重新选举出新的leader

8.同样,可以通过hbase-hmaster的监控查看使用的zk的版本的信息

http://10.124.163.134:16010/master-status

备注:经过查看,hbase使用的zookeeper的版本是3.4.14.并且有连接,本次升级成功。

另外:如果升级失败,将原有版本启动,关闭新版本即可,因为zookeeper是集群模式,因此,对于生产,也是可以滚动升级的。

文档创建时间:2019年8月13日16:47:48

zookeeper从3.4.8升级到3.4.14的更多相关文章

  1. Zookeeper集群是如何升级到新版本的

    方案1:复用老数据方案 这是经过实践的升级方案,该方案是复用旧版本的数据,zk集群拓扑,配置文件都不变,只是启动的程序为最新的版本. 参考文章: Zookeeper集群是如何升级到新版本的 方案2:重 ...

  2. 百度云BCC 上的Ubuntu 16.04 LTS - 升级内核到4.14.87

    99元1年,整来玩玩. =============================================================== 重点是这个libssl1.1的deb,安装上了之 ...

  3. python2.7.5升级到2.7.14或者直接升级到3.6.4

    python2.7.5升级到2.7.14 1.安装升级GCC yum install -y gcc* openssl openssl-devel ncurses-devel.x86_64  bzip2 ...

  4. linux - python2.6.6 升级到python2.7.14

    一.升级 Python 2.7.14 版本 1. 准备安装包,系统是最小化安装 # 下载安装依赖的相关包[root@vip ~]# yum install vim gcc make wget -y [ ...

  5. Python—python2.7.5升级到2.7.14或者直接升级到3.6.4

    python2.7.5升级到2.7.14 1.安装升级GCC yum install -y gcc* openssl openssl-devel ncurses-devel.x86_64  bzip2 ...

  6. zookeeper集群搭建与升级

    zookeeper 1.zookeeper功能 1-1.配置管理 集中管理配置文件实现服务治理 1-2.命名服务 如为了通过网络访问一个系统,我们得知道对方的IP地址,但是IP地址对人非常不友好,这个 ...

  7. 如何将Ubuntu Server 12.04 升级到 Ubuntu Server 14.04 LTS

    升级Ubuntu 12.04到Ubuntu 14.04方法如下: 步骤一:在终端中运行下面的命令,它将安装所有的升级包.$ sudo apt-get update && sudo ap ...

  8. zookeeper运维 --【】转】

     from:http://blog.csdn.net/hengyunabc/article/details/19006911  zookeeper运维 尽管zookeeper在编程上有很多的阱陷,AP ...

  9. Exhibitor(zookeeper监控工具)

    具体看github上的文档,很详细https://github.com/soabase/exhibitor/wiki/Running-Exhibitor 一. 这个是Netflix出品的一个监控工具, ...

随机推荐

  1. k8s之Deployment 声明式地升级应用(五)

    Deployment 声明式地升级应用 现在你已经知道如何将应用程序组件打包进容器,将他们分组到pod中,并为它们提供临时或者持久存储,将密钥或配置文件注入,并可以使pod之间互相通信.这就是微服务化 ...

  2. 浅谈布隆过滤器Bloom Filter

    先从一道面试题开始: 给A,B两个文件,各存放50亿条URL,每条URL占用64字节,内存限制是4G,让你找出A,B文件共同的URL. 这个问题的本质在于判断一个元素是否在一个集合中.哈希表以O(1) ...

  3. Linux运维技术之NFS网络文件系统

    NFS:网络文件系统,只能工作在Unix/linux之间,不能与windows之间交互. NFS文件系系统只能基于ip来认证! RPC:远程过程调用,简化分布式应用程序的开发, 对Linux系统而言, ...

  4. sudo apt update报错

    在Ubuntu系统下,使用sudo apt-get update有时会出现“W: 无法下载 http://cn.archive.ubuntu.com/ubuntu/.... 校验和不符”, xj@xj ...

  5. 201671030104 邓海祥 实验十四 团队项目评审&课程项目总结

    项目 内容 课程名称 2016级计算机科学与工程学院软件工程(西北师范大学) 这个作业的要求在哪里 实验十四 团队项目评审&课程学习总结 课程学习目标 (1)掌握软件项目评审会流程:(2)反思 ...

  6. Beta 冲刺随笔汇总

    作业要求 这个作业属于哪个课程 软件工程1916-W(福州大学) 这个作业要求在哪里 项目Beta冲刺(团队) 团队名称 基于云的胜利冲锋队 作业目标 汇总随笔 团队信息 团队名称:基于云的胜利冲锋队 ...

  7. STL str replace

    #include <iostream> #include <string> using namespace std; void main() { string s=" ...

  8. python-hashlib加密

    用于加密相关的操作,代替了md5模块和sha模块,主要提供SHA1,SHA224,SHA256,SHA512,MD5算法. 以下是算法示例: #!/usr/bin/env python # -*- c ...

  9. vue基于iview树状表格,封装完善

    先安装iview后在使用 完善按钮不显示问题 ,当children过多时,点击不动问题等 封装 <template> <div :style="{width:tableWi ...

  10. promethues exporter+ grafana 监控pg+mysql

    这篇文章本来是打算使用pmm 进行数据库监控的,但是居然参考官方文档使用docker 运行起来有点问题,所以直接改用 exporter 进行处理,但是比pmm 弱好多 pmm 的参考架构 说明,以上图 ...