记一次zookeeper集群搭建

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了记一次zookeeper集群搭建相关的知识,希望对你有一定的参考价值。

  1. 虚拟机环境的准备

    操作系统使用的debian7.0 64位,虚拟机软件使用的virtual-box

    虚拟机使用的centos6.9无桌面版(本来下载一个7.0 发现没有32位的)

    centos.iso下载地址:http://mirrors.163.com/centos/6.9/isos/i386/CentOS-6.9-i386-minimal.iso

    安装virtual-box过程中有依赖问题,用sudo apt -f -y install解决了。

    安装centos时,设置内启用PAE/NX(不知道什么东东,不启用安装会报错),还有个很怪的,安装过程中找不到安装盘。。。重新把虚拟光盘挂一下(不知道为什么自己掉了)

    添加用户:group add vm    useradd -g vm -d /home/vm vm   

    设置密码:passwd vm

    安装完成后对网络进行配置,静态IP,主机名,hosts文件等

    我选的是仅主机网络,安装第一个虚拟机后:

    配置IP:/etc/sysconfig/network-scripts/ifcfg-eth0

    DEVICE=eth0#后面几台机器采用clone复制过去的,后面几台机器这个值要改为eth1
    HWADDR=08:00:27:C5:32:8A#和虚拟机哪里显示的MAC保持一致
    TYPE=Ethernet
    UUID=a16621d2-ec8a-4714-b6ab-ddcff4cef17f
    ONBOOT=yes#修改为yes
    NM_CONTROLLED=yes
    BOOTPROTO=static#静态
    NETMASK=255.255.254.0
    IPADDR=192.168.56.101
    GATEWAY=192.168.56.1

    主机名修改:/etc/sysconfig/network

    NETWORKING=yes
    HOSTNAME=vm01.wqf    #后面机器序号递增
    hosts文件修改:

    192.168.56.101   vm01.wqf
    192.168.56.102   vm02.wqf
    192.168.56.103   vm03.wqf
    192.168.56.104   vm04.wqf
    192.168.56.105   vm05.wqf
    192.168.56.106   vm06.wqf
    

    第一台虚拟机安装完成后,从第一台复制出来5个,把设置改一下

    后面发现有防火墙的问题我直接关掉了。。

  1. java环境zookeeper部署(先配置JAVA环境)

    zookeeper下载地址:zookeeper-3.4.6.tar.gz


    创建zookeeper目录:cd /opt && mkdir zookeeper && chown vm:vm zookeeper/ && cd zookeeper

    把下载的文件传到虚拟机:scp /opt/zookeeper/zookeeper-3.4.6.tar.gz [email protected]:/opt/zookeeper/

    解压:tar -zxvf zookeeper-3.4.6.tar.gz

    配置:cd /opt/zookeeper/zookeeper-3.4.6

    cp ./conf/zoo_sample.cfg ./conf/zoo.cfg

    vi coo.cfg

    修改dataDir:dataDir=/home/vm/storage/zookeeper

    添加:

    server.1=vm01.wqf:2888:3888  #集群设置
    server.2=vm02.wqf:2888:3888  
    server.3=vm03.wqf:2888:3888  
    server.4=vm04.wqf:2888:3888  
    server.5=vm05.wqf:2888:3888  
    server.6=vm06.wqf:2888:3888


    配置文件可以在一台机器修改后传到其它虚拟机

    mkdir /home/vm && chown -R vm:vm /home/vm

    mkdir -p /home/vm/storage/zookeeper


  2. 启动集群

    /opt/zookeeper/zookeeper-3.4.6/bin/zkServer.sh start-foreground #相当与非后台启动,会在控制台输出信息
    /opt/zookeeper/zookeeper-3.4.6/bin/zkServer.sh print-cmd  
    /opt/zookeeper/zookeeper-3.4.6/bin/zkServer.sh start #启动,后台启动

    /opt/zookeeper/zookeeper-3.4.6/bin/zkServer.sh restart #重启

    /opt/zookeeper/zookeeper-3.4.6/bin/zkServer.sh stop #停止服务
    /opt/zookeeper/zookeeper-3.4.6/bin/zkServer.sh status #查看状态


    查看服务端口有无正常启动netstat -anp |grep 2181

    telnet查看各机器之间服务能不能通:telnet vm01.wqf 2188 (telnet 命令需要单独装,在最后给下载地址)

    由于防火墙,机器之间服务不通我直接关掉了防火墙,在最后有说明

    正常启动后 status会看到是属于什么节点 如:

    JMX enabled by default
    Using config: /opt/zookeeper/zookeeper-3.4.6/bin/../conf/zoo.cfg
    Mode: follower


  3. 启动dubbo-admin

    git clone https://github.com/alibaba/dubbo.git

    cd dubbo-master/dubbo-admin

    mvn package -Dmaven.skip.test=true

    从target目录就可以得到war包放到tomcat目录启动(修改server.xml把服务端口改为8088等,避免8080端口冲突)

    修改WEB-INF/dubbo.properties

    dubbo.registry.address=zookeeper://vm01.wqf:2181?backup=vm02.wqf:2181,vm03.wqf:2181,vm04.wqf:2181,vm05.wqf:2181,vm06.wqf:2181
    dubbo.admin.root.password=root
    dubbo.admin.guest.password=guest

    再重新启动tomcat就可以看到dubbo的管理界面了

  4. 其它

    telnet命令安装包 http://vault.centos.org/6.3/os/i386/Packages/telnet-server-0.17-47.el6.i686.rpm

    http://vault.centos.org/6.3/os/i386/Packages/telnet-0.17-47.el6.i686.rpm

    rpm -ivh

    防火墙相关:

    [email protected] ~]# service   iptables status
     
    停止防火墙:
    [[email protected] ~]# service   iptables stop
     
    启动防火墙:
    [[email protected] ~]# service   iptables start
     
    重启防火墙:
    [[email protected] ~]# service   iptables restart
     
    永久关闭防火墙:
    [[email protected] ~]# chkconfig   iptables off
     
    永久关闭后启用:
    [[email protected] ~]# chkconfig   iptables on


    一些命令:

    ssh [email protected]    

    sftp [email protected]    

    scp /opt/ [email protected]:/opt    

    su root     #切换执行用户

    java环境:

    vi /etc/profile
    export JAVA_HOME=/opt/java/jdk1.8.0_151
    export CLASS_PATH=$JAVA_HOME/lib
    export PATH=$JAVA_HOME/bin:$PATH

    source /etc/profile #生效配置文件

    service network restart #重启网卡

  5. 弄完之后整理的有很多东西记得不清楚了,可能还有需要注意的地方。

本文出自 “技术小站” 博客,请务必保留此出处http://flybluesky.blog.51cto.com/12904486/1980879

以上是关于记一次zookeeper集群搭建的主要内容,如果未能解决你的问题,请参考以下文章

记一次ZOOKEEPER集群超时问题分析

linux虚拟机搭建Zookeeper集群环境

Zookeeper——集群搭建 & 选举机制

Zookeeper——集群搭建 & 选举机制

ZooKeeper集群搭建中的Connection refused而导致的启动失败

用vmware拷贝出三个相同的ubuntu搭建小的zookeeper集群