Hadoop 之 Centos 7 搭建 Zookeeper 3.8.2 集群(六)

Zookeeper 集群搭建

  • 一.Centos 虚拟机配置
    • 1.新建虚拟机,选择【典型】
    • 2.下一步,【稍后安装操作系统】
    • 3.下一步,选择【Linux】【Centos7 64位】
    • 4.下一步,设置虚拟机名称和安装目录
    • 5.下一步,默认
    • 6.下一步,【自定义硬件配置】选择下载的镜像
    • 7.完成,启动虚拟机
    • 8.登录并绑定网卡设置地址
  • 二.Zookeeper 配置
    • 1.Zookeeper 下载
    • 2.单机配置
    • 3.集群配置

一.Centos 虚拟机配置

阿里云镜像站

VmWare 安装 Centos 7

1.新建虚拟机,选择【典型】

在这里插入图片描述

2.下一步,【稍后安装操作系统】

在这里插入图片描述

3.下一步,选择【Linux】【Centos7 64位】

在这里插入图片描述

4.下一步,设置虚拟机名称和安装目录

在这里插入图片描述

5.下一步,默认

在这里插入图片描述

6.下一步,【自定义硬件配置】选择下载的镜像

在这里插入图片描述
在这里插入图片描述

7.完成,启动虚拟机

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

自动分区

在这里插入图片描述
在这里插入图片描述

开始安装

在这里插入图片描述

设置用户名密码

在这里插入图片描述

在这里插入图片描述

重启系统

在这里插入图片描述

8.登录并绑定网卡设置地址

## 修改网卡配置
vi /etc/sysconfig/network-scripts/ifcfg-ens33
## 增加以下配置
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
ONBOOT=yes
## 删除 dhcp : BOOTPROTO=dhcp 并重启系统

在这里插入图片描述

二.Zookeeper 配置

1.Zookeeper 下载

Apache Zookeeper 下载

在这里插入图片描述

2.单机配置

## 1.解压缩 zookeeper
tar zxvf apache-zookeeper-3.8.2-bin.tar.gz
## 2.移动位置
mv apache-zookeeper-3.8.2-bin /usr/local/zookeeper
## 3.解压缩 jdk
tar zxvf jdk-11.0.19_linux-x64_bin.tar.gz
## 4.移动位置
mv jdk-11.0.19 /usr/local/java
## 5.配置环境变量
echo 'export JAVA_HOME=/usr/local/java' >> /etc/profile
echo 'export ZOOKEEPER_HOME=/usr/local/zookeeper' >> /etc/profile
echo 'export PATH=${JAVA_HOME}/bin:${ZOOKEEPER_HOME}/bin:${PATH}' >> /etc/profile
## 6.刷新环境变量
source /etc/profile
## 7.复制配置
cp $ZOOKEEPER_HOME/conf/zoo_sample.cfg $ZOOKEEPER_HOME/conf/zoo.cfg
## 8.单机启动
zkServer.sh start

在这里插入图片描述

## 1.停止服务
zkServer.sh stop

在这里插入图片描述

3.集群配置

地址分配如下:

节点地址Host
192.168.1.100zk1
192.168.1.101zk2
192.168.1.102zk3

zoo.cfg 配置说明

配置项默认值含义
tickTime2000通信心跳
initLimit10Leader 和 Follower 初始化容忍最多心跳书
syncLimit5Leader 和 Follower 同步超时时间,超过此心跳数则剔除 Follower
dataDir/tmp/zookeeper数据目录
clientPort2181客户端端口
server.A=B:C:DA 服务器序号
B 本机地址
C Leader 和 Follower 通信端口
D 选举通信端口
## 分别设置集群内虚拟机域名(查看域名:hostname)
hostnamectl set-hostname zk1
hostnamectl set-hostname zk2
hostnamectl set-hostname zk3
## 分别设置集群内虚拟机域名解析
echo '192.168.1.100 zk1' >> /etc/hosts
echo '192.168.1.101 zk2' >> /etc/hosts
echo '192.168.1.102 zk3' >> /etc/hosts
## 创建数据目录并修改 zoo.cfe 配置的 dataDir 为新创建目录
mkdir -p $ZOOKEEPER_HOME/data
## 创建文件 myid 用于标识服务器序号
touch $ZOOKEEPER_HOME/data/myid
## 修改 zoo.cfg 配置,增加集群配置
echo 'server.1=zk1:3188:3288' >> $ZOOKEEPER_HOME/conf/zoo.cfg
echo 'server.2=zk2:3188:3288' >> $ZOOKEEPER_HOME/conf/zoo.cfg
echo 'server.3=zk3:3188:3288' >> $ZOOKEEPER_HOME/conf/zoo.cfg
## 分发当前配置和文件到 zk2 zk3
scp -r /usr/local/zookeeper root@zk2:/usr/local/
scp -r /usr/local/zookeeper root@zk3:/usr/local/
scp -r /usr/local/java root@zk2:/usr/local/
scp -r /usr/local/java root@zk3:/usr/local/
scp /etc/profile root@zk2:/etc/profile
scp /etc/profile root@zk3:/etc/profile
## 刷新 zk2 zk3 环境变量并分别设置服务 ID
source /etc/profile
echo 1 >> $ZOOKEEPER_HOME/data/myid
echo 2 >> $ZOOKEEPER_HOME/data/myid
echo 3 >> $ZOOKEEPER_HOME/data/myid

配置免密登录

## 修改 192.168.1.100 服务器
ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa
ssh-copy-id -i ~/.ssh/id_rsa root@zk2
ssh-copy-id -i ~/.ssh/id_rsa root@zk3
## 修改 192.168.1.101 服务器
ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa
ssh-copy-id -i ~/.ssh/id_rsa root@zk1
ssh-copy-id -i ~/.ssh/id_rsa root@zk3
## 修改 192.168.1.102 服务器
ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa
ssh-copy-id -i ~/.ssh/id_rsa root@zk1
ssh-copy-id -i ~/.ssh/id_rsa root@zk2
## 分别配置本地登录
ssh-copy-id -i ~/.ssh/id_rsa root@localhost
## 1.关闭防火墙
systemctl stop firewalld && systemctl disable firewalld
## 2.分别启动集群内 zookeeper 服务
zkServer.sh start && ssh root@zk2 "source /etc/profile && zkServer.sh start && exit" && ssh root@zk3 "source /etc/profile && zkServer.sh start && exit"
## 3.查看状态
zkServer.sh status
## 4.关闭
zkServer.sh stop && ssh root@zk2 "source /etc/profile && zkServer.sh stop && exit" && ssh root@zk3 "source /etc/profile && zkServer.sh stop && exit"

ZK1

在这里插入图片描述

ZK2

在这里插入图片描述

ZK3

在这里插入图片描述

停止

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/8032.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机系统结构-多处理机

概念,多处理机指的是,多台含cpu的机器共享一个存储器。 (可以通过网络宽带,也可以通过线直连这个存储器。当然他们也可以有自己的私有存储器或者高速缓存) 几个cpu公用一个总线,没问题。但是如果十几个cpu…

elasticsearch查询操作(API方式)

说明&#xff1a;elasticsearch查询操作除了使用DSL语句的方式&#xff08;参考&#xff1a;http://t.csdn.cn/k7IGL&#xff09;&#xff0c;也可以使用API的方式。 准备 使用前需先导入依赖 <!--RestHighLevelClient依赖--><dependency><groupId>org.ela…

pytest中生成allure报告时,测试报告中统计的用例数不正确

【问题描述】&#xff1a;pytest中生成allure报告时&#xff0c;测试报告中统计的用例数不正确&#xff0c;用例数总是比实际用例数多 【问题定位】&#xff1a;因为生成index.html的allure报告&#xff0c;是根据临时的json文件生成的。每次运行时&#xff0c;没有删除旧的js…

php使用chatGPT生成一些东西做一个记录

好久没写了&#xff0c;这么长时间都去坐一些自己感兴趣的事情去了。 之前使用chatgpt-3,效果一直不咋好&#xff0c;这里我们来说说各个版本区别 gpt-3收费成本可以接受&#xff0c;生成的内容对话有点不太聪明的样子 git-3.5-turbo收费相对来说低&#xff0c;生成文本质量…

PCB封装设计指导(十四)保存并产生device文件

PCB封装设计指导(十四)保存并产生PSM和device文件 封装命名完成之后,基本上封装的建立也接近结束,如果调网表使用的是第三方网表,还需要device文件才能调入。 但是PSM文件是不管第一方和第三方网表都是需要的,下面介绍如何产生这两个文件。 打开封装文件,如下图点击Fil…

openlayers系列:加载arcgis和geoserver在线离线切片

https://www.freesion.com/article/1751396517/ 1.背景 有个项目需要使用openlayer加载各种服务上发布的数据&#xff0c;坐标系也不同&#xff0c;我们都知道openalyer默认可以加载EPAG:3857,要加载4490的坐标系的数据需要重新定义一下&#xff0c;之后再加载。一想起要重新…

SpringBoot Demo工程搭建

SpringBoot Demo工程搭建 pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://ma…

【C#】并行编程实战:使用 Visual Studio 调试任务

并行编程可以提高应用程序的性能&#xff0c;但是调试起来会更困难&#xff0c;这一点在之前的章节中我们已经有了很直观的感受。对于程序而言&#xff0c;保证程序的正确性和保证性能同样重要。 本章将介绍可以在 Visual Studio 中的调试工具&#xff08;包括 Thread 窗口、Ta…

Vue中TodoList案例_编辑

nextTick: MyItem.vue 加一个编辑按钮&#xff0c;input框&#xff1a;blur失去焦点时触发事件handleBlur&#xff0c;ref获取真实dom&#xff1a; <inputtype"text"v-show"todo.isEdit":value"todo.title"blur"handleBlur(todo,$even…

服务器中了360后缀勒索病毒,360后缀勒索病毒介绍解密数据恢复

360后缀勒索病毒&#xff0c;是BeijingCrypt勒索家族中的一种勒索软件病毒&#xff0c;这种恶意软件一旦攻击了企业的服务器就会利用自身独特的加密技术来全盘扫描系统文件&#xff0c;并对用户的全部文件进行加密&#xff0c;并要求用户支付赎金以解锁文件。近期&#xff0c;我…

命名约定~

1.变量的命名约定 JavaScript 变量名称是区分大小写的&#xff0c;大写和小写字母是不同的。比如&#xff1a; let DogName Scooby-Doo; let dogName Droopy; let DOGNAME Odie; console.log(DogName); // "Scooby-Doo" console.log(dogName); // "Dro…

Hadoop教程_编程入门自学教程_菜鸟教程-免费教程分享

教程简介 Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下&#xff0c;开发分布式程序。充分利用集群的威力进行高速运算和存储。Hadoop实现了一个分布式文件系统&#xff08; Distributed File System&#xff09;&#xff0…

训练营day6-7:数组篇

目录 1、LeetCode &#xff1a;242.有效的字母异位词 2、349. 两个数组的交集 3、202. 快乐数 4、1. 两数之和 5、454. 四数相加 II 6、383. 赎金信 7、15. 三数之和 8、18. 四数之和 1、LeetCode &#xff1a;242.有效的字母异位词 还是比较简单的&#xff0c;直接统计…

SystemVerilog 第2章:数据类型

在 Verilog中,初学者经常分不清reg和wire两者的区别。应该使用它们中哪一个来驱动端口?连接不同模块时又该如何做? Systemverilog对经典的reg数据类型进行了改进,使得它除了作为一个变量以外,还可以被连续赋值、门单元和模块所驱动。为了与寄存器类型相区别,这种改进的数据类…

Python封装:提升代码质量的秘诀

在面向对象编程&#xff08;OOP&#xff09;中&#xff0c;封装是一种将数据和操作数据的方法绑定在一起的机制&#xff0c;以隐藏内部实现的细节&#xff0c;使代码更简洁、更安全。在Python中&#xff0c;我们通过定义类来实现封装。在本文中&#xff0c;我们将介绍Python封装…

常微分方程建模R包ecode(一)——构建常微分方程系统

常微分方程在诸多研究领域中有着广泛应用&#xff0c;本文希望向大家介绍笔者于近期开发的R包ecode&#xff0c;该包采用简洁易懂的语法帮助大家在R环境中构建常微分方程&#xff0c;并便利地调用R图形接口&#xff0c;研究常微分方程系统的相速矢量场、平衡点、稳定点等解析性…

AI面试官:LINQ和Lambda表达式(三)

AI面试官&#xff1a;LINQ和Lambda表达式&#xff08;三&#xff09; 当面试官面对C#中关于LINQ和Lambda表达式的面试题时&#xff0c;通常会涉及这两个主题的基本概念、用法、实际应用以及与其他相关技术的对比等。以下是一些可能的面试题目&#xff0c;附带简要解答和相关案…

视频内存过大如何压缩变小?这个压缩方法了解一下

在日常生活中&#xff0c;不管是日常随手拍的视频还是在工作中遇到的视频文件&#xff0c;在编辑处理的时候&#xff0c;如果视频的内存过大&#xff0c;不仅会占用很大的内存&#xff0c;在传送的时候也会花费很长时间&#xff0c;这时候将视频给压缩一下就可以很好的解决这一…

Feign远程调用如何携带form url

这是一个需要携带参数在form url上的请求&#xff0c;正常调用方式是这样的 响应&#xff1a; 在Feign中&#xff0c;应该怎么调用呢?? 定义OpenFeignClient接口 FeignClient(value "client-service", url "http://127.0.0.1/api") public interface…

代理模式来啦

一、代理模式 代理模式是我们工作中比较常用的设计模式之一了&#xff0c;主要用于隐藏具体实现类的实现细节或者对实现类的行为进行增强&#xff0c;即对具体实现的前后做些特殊逻辑。 既然说是代理&#xff0c;那就要对客户端隐藏真实实现&#xff0c;由代理来负责客户端的所…