QUESTION:搭建分布式环境:Dubbo+Zookeeper?
ANSWER:
一:官网下载Zookeeper
点击官网:Zookeeper,进行下载。
下载完成,解压缩到文件。
二:配置启动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路径填写。
注意:
这里如果tomcat的端口:8080,这里要修改为别的端口:8180。
admin.serverPort=8180
修改/etc/profile文件:
如图所示,要新添加zk的环境变量:
export ZOOKEEPER_HOME=/usr/local/zookeeperexport PATH=$ZOOKEEPER_HOME/bin:$PATH
编写玩/etc/profile文件,进入:
输入以下代码:
./zkServer.sh start #启动
./zkServer.sh status #查看运行状态
./zkServer.sh stop #终止
./zkServer.sh restart #重启
出现:
说明启动成功。
三:配置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。
运行成功:
四:Windows下搭建
步骤如上。