百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

Linux,CentOS环境,ZooKeeper集群安装配置

bigegpt 2024-10-26 08:13 33 浏览

安装环境:

操作系统环境:CentOS Linux release 7.7.1908 (Core)

安装列表:<node11,192.168.1.11>,<node12,192.168.1.12>,<node13,192.168.1.13>

Java8安装:

安装目录(/usr/local/java/jdk1.8.0_221/)

解压即可:tar -zxvf jdk-8u221-linux-x64.tar.gz

环境变量配置:
vi /etc/profile
export JAVA_HOME=/usr/local/java/jdk1.8.0_221
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

运行:java -version、
不是自己想要的java版本。

查找:
# whereis java
java: /usr/bin/java /usr/lib/java /etc/java /usr/local/java /usr/share/java /usr/local/java/jdk1.8.0_221/bin/java /usr/local/java/jdk1.8.0_221/jre/bin/java /usr/share/man/man1/java.1.gz
# ll /usr/bin/java
lrwxrwxrwx. 1 root root 22 3月  22 2020 /usr/bin/java -> /etc/alternatives/java
替换:
# rm -rf /usr/bin/java
# ln -s /usr/local/java/jdk1.8.0_221/bin/java /usr/bin/java
# java -version
java version "1.8.0_221"
Java(TM) SE Runtime Environment (build 1.8.0_221-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)

配置host文件(vim /etc/hosts):

192.168.1.11    node11
192.168.1.12    node12
192.168.1.13    node13
192.168.1.14    node14
192.168.1.15    node15
192.168.1.16    node16
192.168.1.17    node17
192.168.1.18    node18

防火墙允许访问网络端口:

# firewall-cmd --add-port=2888/tcp --permanent 
# firewall-cmd --add-port=3888/tcp --permanent 
# firewall-cmd --reload
# firewall-cmd --list-all

3台机器都执行。

安装和配置ZooKeeper

上传安装文件:apache-zookeeper-3.7.0-bin.tar.gz

解压:
# tar -zxvf apache-zookeeper-3.7.0-bin.tar.gz 
# cd /usr/local/zookeeper/apache-zookeeper-3.7.0-bin/conf/
创建数据存放目录:
/usr/local/zookeeper/apache-zookeeper-3.7.0-bin/data

配置(zk文件):

cp zoo_sample.cfg zoo.cfg

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/local/zookeeper/apache-zookeeper-3.7.0-bin/data
clientPort=2181
server.1=node11:2888:3888
server.2=node12:2888:3888
server.3=node13:2888:3888

3台机器都如此~

myid配置:

node11,vim /usr/local/zookeeper/apache-zookeeper-3.7.0-bin/data/myid,内容:1

node12,vim /usr/local/zookeeper/apache-zookeeper-3.7.0-bin/data/myid,内容:2

node13,vim /usr/local/zookeeper/apache-zookeeper-3.7.0-bin/data/myid,内容:3

启动运行:

# cd /usr/local/zookeeper/apache-zookeeper-3.7.0-bin/bin
# ./zkServer.sh start

配置参数含义:

tickTime:默认值为3000,单位是毫秒(ms),可以不配置。参数tickTime用于配置Zookeeper中最小时间单元的长度,很多运行时的时间间隔都是使用tickTime的倍数来表示的。例如,Zk中会话的最小超时时间默认是2*tickTime。

dataDir:该参数无默认值,必须配置。参数dataDir用于配置Zookeeper服务器存储快照文件的目录。

clientPort:参数clientPort用于配置当前服务器对外的服务端口,客户端会通过该端口和Zk服务器创建连接,一般设置为2181。

initLimit:该参数默认值:10,表示是参数tickTime值的10倍,必须配置,且为正整数。该参数用于配置Leader服务器等待Follower启动,并完成数据同步的时间。Follower服务器在启动过程中,会与Leader建立连接并完成对数据的同步,从而确定自己对外提高服务的起始状态。leader服务器允许Follower在initLimit时间内完成这个工作。

syncLimit:该参数默认值:5,表示是参数tickTime值的5倍,必须配置,且为正整数。该参数用于配置Leader服务器和Follower之间进行心跳检测的最大延时时间。在Zk集群运行的过程中,Leader服务器会与所有的Follower进行心跳检测来确定该服务器是否存活。如果Leader服务器在syncLimit时间内无法获取到Follower的心跳检测响应,那么Leader就会认为该Follower已经脱离了和自己的同步。

server.id:该参数无默认值,在单机模式下可以不配置。该参数用于配置组成Zk集群的机器列表,其中id即为Server ID,与每台服务器myid文件中的数字相对应。同时,在该参数中,会配置两个端口:第一个端口用于指定Follower服务器与Leader进行运行时通信和数据同步时所使用的端口,第二个端口测专门用于进行Leader选举过程中的投票通信。

Zookeeper图像化客户端工具

下载地址:https://issues.apache.org/jira/secure/attachment/12436620/ZooInspector.zip

windows下运行(解压后):java -jar zookeeper-dev-ZooInspector.jar

相关推荐

Docker篇(二):Docker实战,命令解析

大家好,我是杰哥上周我们通过几个问题,让大家对于Docker有了一个全局的认识。然而,说跟练往往是两个概念。从学习的角度来说,理论知识的学习,往往只是第一步,只有经过实战,才能真正掌握一门技术所以,本...

docker学习笔记——安装和基本操作

今天学习了docker的基本知识,记录一下docker的安装步骤和基本命令(以CentOS7.x为例)一、安装docker的步骤:1.yuminstall-yyum-utils2.yum-con...

不可错过的Docker完整笔记(dockerhib)

简介一、Docker简介Docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源。Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,...

扔掉运营商的 IPTV 机顶盒,全屋全设备畅看 IPTV!

其实现在看电视节目的需求确实大大降低了,折腾也只是为了单纯的让它实现,享受这个过程带来的快乐而已,哈哈!预期构想家里所有设备直接接入网络随时接收并播放IPTV直播(电信点播的节目不是太多,但好在非常稳...

第五节 Docker 入门实践:从 Hello World 到容器操作

一、Docker容器基础运行(一)单次命令执行通过dockerrun命令可以直接在容器中执行指定命令,这是体验Docker最快捷的方式:#在ubuntu:15.10容器中执行ech...

替代Docker build的Buildah简单介绍

Buildah是用于通过较低级别的coreutils接口构建OCI兼容镜像的工具。与Podman相似,Buildah不依赖于Docker或CRI-O之类的守护程序,并且不需要root特权。Builda...

Docker 命令大全(docker命令大全记录表)

容器生命周期管理run-创建并启动一个新的容器。start/stop/restart-这些命令主要用于启动、停止和重启容器。kill-立即终止一个或多个正在运行的容器rm-于删除一个或...

docker常用指令及安装rabbitMQ(docker安装rabbitmq配置环境)

一、docker常用指令启动docker:systemctlstartdocker停止docker:systemctlstopdocker重启docker:systemctlrestart...

使用Docker快速部署Storm环境(docker部署confluence)

Storm的部署虽然不是特别麻烦,但是在生产环境中,为了提高部署效率,方便管理维护,使用Docker来统一管理部署是一个不错的选择。下面是我开源的一个新的项目,一个配置好了storm与mono环境的D...

Docker Desktop安装使用指南:零基础教程

在之前的文章中,我多次提到使用Docker来安装各类软件,尤其是开源软件应用。鉴于不少读者对此有需求,我决定专门制作一期关于Docker安装与使用的详细教程。我主要以Macbook(Mac平台)为例进...

Linux如何成功地离线安装docker(linux离线安装httpd)

系统环境:Redhat7.2和Centos7.4实测成功近期因项目需要用docker,所以记录一些相关知识,由于生产环境是不能直接连接互联网,尝试在linux中离线安装docker。步骤1.下载...

Docker 类面试题(常见问题)(docker面试题目)

Docker常见问题汇总镜像相关1、如何批量清理临时镜像文件?可以使用sudodockerrmi$(sudodockerimages-q-fdanging=true)命令2、如何查看...

面试官:你知道Dubbo怎么优雅上下线的吗?你:优雅上下线是啥?

最近无论是校招还是社招,都进行的如火如荼,我也承担了很多的面试工作,在一次面试过程中,和候选人聊了一些关于Dubbo的知识。Dubbo是一个比较著名的RPC框架,很多人对于他的一些网络通信、通信协议、...

【Docker 新手入门指南】第五章:Hello Word

适合人群:完全零基础新手|学习目标:30分钟掌握Docker核心操作一、准备工作:先确认是否安装成功打开终端(Windows用户用PowerShell或GitBash),输入:docker--...

松勤软件测试:详解Docker,如何用portainer管理Docker容器

镜像管理搜索镜像dockersearch镜像名称拉取镜像dockerpullname[:tag]列出镜像dockerimages删除镜像dockerrmiimage名称或id删除...