linux下的zookeeper的安装和集群的配置

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介:

1. Zookeeper概念简介:

Zookeeper是一个分布式协调服务;就是为用户的分布式应用程序提供协调服务

    A、zookeeper是为别的分布式程序服务的

    B、Zookeeper本身就是一个分布式程序(只要有半数以上节点存活,zk就能正常服务)

    C、Zookeeper所提供的服务涵盖:主从协调、服务器节点动态上下线、统一配置管理、分布式共享锁、统一名称服务……

    D、虽然说可以提供各种服务,但是zookeeper在底层其实只提供了两个功能:

    管理(存储,读取)用户程序提交的数据;

          并为用户程序提供数据节点监听服务;


Zookeeper集群的角色:  Leader 和  follower  Observer

只要集群中有半数以上节点存活,集群就能提供服务

2. zookeeper集群机制

半数机制:集群中半数以上机器存活,集群可用。

zookeeper适合装在数台机器上!!!


3. 安装

1.1. 安装

1.1.1. 机器部署

                安装到3台虚拟机上

                安装好JDK

 

1.1.2. 上传

    上传用工具。

1.1.3. 解压

            su  hadoop(切换到hadoop用户)

            tar -zxvf zookeeper-3.4.5.tar.gz(解压)

1.1.4. 重命名

                mv zookeeper-3.4.5 zookeeper(重命名文件夹zookeeper-3.4.5zookeeper

1.1.5. 修改环境变量

            1su  root(切换用户到root)

            2vi /etc/profile(修改文件)

            3、添加内容:

export ZOOKEEPER_HOME=/home/hadoop/zookeeper

export PATH=$PATH:$ZOOKEEPER_HOME/bin

            4、重新编译文件:

            source /etc/profile

            5、注意:3zookeeper都需要修改

            6、修改完成后切换回hadoop用户:

            su - hadoop

  1.1.6. 修改配置文件

            1、用hadoop用户操作

            cd zookeeper/conf

            cp zoo_sample.cfg zoo.cfg

            2vi zoo.cfg

            3、添加内容:

dataDir=/home/hadoop/zookeeper/data

dataLogDir=/home/hadoop/zookeeper/log

server.1=slave1:2888:3888 (主机名心跳端口、数据端口)

server.2=slave2:2888:3888

server.3=slave3:2888:3888

            4、创建文件夹:

            cd /home/hadoop/zookeeper/

            mkdir -m 755 data

            mkdir -m 755 log

            5、在data文件夹下新建myid文件,myid的文件内容为:

            cd data

            vi myid

            添加内容:1             

1.1.7. 将集群下发到其他机器上

            scp -r /home/hadoop/zookeeper hadoop@slave2:/home/hadoop/

            scp -r /home/hadoop/zookeeper hadoop@slave3:/home/hadoop/

1.1.8. 修改其他机器的配置文件

            slave2上:修改myid为:2

            slave3上:修改myid为:3

1.1.9. 启动(每台机器

                zkServer.sh start

1.1.10. 查看集群状态

    1、 jps(查看进程)

    2、 zkServer.sh status(查看集群状态,主从信息)



      本文转自yushiwh 51CTO博客,原文链接:http://blog.51cto.com/yushiwh/1907508,如需转载请自行联系原作者




相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
相关文章
|
4天前
|
消息中间件 安全 Linux
服务器(Linux)在线下载activeMQ以及配置打开
服务器(Linux)在线下载activeMQ以及配置打开
14 3
|
4天前
|
NoSQL Linux 网络安全
Linux安装Redis(详细教程)
Linux安装Redis(详细教程)
25 2
|
4天前
|
弹性计算 分布式计算 Hadoop
Linux(阿里云)安装Hadoop(详细教程+避坑)
Linux(阿里云)安装Hadoop(详细教程+避坑)
25 3
|
4天前
|
监控 JavaScript 网络协议
Linux系统之安装uptime-kuma服务器监控面板
【5月更文挑战第12天】Linux系统之安装uptime-kuma服务器监控面板
14 0
|
4天前
|
Ubuntu Linux Shell
minio服务端以Linux服务形式安装
minio服务端以Linux服务形式安装
24 6
|
4天前
|
关系型数据库 MySQL Linux
Linux下安装MySQL
Linux下安装MySQL
20 0
|
关系型数据库 MySQL Linux
MySQL 数据库linux系统下修改配置文件设置mysql是否大小写敏感实例演示
MySQL 数据库linux系统下修改配置文件设置mysql是否大小写敏感实例演示
192 0
MySQL 数据库linux系统下修改配置文件设置mysql是否大小写敏感实例演示
|
4天前
|
安全 网络协议 Linux
linux必学的60个命令
Linux是一个功能强大的操作系统,提供了许多常用的命令行工具,用于管理文件、目录、进程、网络和系统配置等。以下是Linux必学的60个命令的概览,但请注意,这里可能无法列出所有命令的完整语法和选项,仅作为参考
197 2
|
1天前
|
NoSQL Linux Shell
Linux MongoDB重启命令
【5月更文挑战第8天】
|
3天前
|
存储 Linux Shell
YUM管理器的命令列表-Linux
YUM管理器的命令列表-Linux
8 0