随风飞世 发表于 2019-1-8 10:00:49

记一次zookeeper集群搭建


[*]  虚拟机环境的准备
  操作系统使用的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个,把设置改一下

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


[*]  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 vm@vm01:/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
  

[*]  启动集群
  /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



[*]  启动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的管理界面了

[*]  其它
  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
  防火墙相关:
  root@localhost ~]# service   iptables status

停止防火墙:
# service   iptables stop

启动防火墙:
# service   iptables start

重启防火墙:
# service   iptables restart

永久关闭防火墙:
# chkconfig   iptables off

永久关闭后启用:
# chkconfig   iptables on
  

  一些命令:
  ssh root@192.168.56.101
  sftp root@192.168.56.101
  scp /opt/ root@192.168.56.101:/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 #重启网卡

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




页: [1]
查看完整版本: 记一次zookeeper集群搭建