本地虚拟机伪集群dubbo-zookeeper+dubbo demo案例单机集群服务搭建

本文介绍了如何在本地虚拟机上搭建dubbo服务的zookeeper集群,包括dubbo、zookeeper、tomcat的版本和获取途径,以及zookeeper的配置步骤。同时,详细讲述了dubbo-admin的配置和启动,以便于管理dubbo服务。
摘要由CSDN通过智能技术生成

自己通过网上资料整理一个能在本地搭建集群方式的dubbo服务,尽可能把自己可能遇到的问题的解决方法都单独拿出来,分享一下过程。

一、工具

1.dubbo    https://github.com/alibaba/dubbo 是git上的源码demo 版本号2.5.5

2.zookeeper    阿里云开源镜像:http://mirrors.aliyun.com/   阿里开源镜像里版本3.4.9

3.tomcat7  Apache官网 http://mirrors.shuosc.org/apache/tomcat/tomcat-7/v7.0.82/bin/apache-tomcat-7.0.82.tar.gz。

4.jdk8 这个自行选择  8会出现问题  不过下文会有解决办法


二、配置

zookeeper的配置

2.解压:  tar -zxvf zookeeper-3.4.9.tar.gz
3.复制3个zookeeper   1个leader  2个fellower   cp -rf  zookeeper-3.4.9  路径自选 ,跨服务器复制文件,例:scp zookeeper-3.4.9  root@slave01:zk
4.解压到3个目录(模拟3台zk server):

/zk/zk1
/zk/zk2
/zk/zk3
创建每个目录下conf/zoo.cfg配置文件

/zk/zk1/conf/zoo.cfg 内容如下:

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/admin/Downloads/software/zk/zk1/data
dataLogDir=/home/admin/Downloads/software/zk/zk1/logs

clientPort=2181
server.1=127.0.0.1:2887:3887
server.2=127.0.0.1:2888:3888
server.3=127.0.0.1:2889:3889

/zk/zk2/conf/zoo.cfg 内容如下:

tickTime=2000
initLimit=10
syncLimit=5

dataDir=/home/admin/Downloads/software/zk/zk1/data

dataLogDir=/home/admin/Downloads/software/zk/zk1/logs

clientPort=2182
server.1=127.0.0.1:2887:3887
server.2=127.0.0.1:2888:3888
server.3=127.0.0.1:2889:3889


/zk/zk3/conf/zoo.cfg 内容如下:

tickTime=2000
initLimit=10
syncLimit=5

dataDir=/home/admin/Downloads/software/zk/zk1/data

dataLogDir=/home/admin/Downloads/software/zk/zk1/logs

clientPort=2183
server.1=127.0.0.1:2887:3887
server.2=127.0.0.1:2888:3888
server.3=127.0.0.1:2889:3889

注:因为是在一台机器上模拟集群,所以端口不能重复,这里用2181~2183,2887~2889,以及3887~3889相互错开。另外每个zk的instance,都需要设置独立的数据存储目录、日志存储目录,所以dataDir、dataLogDir这二个节点对应的目录,需要手动先创建好。
mkdir /zk/zk1/data

mkdir/zk/zk1/log

mkdir/zk/zk2/data

mkdir/zk/zk2/log

mkdir/zk/zk3/data

mkdir/zk/zk3/log


另外在每个zk server配置文件的dataDir所对应的目录下,必须创建一个名为myid的文件,其中的内容必须与zoo.cfgserver.x 中的x相同:

cd zk/zk1/data

创建一个文件 tmp文件夹下
touch myid

查看文件倒数5行的内容
tail -5 conf/zoo.cfg

文件中写入内容
echo 1> myid

查看写入文件中的内容
more myid

启动
bin/zkServer.sh start

查看状态
bin/zkServer.sh status

查看进程
jps


到这里可能会碰到一些问题:

1.zk文件夹没有被授权,无法执行zk的启动,所以先授权chmod a+xwr zk
2.无法开启服务监测不到,关闭防火墙的服务, 关闭服务:systemctl stop firewalld.service, 在开机时禁用服务:systemctl disable firewalld.service
3.dataLogDir,路径有问题也会导致zk无法正常启动

dubbo配置

1.整体项目结构


  • dubbo-common 公共逻辑模块,包括Util类和通用模型。

  • dubbo-remoting 远程通讯模块,相当于Dubbo协议的实现,如果RPC用RMI协议则不需要使用此包。

  • dubbo-rpc 远程调用模块,抽象各种协议,以及动态代理,只包含一对一的调用,不关心集群的管理。

  • dubbo-cluster 集群模块,将多个服务提供方伪装为一个提供方,包括:负载均衡、容错、路由等,集群的地址列表可以是静态配置的,也可以是由注册中心下发。

    </
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值