Linux系统运维之Zookeeper集群配置
一、简介
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。
1. ZooKeeper的基本运转流程
2. Leader工作流程
Leader主要有三个功能:
3. Follower工作流程
Follower主要有四个功能:
1. 向Leader发送请求(PING消息、REQUEST消息、ACK消息、REVALIDATE消息)
Follower的消息循环处理如下几种来自Leader的消息:
1.PING消息:心跳消息
二、安装配置
1. 环境信息
IP:192.168.10.10 Hostname:LFTo-Zookeeper01
IP:192.168.10.11 Hostname:LFTo-Zookeeper02
IP:192.168.10.12 Hostname:LFTo-Zookeeper03
2. 安装配置
安装JDK基础环境
[worker@LFTo-Zookeeper01 ~]$ cd /home/worker/soft/
[worker@LFTo-Zookeeper01 soft]$ wget http://10.12.3.24/soft/jdk/jdk1.8.0_65.tar.gz
[worker@LFTo-Zookeeper01 soft]$ mkdir -p /home/worker/usr/local/
[worker@LFTo-Zookeeper01 soft]$ tar xf jdk1.8.0_65.tar.gz -C /home/worker/usr/local/
[worker@LFTo-Zookeeper01 soft]$ ln -s /home/worker/usr/local/jdk1.8.0_65 /home/worker/usr/local/jdk
[worker@LFTo-Zookeeper01 soft]$ vim ~/.bash_profile
#########JDK ENV#########
export JAVA_HOME=/home/worker/usr/local/jdk
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH 生效环境变量
[worker@LFTo-Zookeeper01 soft]$ source ~/.bash_profile
安装zookeeper,配置单点
[worker@LFTo-Zookeeper01 soft]$ wget http://10.12.3.24/upload/zhaobin/zookeeper/zookeeper-3.4.6.tar.gz
[worker@LFTo-Zookeeper01 soft]$ tar xf zookeeper-3.4.6.tar.gz -C ~/opt/
[worker@LFTo-Zookeeper01 soft]$ cd ~/opt/zookeeper-3.4.6/conf
[worker@LFTo-Zookeeper01 conf]$ cp zoo_sample.cfg zoo.cfg #修改配置文件
[worker@LFTo-Zookeeper01 conf]$ vim zoo.cfg
dataDir=/home/worker/opt/zookeeper_data/ #创建数据目录
[worker@LFTo-Zookeeper01 conf]$ mkdir -p /home/worker/opt/zookeeper_data/
关闭、启动、重启服务等
[worker@LFTo-Zookeeper01 conf]$ /home/worker/opt/zookeeper-3.4.6/bin/zkServer.sh --help
JMX enabled by default
Using config: /home/worker/opt/zookeeper-3.4.6/bin/../conf/zoo.cfg
Usage: /home/worker/opt/zookeeper-3.4.6/bin/zkServer.sh {start|start-foreground|stop|restart|status|upgrade|print-cmd}
3. 集群配置
在集群的每台服务器host中添加以下配置
[root@LFTo-Zookeeper01 ~]# vim /etc/hosts
192.168.10.10 LFTo-Zookeeper01
192.168.10.11 LFTo-Zookeeper02
192.168.10.12 LFTo-Zookeeper03
修改配置文件,配置集群
[worker@LFTo-Zookeeper01 conf]$ vim zoo.cfg
server.1=LFTo-Zookeeper01:2888:3888
server.2=LFTo-Zookeeper02:2888:3888
server.3=LFTo-Zookeeper03:2888:3888
[worker@LFTo-Zookeeper01 conf]$ echo '1' >> /home/worker/opt/zookeeper_data/myid
.
.
.
.
[worker@LFTo-Zookeeper02 conf]$ echo '2' >> /home/worker/opt/zookeeper_data/myid
[worker@LFTo-Zookeeper03 conf]$ echo '3' >> /home/worker/opt/zookeeper_data/myid
重启zookeeper服务
[worker@LFTo-Zookeeper01 conf]$ ~/opt/zookeeper-3.4.6/bin/zkServer.sh restart
Linux系统运维之Zookeeper集群配置的更多相关文章
- 《跟老男孩学Linux运维:Web集群实战》读书笔记
Linux 介绍 Linux 安装 Linux 调优 Web 基础 Nginx 应用 LNMP 应用 PHP 缓存加速 Nginx 调优 MySQL 应用 NFS 网络文件共享 Nginx 反向代理与 ...
- 大数据运维尖刀班 | 集群_监控_CDH_Docker_K8S_两项目_腾讯云服务器
说明:大数据时代,传统运维向大数据运维升级换代很常见,也是个不错的机会.如果想系统学习大数据运维,个人比较推荐通信巨头运维大咖的分享课:https://url.cn/5HIqOOr,主要是实战强.含金 ...
- Linux系统运维笔记(五),CentOS 6.4安装java程序
Linux系统运维笔记(五),CentOS 6.4安装java程序 用eclipse编译通的java程序,现需要实施到服务器.实施步骤: 一,导出程序成jar包. 1,在主类编辑界面点右健,选 ru ...
- Linux系统运维笔记(四),CentOS 6.4安装 MongoDB
Linux系统运维笔记(四),CentOS 6.4安装 MongoDB 1,下载 https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6 ...
- Linux系统运维笔记(四),CentOS 6.4安装Nginx
Linux系统运维笔记(四),CentOS 6.4安装Nginx 1,安装编译工具及库文件 yum -y install make zlib zlib-devel gcc-c++ libtool op ...
- Linux系统运维笔记(三),设置IP和DNS
Linux系统运维笔记(三),设置IP和DNS 手工配置静态的IP地址 也就是手工配置IP地址.子网掩码.网关和DNS. vi /etc/sysconfig/network-scripts/ifcfg ...
- Linux系统运维笔记(二),Linux文件编辑命令
Linux系统运维笔记 Linux文件编辑命令 首先我们使用命令 vi filename 打开一个文件,这个时候进入到的是命令模式 接下来我们按i,然后键盘随便输入写内容. 然后按ESC重新进入到命令 ...
- Linux系统运维笔记(一),查看系统版本和设置系统时间
Linux系统运维笔记 查看系统版本和设置系统时间 查看系统版本 lsb_release -a (适用于所有的linux,包括Redhat.SuSE.Debian等发行版,但是在debian下要安装l ...
- Linux系统运维笔记(6),CentOS 7.6双网卡路由配置
Linux系统运维笔记(6),CentOS 7.6双网卡路由配置. 一,先确认系统版本: [root@localhost ~]# cat /etc/redhat-releaseCentOS Linux ...
- Linux系统运维相关的面试题 (问答题)
这里给大家整理了一些Linux系统运维相关的面试题,有些问题没有标准答案,希望要去参加Linux运维面试的朋友,可以先思考下这些问题. 一.Linux操作系统知识 1.常见的Linux发行版本都有 ...
随机推荐
- 从0到1手把手教你ASP.NET Core Web API项目配置接口文档Swagger(一)
一.创建ASP.NET Core Web API项目(若项目已创建,则可跳过本节内容) 1.双击打开VS2022. 2.单击"创建新项目",如下图. 3.选择"ASP.N ...
- oracle删除一张表后,索引,同义词,视图,约束会被删除么
问题描述:看到有一道题,说删除一张表之后,什么会被关联删除 进行测试,看看一张表什么会被关联删除,进行scoot下的EMP进行测试 一.创建测试需求用例 表结构: SQL> desc emp; ...
- jquery全选,全不选,反选,获取选择框的值
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- [MAUI]模仿微信“按住-说话”的交互实现
@ 目录 创建页面布局 创建手势控件 创建TalkBox 创建动画 拖拽物动画 按钮激活动画 TalkBox动画 Layout动画 项目地址 .NET MAUI跨平台框架包含了识别平移手势的功能,在之 ...
- CSS3-页面布局基础一
一.CSS概要 web前端开发者最最注的内容是三个:HTML.CSS与JavaScript,他们分别在不同方面发挥自己的作用,HTML实现页面结构,CSS完成页面的表现与风格,JavaScript实现 ...
- C++核心知识回顾(函数&参数、异常、动态分配)
复习C++的核心知识 函数与参数 传值参数.模板函数.引用参数.常量引用参数 传值参数 int abc(int a,int b,int c) { return a + b * c; } a.b.c是函 ...
- python:冒泡排序(Bubble Sort)超详细教程!
关于排序,真的非常的重要.数据可以从小到大排序,也可以从大到小排序.这样对于一个有序的数据,我们处理起来就很方便,这对于我们的工作帮助是很大的. 那么你拿到一组无序的数据,你将要如何去处理它呢? 冒泡 ...
- Java并发(三)----创建线程的三种方式及查看进程线程
一.直接使用 Thread // 创建线程对象 Thread t = new Thread() { public void run() { // 要执行的任务 } }; // ...
- [Pytorch框架] 5.2 Pytorch处理结构化数据
文章目录 5.2 Pytorch处理结构化数据 简介 数据预处理 定义数据集 定义模型 训练 import numpy as np import pandas as pd import torch f ...
- [Pytorch框架] 4.2.2 使用Tensorboard在 PyTorch 中进行可视化
文章目录 4.2.2 使用Tensorboard在 PyTorch 中进行可视化 Tensorboard 简介 Tensorboard 安装 页面 SCALAR IMAGES GRAPHS HISTO ...