ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

linux下搭建zookeeper集群全流程Centos7.2版本

2021-02-09 16:32:30  阅读:250  来源: 互联网

标签:java zookeeper master linux yum Centos7.2 slave1 root


准备环境

Centos7.2 1511版本下载

链接:https://pan.baidu.com/s/1jjHoz_GQNe9pwTT40ZWryg
提取码:4mtp

zookeeper安装包下载

链接:https://pan.baidu.com/s/1n7UtDJInpa_OAe_kcXM7fQ
提取码:mfoq

1.关闭防火墙

[root@master ~]# systemctl stop firewalld
[root@master ~]# systemctl disable firewalld

2.关闭selinux## 标题

[root@master ~]# setenforce 0
[root@master ~]# vim /etc/selinux/config

设置
SELINUX=disabled
都关闭后必须重启

3.安装jdk和zookeeper

[root@master ~]# mkdir /usr/java
[root@master software]# cd /usr/java/
[root@master java]# tar -zxvf jdk-8u281-linux-x64.tar.gz
[root@master ~]# mkdir /usr/local/software
[root@master ~]# cd /usr/local/software/
[root@master software]# tar -zxvf apache-zookeeper-3.5.9.tar.gz

4.配置jdk环境变量

[root@slave1 java]# vi /etc/profile
#set java environment shift+G跳转到最后一行
export JAVA_HOME=/usr/java/jdk1.8.0_281
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib
export PATH=$JAVA_HOME/bin:$PATH

5.环境变量生效

[root@master java]# source /etc/profile 

6.查看jdk版本

[root@master java]# java -version  

7.修改zookeeper配置文件

[root@master conf]# cd /usr/local/software/apache-zookeeper-3.5.9/conf/
[root@master conf]# ll
total 12
-rw-r--r--. 1 502 games  535 Oct  5 11:01 configuration.xsl
-rw-r--r--. 1 502 games 2712 Jan  6 13:56 log4j.properties
-rw-r--r--. 1 502 games  922 Jan  6 13:56 zoo_sample.cfg
[root@master conf]# cp zoo_sample.cfg zoo.cfg
[root@master conf]# vim zoo.cfg

  

上面红色框住的内容即是我们修改的内容:

①、tickTime:基本事件单元,这个时间是作为Zookeeper服务器之间或客户端与服务器之间维持心跳的时间间隔,每隔tickTime时间就会发送一个心跳;最小 的session过期时间为2倍tickTime

②、dataDir:存储内存中数据库快照的位置,除非另有说明,否则指向数据库更新的事务日志。注意:应该谨慎的选择日志存放的位置,使用专用的日志存储设备能够大大提高系统的性能,如果将日志存储在比较繁忙的存储设备上,那么将会很大程度上影像系统性能。

③、client:监听客户端连接的端口。

④、initLimit:允许follower连接并同步到Leader的初始化连接时间,以tickTime为单位。当初始化连接时间超过该值,则表示连接失败。

⑤、syncLimit:表示Leader与Follower之间发送消息时,请求和应答时间长度。如果follower在设置时间内不能与leader通信,那么此follower将会被丢弃。

⑥、server.A=B:C:D

A:其中 A 是一个数字,表示这个是服务器的编号;

B:是这个服务器的 ip 地址;

C:Leader选举的端口;

D:Zookeeper服务器之间的通信端口。
    
我们需要修改的第一个是 dataDir ,在指定的位置处创建好目录。
第二个需要新增的是 server.A=B:C:D 配置,其中 A 对应下面我们即将介绍的myid 文件。B是集群的各个IP地址,C:D 是端口配置。

8.创建myid文件

**在上一步创建的dataDir对应目录创建myid文件 内容为对应的server.X 对应的数字X
3个节点内容分别为1 2 3 **

[root@master data]# vi data/myid
[root@master data]# ls
myid
[root@master data]# cat myid 
0
[root@slave1 data]# cat myid 
1
[root@slave2 data]# cat myid 
2

 

9.配置zookeeper环境变量

[root@ master apache-zookeeper-3.5.9]# vi /etc/profile
添加
#set zookeeper environment
export ZK_HOME=/usr/local/software/apache-zookeeper-3.5.9
export PATH=$PATH:$ZK_HOME/bin
"/etc/profile" 83L, 2041C written
#环境变量生效
[root@master data]# source /etc/profile

  

10.启动zookeeper

[root@master data]# zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /usr/local/software/apache-zookeeper-3.5.9/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

  

启动命令
zkServer.sh start
停止命令
zkServer.sh stop
重启命令
zkServer.sh restart
查看集群节点状态
zkServer.sh status

三台机器,slave1 成功的通过了选举称为了leader(领导者),而剩下的两台成为了 follower(跟随者)。这时候,如果你将slave1关掉,会发现剩下两台又会有一台变成了 leader节点。

11.(番外)配置阿里云yum源

安装阿里云yum源

[root@slave1 yum.repos.d]# cd /etc/yum.repos.d/
[root@slave1 yum.repos.d]# wget http://mirrors.aliyun.com/repo/Centos-7.repo

  

#备份原yum源

[root@slave1 yum.repos.d]# mv CentOS-Base.repo CentOs-Base.repo.bak
[root@slave1 yum.repos.d]# mv Centos-7.repo CentOs-Base.repo
#清理缓存
[root@slave1 yum.repos.d]# yum clean all
#重新生成缓存
[root@slave1 yum.repos.d]# yum makecache
#升级yum源
[root@slave1 yum.repos.d]# yum uptade

标签:java,zookeeper,master,linux,yum,Centos7.2,slave1,root
来源: https://www.cnblogs.com/cndeveloper/p/14393384.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有