Zookeeper注册中心和Dubbo-Admin管理平台的搭建
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、名字服务、分布式同步、组服务等。
ZooKeeper官网为:http://zookeeper.apache.org/
Dubbo是Alibaba开源的分布式服务框架,它最大的特点是按照分层的方式来架构,使用这种方式可以使各个层之间解耦合(或者最大限度地松耦合)。从服务模型的角度来看,Dubbo采用的是一种非常简单的模型,要么是提供方提供服务,要么是消费方消费服务,所以基于这一点可以抽象出服务提供方(Provider)和服务消费方(Consumer)两个角色。关于注册中心、协议支持、服务监控等内容。
Dubbo官网为:http://dubbo.io/
一、zookeeper安装与启动
首先需要安装JdK,从Oracle的Java网站下载,安装很简单,就不再详述。其中zookeeper的下载地址是http: //www.apache.org/dyn/closer.cgi/zookeeper/,下载后直接解压,不用安装。
在你执行启动脚本之前,还有几个基本的配置项需要配置一下,Zookeeper 的配置文件在conf目录下,这个目录下有 zoo_sample.cfg 和 log4j.propert ies,你需要做的就是将zoo_sample.cfg 改名为 zoo.cfg,因为 Zookeeper 在启动时会找这个文件作为默认配置文件。下面详细介绍一下,这个配置文件中各个配置项的意义,如下图所示。

参数说明:
tickTime:zookeeper中使用的基本时间单位, 毫秒值这个时间是作为Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 t ickTime 时间就会发送一个心跳。
dataDir:数据目录. 可以是任意目录,默认情况下,Zookeeper 将写数据
的日志文件也保存在这个目录里。
clientPort:这个端口就是客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。
至此, zookeeper的单机模式已经配置好了. 启动server只需运行bin目录下的zkServer.cmd即可,启动如下:

上面的黑色框框不关,就表示注册中心一直开关的,一定要记得注册中心要在程序运行之前。在命令窗口输入JPS,出现如下,也说明启动成功:

二、Dubbo-admin管理平台的安装
因为zookeeper只是一个黑框,我们无法看到是否存在了什么提供者或消费者,这时就要借助Dubbo-Admin管理平台来实时的查看,也可以通过这个平台来管理提者和消费者。由于我使用的是jdk1.8的版本,在网上找了很多dubbo-admin.war基本都是基于jdb1.7的,因为我就打包了一个支持jdk1.8版本的,可以在下面的地址下载即可:http://download.csdn.net/detail/chinahuyong/9806244
dubbo的所有源码可在https://github.com/alibaba/dubbo上下载。

下载好dubbo-admin.war后,我们就可以按常用的web部署方式进行部署即可,把war包放到tomcat的webapps目录下,启动tomcat,后再部署下相应的参数。配置修改tomcat的端口8088,修改方法如下,打到conf下的文件 server.xml,因为zookeeper会用到8080的端口,所以为了不冲突,把Tomcat的端口改一下,记得一定要改!!!

这儿有个要注意的地方,现在我们还是打包的war文件,我们还需要dubbo-admin包的相应配置,所以我们要先启动tomcat,让其自动解压dubbo-admin包后再关闭tomcat,再删除dubbo-admin.war包后修改dubbo-admin下的\WEB-INF下的dubbo.properties文件,如下图:

这里的dubbo.regist ry.address后面对应的IP地址是我们的zookeeper对应的IP与端口地址,一定要一直。一般情况下都是不需要改的,因为初始都是本地的IP地址。
dubbo.admin. root .password=root与dubbo.admin.guest .password=guest 是两个用户分别为root与guest,密码默认与用户名一样,这儿的密码可以修改。
这下全部都配置好了,首先,一定要先启动zookeeper启动后再去启动tomcat!一定要先启动zookeeper启动后再去启动tomcat!一定要先启动zookeeper启动后再去启动tomcat!
启动zookeeper
启动tomcat
访问http: //ip地址:端口号/dubbo-admin-2.5.4 / 一定要注意名一定要和你webapp下的工程名一样,如果一切正常,则会弹出登录界面,如下图所示。

我们输入默认的用户名与密码root,即可登录到主界面如下图:

我们单击系统管理->系统状态,可以查看相应的状态,如下:

至此,整个部署完成,就可以开始我们的应用了。
参考文章:
ZooKeeper官网为:http://zookeeper.apache.org/
Dubbo官网为:http://dubbo.io/
Zookeeper在线API速查:http://zookeeper.apache.org/doc/r3.4.6/api/index.html
Zookeeper学习:http://www.cnblogs.com/sunddenly/category/620563.html
Zookeeper注册中心和Dubbo-Admin管理平台的搭建的更多相关文章
- dubbo连接zookeeper注册中心因为断网导致线程无限等待问题【转】
最近维护的系统切换了网络环境,由联通换成了电信网络,因为某些过滤规则导致系统连不上zookeeper服务器(应用系统机器在深圳,网络为电信线路,zookeeper服务器在北京,网络为联通线路),因为我 ...
- Dubbo框架应用之(三)--Zookeeper注册中心、管理控制台的安装及讲解
我是在linux下使用dubbo-2.3.3以上版本的zookeeper注册中心客户端.Zookeeper是Apache Hadoop的子项目,强度相对较好,建议生产环境使用该注册中心.Dubbo未对 ...
- Dubbo(二):zookeeper 注册中心
zookeeper 注册中心 Zookeeper 是 Apacahe Hadoop 的子项目,是一个树型的目录服务,支持变更推送,适合作为 Dubbo 服务的注册中心,工业强度较高,可用于生产环境,并 ...
- Dubbo(六):zookeeper注册中心的应用
Dubbo中有一个非常本质和重要的功能,那就是服务的自动注册与发现,而这个功能是通过注册中心来实现的.而dubbo中考虑了外部许多的注册组件的实现,zk,redis,etcd,consul,eurek ...
- dubbo实战之三:使用Zookeeper注册中心
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- dubbo服务治理中间件,zookeeper注册中心
对传统项目架构进行拆分: 集群概念: 面向服务分布式架构: 服务层提供被注册的对象需要实现序列化接口Serializable: 配置表现层和服务层: 依赖包: 服务层: <!-- 定义dubbo ...
- 使用dubbo中间件的zookeeper注册中心时报错
在项目中搭建soa项目时,使用dubbo服务中间件时需要在虚拟机中创建一个zookeeper注册中心,在配置都没有问题的时候,如果服务端启动成功,但是消费端启动报错并且看不出据地位置时,一定要注意你的 ...
- 关于dubbo和zookeeper 注册中心
Dubbo采用全Spring配置方式,透明化接入应用,对应用没有任何API侵入,只需用Spring加载Dubbo的配置即可,Dubbo基于Spring的Schema扩展进行加载.如果不想使用Sprin ...
- dubbo服务治理中间件,zookeeper注册中心 安装配置
对传统项目架构进行拆分: 集群概念: 面向服务分布式架构: 服务层提供被注册的对象需要实现序列化接口Serializable: 配置表现层和服务层: 依赖包: 服务层: <!-- 定义dubbo ...
- Zookeeper注册中心的搭建
一.Zookeeper的介绍 Zookeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件.它是一个为分布式应用 ...
随机推荐
- 我的 FPGA 学习历程(11)—— 实验:按键消抖
按键是一个输入设备,在理论上可以归为开关一类,理想的按键波形如下: 然而由于按键的机械特性,断开和闭合动作是不可能在一瞬间完成的,实际的波形如下: 抖动期间电平处于临界值,由于晶振的频率相当的高,数字 ...
- 关系数据库数据与hadoop数据进行转换的工具 - Sqoop
Sqoop 本文所使用的Sqoop版本为1.4.6 1.官网 http://sqoop.apache.org 2.作用 A:可以把hadoop数据导入到关系数据库里面(e.g. Hive -> ...
- idea设置调用方法时提示方法注释
如图所示:打开file-->setting-->Editor-->General,搜索show,然后勾选上Show quick documentation on mouse move ...
- esxi 精简置备只增不减问题解决方法(转)
esxi 精简置备只增不减问题解决方法 众所周知Thin Provisioning模式下的虚拟机磁盘的空间会随需增长,可以很大程度上帮助我们节约空间,可是,凡增长过后的空间,即使清除了导致增长的文件后 ...
- RabbitMQ 官方demo1
public class RabbitMqSend { public static void Test() { var factory = new ConnectionFactory() { Host ...
- java代码编译与C/C++代码编译的区别
Java编译原理 1.Java编译过程与c/c++编译过程不同 Java编译程序将java源程序编译成jvm可执行代码--java字节码. Java在编译过程中一般会按照以下过程进行: (1)JDK根 ...
- 30 ArcGIS 许可管理器常见问题(持续更新中……)
一.[单机版] 1.1.ArcMap 1.2.ArcGIS Pro 错误一 ArcGIS Pro单机许可安装授权,在Configure Authorization界面报“This functional ...
- python scrapy框架爬取豆瓣
刚刚学了一下,还不是很明白.随手记录. 在piplines.py文件中 将爬到的数据 放到json中 class DoubanmoviePipelin2json(object):#打开文件 open_ ...
- verilog中timescale
1. `timescale `timescale是Verilog中的预编译指令,指定位于它后边的module的时间单位和时间精度,直到遇到新的`timescale指令或者`resetall指令.它的语 ...
- ES6 常用语法
1.let 定义变量 1.与var 类似 用于声明一个变量 let userName='kobe' 2.特点 1.在块作用域内有效 2.不会吃重复定义变量 3.应用 1.循环遍历加监听 2.使用let ...