QUESTION:搭建分布式环境:Dubbo+Zookeeper?

 

ANSWER:

 

一:官网下载Zookeeper

 

点击官网:Zookeeper,进行下载。

下载完成,解压缩到文件。

怎么设置zookeeper的sessionTimeout_服务器

 

二:配置启动Zookeeper

进入conf目录,复制zoo_sample.cfg一份zoo.cfg,修改配置文件。

# tickTime这个时间是作为zookeeper服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是说每个tickTime时间就会发送一个心跳。(以毫秒为单位)
tickTime = 2000
# dataDir ZooKeeper的状态存储位置,看名字就知是数据目录。在你的系统中检查这个目录是否存在,如果不存在手动创建,并且给予可写权限。
dataDir = /path/to/zookeeper/data
# 日志存放的位置
dataLogDir=/path/to/zookeeper/log
# 这个端口就是客户端连接Zookeeper服务器的端口,Zookeeper会监听这个端口接受客户端的访问请求;
clientPort = 2181
# initLimit这个配置项是用来配置zookeeper接受客户端(这里所说的客户端不是用户连接zookeeper服务器的客户端,而是zookeeper服务器集群中连接到leader的follower 服务器)初始化连接时最长能忍受多少个心跳时间间隔数。
# 当已经超过10个心跳的时间(也就是tickTime)长度后 zookeeper 服务器还没有收到客户端的返回信息,那么表明这个客户端连接失败。总的时间长度就是 5*2000=10秒。
initLimit = 5
# syncLimit这个配置项标识leader与follower之间发送消息,请求和应答时间长度,最长不能超过多少个tickTime的时间长度,总的时间长度就是2*2000=4秒
syncLimit = 2

注意,dataDir 、dataLogDir的位置要根据自己创建的log、data路径填写。

注意:

怎么设置zookeeper的sessionTimeout_客户端_02

这里如果tomcat的端口:8080,这里要修改为别的端口:8180。

admin.serverPort=8180

怎么设置zookeeper的sessionTimeout_dubbo_03

 修改/etc/profile文件:

怎么设置zookeeper的sessionTimeout_服务器_04

 

如图所示,要新添加zk的环境变量:

export ZOOKEEPER_HOME=/usr/local/zookeeper

export PATH=$ZOOKEEPER_HOME/bin:$PATH

 

 编写玩/etc/profile文件,进入:

怎么设置zookeeper的sessionTimeout_客户端_05

 输入以下代码:

./zkServer.sh start     #启动
./zkServer.sh status    #查看运行状态
./zkServer.sh stop      #终止
./zkServer.sh restart   #重启

 

出现:

怎么设置zookeeper的sessionTimeout_dubbo_06

说明启动成功。

三:配置Dubbo

1、  下载源码打包

官网提供的源码包,地址:https://github.com/alibaba/dubbo

https://github.com/apache/dubbo/tree/dubbo-2.6.0

注意:dubbo-2.6.1以后的版本不再有dubbo-admin :
 

可以修改注册中心地址:进入dubbo-admin/src/main/weapps/WEB-INF下,打开dubbo.properties,写入主机。

下载到windows系统中,解压后,打开cmd命令窗口,进入源码文件所在总目录下

利用maven命令打包:

      mvn install -Dmaven.test.skip=true

 命令执行成功结束后,在  dubbo-admin 目录下会生成target文件夹,文件夹下会出现一个war包

 若未成功生成war包,可进入dubbo-admin目录,执行命令mvn package -Dmaven.test.skip ,把dubbo-admin打成war包

2、  解压

将上面的dubbo的war打包文件复制到centos服务器tomcat下webapps文件夹下,名称dubbo-admin-2.5.4-SNAPSHOT。

3、访问dubbo管理控制中心

输入:

ip:8080/dubbo-admin-2.5.4-SNAPSHOT   #这里的ip如果是本机:localhost   后面dubbo-admin-2.5.4-SNAPSHOT为webapps下的dubbo的文件名

成功会提示你输入:密码:root。

运行成功:

怎么设置zookeeper的sessionTimeout_dubbo_07

 

 

四:Windows下搭建

步骤如上。