初识zookeeper以及安装和集群部署

 
 
一、Zookeeper单体版安装
    在安装zookeeper之前要先安装jdk环境,具体在linux环境安装jdk1.8请参照linux笔记。
    1.在/usr/local/zoo 文件夹下执行命令 wget http://apache.fayea.com/zookeeper/zookeeper-3.5.5/apache-zookeeper-3.5.5.tar.gz 下载zookeeper压缩包,并执行tar -zxvf 进行解压。
    2.初次使用zookeeper需要将conf文件夹下的zoo_sample.cfg修改为zoo.cfg。
    3.在zookeeper安装目录下建立一个文件夹data。
    4.修改zoo.cfg文件中的dataDir为data的路径,保存退出。
    5.启动zookeeper,zkServer.sh.
    (遇到的问题,在bin目录下执行zkServer.sh start提示我命令不存在???
    原因是zookeeper没有配置环境变量,可以选择配置环境变量或者使用命令./zkServer.sh start)
    (修改之后。。。。命令好使了,但是启动失败,连原因都没有,查看zookeeper目录下的logs发现报错:Error: Could not find or load main class org.apache.zookeeper.server.quorum.QuorumPeerMain
)    这里注意一个大坑:
    在zookeeper3.5.5版本中,官网下载有两个文件:
要选择第一个压缩包下载,第二个压缩包是源码包,第一个压缩包下载后按照正常步骤就可以运行起来,太坑了。
二、zookeeper操作常用命令
    1.启动服务
    ./zkServer.sh start
    2.服务状态
    ./zkServer.sh staus
    3.停止服务
    ./zkServer.sh stop
    4.重启服务器
    ./zkServer.sh restar
    5.连接服务器
    ./zkCli.sh -timeout 0 -r -server ip:port 
三、zookeeper集群部署
    1.修改虚拟机的IP地址为静态IP,否则搭建zookeeper集群会因为IP地址发生变化而报错。
    vim /etc/sysconfig/network-scripts/ifcfg-ens33
  只能存在一个ifcfg-ens33 文件   例如: ifcfg-ens33 / ifcfg-ens32 /ifcfg-ens33.bck     多余的文件必须删除
    修改如下:
    TYPE=Ethernet
    PROXY_METHOD=none
    BROWSER_ONLY=no
    BOOTPROTO=static               #这里修改为static,代表是静态的IP
    IPADDR=192.168.162.128      #添加自定义IP地址
    NETMASK=255.255.255.0   #添加子网掩码
    GATEWAY=192.168.162.2   #添加网关
    DNS1=192.168.162.2        #添加DNS1可以与网关一致
    DNS2=8.8.8.8                 #添加DNS2 
    DEFROUTE=yes
    IPV4_FAILURE_FATAL=no
    IPV6INIT=yes
    IPV6_AUTOCONF=yes
    IPV6_DEFROUTE=yes
    IPV6_FAILURE_FATAL=no
    IPV6_ADDR_GEN_MODE=stable-privacy
    NAME=ens33
    UUID=48f38312-9b20-431c-b873-f71c64f1f1f8
    DEVICE=ens33
    ONBOOT=yes
    2.配置host文件 (选配)
    vim etc/host
    增加如下内容:
    192.168.162.128 vm01
    192.168.162.129 vm02
    192.168.162.130 vm03
    将IP地址与别名进行绑定,这里有个问题,配置了host之后ping不同,采用IP就好使,这个根据实际情况看吧。
 
    3.修改zoo.cfg文件
    增加如下内容
    server.1=vm01:2888:3888
    server.2=vm02:2888:3888
    server.3=vm03:2888:3888
    公式:server.ID=host文件中设置的名称,如果没设置为IP:集群内通信的端口:选举投票的端口
    4.在data文件夹下建myid文件,里面内容与ID相同
    
    5.关闭防火墙
    systemctl status firewalld  查看防火墙状态
    systemctl stop firewalld 停止防火墙
    systemctl disable firewalld 禁止使用防火墙
    6.分别启动三台虚拟机的zookeeper服务
  

初识zookeeper以及安装和集群部署的更多相关文章

  1. Hadoop及Zookeeper+HBase完全分布式集群部署

    Hadoop及HBase集群部署 一. 集群环境 系统版本 虚拟机:内存 16G CPU 双核心 系统: CentOS-7 64位 系统下载地址: http://124.202.164.6/files ...

  2. kafka单机版的安装、集群部署 及使用

    1.安装kafka(单机版) 1.1上传 kafka_2.11-2.0.0.tgz 到 /root/Downloads 1.2解压 tar 包 tar -zxvf kafka_2.11-2.0.0.t ...

  3. redis CentOS6.5安装及集群部署

    .下载redis source包 链接:https://pan.baidu.com/s/122ZCjNvjl9Jx6M2YsLrncw 密码:92ze 2.解压 tar -xzf redis-3.2. ...

  4. k8s1.9.0安装--完整集群部署

    三.完整集群部署 - kubernetes-with-ca 1. 理解认证授权 1.1 为什么要认证 想理解认证,我们得从认证解决什么问题.防止什么问题的发生入手.防止什么问题呢?是防止有人入侵你的集 ...

  5. k8s1.9.0安装--基础集群部署

    二.基础集群部署 - kubernetes-simple 1. 部署ETCD(主节点) 1.1 简介 kubernetes需要存储很多东西,像它本身的节点信息,组件信息,还有通过kubernetes运 ...

  6. zookeeper的安装及集群配置

    1.解压 2.修改配置文件 cp zoo_sample.cfg zoo.cfg vim zoo.cfg dataDir=/usr/local/zookeeperData 其余采用默认 参数说明: ti ...

  7. Centos7上安装Kubernetes集群部署docker

    一.安装前准备1.操作系统详情需要三台主机,都最小化安装 centos7.3,并update到最新 [root@master ~]# (Core) 角色 主机名 IPMaster master 192 ...

  8. RabbitMQ安装以及集群部署

    本次记录安装RabbitMQ的过程,只针对MAC下单机版安装.单机集群安装方法以及配置haproxy负载均衡. RabbitMQ单机版本安装 RabbitMQ单机集群安装方法(适合开发练习) Rabb ...

  9. Kubernetes全栈架构师(二进制高可用安装k8s集群部署篇)--学习笔记

    目录 二进制高可用基本配置 二进制系统和内核升级 二进制基本组件安装 二进制生成证书详解 二进制高可用及etcd配置 二进制K8s组件配置 二进制使用Bootstrapping自动颁发证书 二进制No ...

随机推荐

  1. [JZOJ3168] 【GDOI2013模拟3】踢足球

    题目 描述 题目大意 有两个队伍,每个队伍各nnn人. 接到球的某个人会再下一刻随机地传给自己人.敌人和射门,射门有概率会中. 每次射门之后球权在对方111号选手. 某个队伍到了RRR分,或者总时间到 ...

  2. SpringData_01_SpringData的快速入门

    1.1SpringData JPA概述 Spring Data JPA 是 Spring 基于 ORM 框架.JPA 规范的基础上封装的一套JPA应用框架,可使开发者用极简的代码即可实现对数据库的访问 ...

  3. Android 之 BroadcaseReceiver

    1.在AndroidManifest.xml中注册 <receiver android:name=".MyReceiver"> <intent-filter &g ...

  4. iOS之CATiledLayer的属性简介和使用

    1.CATiledLayer简介 CATiledLayer用于大型图片进行分割显示,需要显示的图片才会加载,直接上代码: - (void)viewDidLoad { [super viewDidLoa ...

  5. 左神算法进阶班4_2累加和为aim的最长子数组

    [题目] 给定一个数组arr,和一个整数aim,求在arr中,累加和等于num的最长子数组的长度 例子: arr = { 7,3,2,1,1,7,7,7 } aim = 7 其中有很多的子数组累加和等 ...

  6. 基础类型转化成String 转

    基础类型转化成String 在程序中你可能时常会需要将别的类型转化成String,有时候可能是一些基础类型的值.在拼接字符串的时候,如果你有两个或者多个基础类型的值需要放到前面,你需要显式的将第一个值 ...

  7. shell下时间日期的加减乘除运算

    首先我们先来说说什么是shell下的时间戳: 自1970年1月1日(00:00:00 UTC/GMT)以来的秒数.它也被称为Unix时间戳(Unix Timestam.Unix epoch.POSIX ...

  8. [转]浅谈C#中常见的委托

    一提到委托,浮现在我们脑海中的大概是听的最多的就是类似C++的函数指针吧,呵呵,至少我的第一个反应是这样的. 关于委托的定义和使用,已经有诸多的人讲解过,并且讲解细致入微,尤其是张子阳的那一篇.我就不 ...

  9. 【NOIP2013模拟联考7】OSU

    [NOIP2013模拟联考7]OSU 描述 Description osu 是一款群众喜闻乐见的休闲软件. 我们可以把osu的规则简化与改编成以下的样子: 一共有n次操作,每次操作只有成功与失败之分, ...

  10. json-server 和mock.js生成大量json数据

    JSON-server和mock.jsmock文件夹下 db.json db.jsjson-sever使用 安装:npm install json-server -g/mock 目录下执行json-s ...