虚拟机搭建Zookeeper服务器集群完整笔记

本笔记主要记录自己搭建Zookeeper服务器的全过程,默认已经安装部署好Centos7。

一、虚拟机下Centos无法联网解决方案

1.首先调整虚拟机的网络适配器为NAT模式

2.设置虚拟机的“编辑”--》“虚拟网络编辑器”中的VMnet8的DHCP的设置两个选项都勾选上。

3.开启物理主机的VMware DHCP Service 和VMware NAT Service服务,命令

net start "VMware DHCP Service"
net start "VMware NAT Service"

4.CentOS默认不启动网卡,需要手动启动

 cd /etc/sysconfig/network-scripts/

  ls 查看一下ifcfg-eno后面对应的数字是什么,以ens33为例

  切换到root用户下,
  vi ifcfg-ens33
  编辑该文件
  设置

ONBOOT=yes

  即开启自动启用网络连接

  :wq 保存退出

5.在虚拟机的CentOS环境中,重启网络,命令

service NetworkManager stop
service network restart
service NetworkManager start

6.ping实验,ping通就可以上网了,通过ifconfig命令可以查看网址。

ping www.baidu.com
ifconfig

PS:推荐使用xshell远程ssl连接centos进行操作,xshell对复制粘贴操作很方便。

、CentOS安装JDK

1. JDK下载地址如下:

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

2.Centos安装wget命令;默认centos是不支持通过wget来下载文件,可以通过以下命令进行wget的安装。

yum -y install wget

3.安装完成wget后,下载jdk。首先在/opt/下创建/java/目录,并切换到该目录

mkdir /opt/java
cd /opt/java/

4.下载JDK,下载路径请选择对应的Centos系统位数(注意:此地址请从Oracle重新获取)。

wget -c http://download.oracle.com/otn-pub/java/jdk/8u171-b11/512cd62ec5174c3487ac17c61aaa89e8/jdk-8u171-linux-x64.tar.gz

5.解压缩JDK

tar -xzvf jdk-8u171-linux-x64.tar.gz

6.设置环境变量,修改/etc/profile文件

vi /etc/profile

并添加以下内容:

export JAVA_HOME=/opt/java/jdk1.8.0_171
export  CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
export  PATH=$PATH:$JAVA_HOME/bin

7.执行命令,使环境变量生效。

source    /etc/profile

8. 检查Java是否成功

java    -version

、CentOS安装Zookeeper

1. 下载Zookeeper压缩包

2. 创建目录/opt/zookeeper/  并进入该目录下载文件解压缩;

mkdir /opt/zookeeper
cd /opt/zookeeper/
wget -c http://mirror.bit.edu.cn/apache/zookeeper/stable/zookeeper-3.4.10.tar.gz
tar -xzvf zookeeper-3.4.10.tar.gz

3. 新建zookeeper配置文件

cp    /opt/zookeeper/zookeeper-/conf/zoo_sample.cfg        /opt/zookeeper/zookeeper-/conf/zoo.cfg

特别说明:本笔记的服务器配置信息如下:共三台服务器,IP地址分别为:

server1: 192.168.198.128
server2: 192.168.198.129
server3: 192.168.198.130

4.创建数据和日志目录;

mkdir /opt/zookeeper/data
mkdir /opt/zookeeper/dataLog

5.创建服务myid文件,在data文件夹创建myid文件,三台服务器分别创建myid文件,内容分别为1,2,3  用于服务器标识

touch  /opt/zookeeper/data/myid
vi       /opt/zookeeper/data/myid
:wq

6. 然后打开zoo.cfg并添加集群服务器IP和端口配置

vi /opt/zookeeper/zookeeper-3.4.10/conf/zoo.cfg

7. 添加以下内容 并保存;三台服务器分别进行该配置

dataDir=/opt/zookeeper/data
dataLogDir=/opt/zookeeper/dataLog
server.=:
server.=:
server.=:

注意:配置文件已经存在 dataDir的配置,请将配置文件的dataDir之前添加# 屏蔽原来的配置。(不然无法进行集群)

8. 分别启动三台服务器的zookeeper服务

/opt/zookeeper/zookeeper-/bin/zkServer.sh    start

提示:执行以后需要一些时间来启动起来服务,不要着急;可以用以下命令进行查看状态

/opt/zookeeper/zookeeper-/bin/zkServer.sh status

若长时间仍然没有启动成功,可以使用以下命令重启

/opt/zookeeper/zookeeper-/bin/zkServer.sh restart

以下命令可以前台启动,这个模式可以显示所有的错误信息

/opt/zookeeper/zookeeper-/bin/zkServer.sh start-foreground

其他说明:运行状态结果  standalone为单机版    follower为从服务器  leader为主服务器节点

至此服务器集群部署,大功告成!

虚拟机搭建Zookeeper服务器集群完整笔记的更多相关文章

  1. Zookeeper服务器集群的搭建与操作

    ZooKeeper 作用:Zookeeper 可以用来保证数据在zk集群之间的数据的事务性一致(原子操作). 介绍:Zookeeper 是 Google 的 Chubby一个开源的实现,是 Hadoo ...

  2. 搭建zookeeper+kafka集群

      搭建zookeeper+kafka集群 一.环境及准备 集群环境:   软件版本: 部署前操作: 关闭防火墙,关闭selinux(生产环境按需关闭或打开) 同步服务器时间,选择公网ntpd服务器或 ...

  3. CentOS6.3搭建ZooKeeper伪集群

    1. 将zookeeper安装包移动至/home, 解压后改名为zookeeper 相关命令 # 解压 .tar.gz # 重命名 zookeeper 2. 进入zookeeper/conf/目录下, ...

  4. Ubuntu18.04 搭建zookeeper单机版集群

    一台电脑启动三个虚拟机比较折腾,这里就用一台虚拟机模拟一下zk集群. 1.后台下载安装包到 /opt目录 sudo wget -b http://archive.apache.org/dist/zoo ...

  5. win10环境下搭建zookeeper伪集群

    一.下载zookeeper https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/ 这里笔者下载的是zookeeper-3.3.6 二.配置zoo ...

  6. window环境搭建zookeeper,kafka集群

    为了演示集群的效果,这里准备一台虚拟机(window 7),在虚拟机中搭建了单IP多节点的zookeeper集群(多IP节点的也是同理的),并且在本机(win 7)和虚拟机中都安装了kafka. 前期 ...

  7. Docker搭建Zookeeper&Kafka集群

    最近在学习Kafka,准备测试集群状态的时候感觉无论是开三台虚拟机或者在一台虚拟机开辟三个不同的端口号都太麻烦了(嗯..主要是懒). 环境准备 一台可以上网且有CentOS7虚拟机的电脑 为什么使用虚 ...

  8. 搭建hdfs服务器集群的搭建+trash

    完全分布式搭建需要三台机器:node1.node2和node3 搭建时间之前首先要保持时间一致:date ntpdateyum install ntpdatentpdate -u ntp.sjtu.e ...

  9. 一脸懵逼搭建Zookeeper分布式集群

    1:首先将http://zookeeper.apache.org/ 下载好的zookeeper-3.4.5.tar.gz上传到三台虚拟机上,之前博客搭建好的(安装Zookeeper之前记得安装好你的j ...

随机推荐

  1. iot:下一步要做的工作

    1.DeviceMessage抽象(定义&支持扩展)2.createDeviceMessage.analyseDeviceMessage(支持扩展)3.日志打印4.错误处理5.断线重连6.交互 ...

  2. 阿里云API网关(14)流控策略

    网关指南: https://help.aliyun.com/document_detail/29487.html?spm=5176.doc48835.6.550.23Oqbl 网关控制台: https ...

  3. spring boot 中active的profile会和标准配置合并吗

    如下图,两个profile配置文件,一个默认的(application.properties),一个是test的. 活跃配置为test. spring.profiles.active=test ste ...

  4. Django 学生管理系统

    1. 一对一 班级  模态增加 编辑 def classes(request): data = sqlheper.get_list("select cid,title from class& ...

  5. Linux:sheel脚本for的用法,及日期参数+1day用法

    记录下shell的for的用法,及参数是日期的情况下,该日期+1day的用法: #!/usr/bin/env bash source /app/catt/login.sh p_days="2 ...

  6. 自动化运维:使用flask+mysql+highcharts搭建监控平台

    1.前言 本来想做一个比较完善的监控平台,只需要做少许改动就可以直接拿来用,但是在做的过程中发现要实现这个目标所需的工作量太大,而当前的工作中对其需求又不是特别明显.所以就退而求其次,做了一个类似教程 ...

  7. 0417 jQuery基础知识

    jQuery基础知识 jQuery需要引入一个js文件,并且这个文件在所有js代码之前(包括引入的其他js文件) 基础操作(对比js): 1.找标签: js:document.getElement.. ...

  8. jquery checkbox勾选/取消勾选checked属性不生效问题

    http://www.cnblogs.com/KeenLeung/p/3799895.html

  9. ASP.NET Core + Docker + Jenkins + gogs + CentOS 从零开始搭建持续集成

    为什么不用gitlab? 没有采用gitlab,因为gitlab比较吃配置,至少得2核4G的配置.采用go语言开发的gogs来代替,搭建方便(不到10分钟就能安装完成),资源消耗低,功能也比较强大,也 ...

  10. 是否可能两个ETH私钥对应同一个地址

    原提问在这里. 笔者在使用到neon-js中的私钥生成方法时发现其使用了getRandomValues方法来生成64字符长度的私钥,进而考虑到其随机性,若是调用足够多次,依然有可能生成两个完全一样的私 ...