Dubbo-Admin管理平台和Zookeeper注册中心的搭建(只支持jdk7)
林炳文Evankaka原创作品。转载请注明出处http://blog.csdn.net/evankaka
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、名字服务、分布式同步、组服务等。
Dubbo是Alibaba开源的分布式服务框架,它最大的特点是按照分层的方式来架构,使用这种方式可以使各个层之间解耦合(或者最大限度地松耦合)。从服务模型的角度来看,Dubbo采用的是一种非常简单的模型,要么是提供方提供服务,要么是消费方消费服务,所以基于这一点可以抽象出服务提供方(Provider)和服务消费方(Consumer)两个角色。关于注册中心、协议支持、服务监控等内容。
本机环境: JDK:1.8
Maven:apache-maven-3.2.1
zookeeper:zookeeper-3.4.6
Tomcat:apache-tomcat-7.0.62
Dubbo-admin:dubbo-admin-2.5.4-SNAPSHOT.war 这是我自己本地打包生成的(下载地址:http://download.csdn.NET/detail/evankaka/9054273)
一、zookeeper安装与启动
首先需要安装JdK,从Oracle的Java网站下载,安装很简单,就不再详述。其中zookeeper的下载地址是http://www.apache.org/dyn/closer.cgi/zookeeper/,下载后直接解压,不用安装。
在你执行启动脚本之前,还有几个基本的配置项需要配置一下,Zookeeper 的配置文件在 conf 目录下,这个目录下有 zoo_sample.cfg 和 log4j.properties,你需要做的就是将 zoo_sample.cfg 改名为 zoo.cfg,因为 Zookeeper 在启动时会找这个文件作为默认配置文件。下面详细介绍一下,这个配置文件中各个配置项的意义。
- # The number of milliseconds of each tick
- tickTime=2000
- # The number of ticks that the initial
- # synchronization phase can take
- initLimit=10
- # The number of ticks that can pass between
- # sending a request and getting an acknowledgement
- syncLimit=5
- # the directory where the snapshot is stored.
- # do not use /tmp for storage, /tmp here is just
- # example sakes.
- dataDir=D:\\Java\\Tool\\zookeeper-3.4.6\\tmp
- # the port at which the clients will connect
- clientPort=2181
- # the maximum number of client connections.
- # increase this if you need to handle more clients
- #maxClientCnxns=60
- #
- # Be sure to read the maintenance section of the
- # administrator guide before turning on autopurge.
- #
- # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
- #
- # The number of snapshots to retain in dataDir
- #autopurge.snapRetainCount=3
- # Purge task interval in hours
- # Set to "0" to disable auto purge feature
- #autopurge.purgeInterval=1
把
- dataDir=/tmp/zookeeper
改成如下:
- <pre name="code" class="html">dataDir=D:\\Java\\Tool\\zookeeper-3.4.6\\tmp</pre>
这里可以改成自己喜欢的
其中,
- tickTime:这个时间是作为 Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间就会发送一个心跳。
- dataDir:顾名思义就是 Zookeeper 保存数据的目录,默认情况下,Zookeeper 将写数据的日志文件也保存在这个目录里。
- dataLogDir:顾名思义就是 Zookeeper 保存日志文件的目录
- clientPort:这个端口就是客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。
- 当这些配置项配置好后,你现在就可以启动 Zookeeper 了,启动后要检查 Zookeeper 是否已经在服务,可以通过 netstat – ano 命令查看是否有你配置的 clientPort 端口号在监听服务
单机安装非常简单,只要获取到 Zookeeper 的压缩包并解压到某个目录如:D:\Java\Tool\zookeeper-3.4.6下,Zookeeper 的启动脚本在 bin 目录下,Windows 下的启动脚本是bin文件下的如,D:\Java\Tool\zookeeper-3.4.6\bin\ zkServer.cmd。
启动如下:
输入JPS,出现如下,也说明启动成功
上面的黑色框框不关,就表示注册中心一直开关的,一定要记得注册中心要在程序运行之前就打开,而且是一直开着的
二、Dubbo-admin管理平台的安装
1.1、dubbo-admin 本地编译打包
因为zookeeper只是一个黑框,我们无法看到是否存在了什么提供者或消费者,这时就要借助Dubbo-Admin管理平台来实时的查看,也可以通过这个平台来管理提者和消费者。
dubbo-admin.war可在网上百度去下载,但是我下载了好几个war包,发布上去服务启动都报错,这个时候大概是我们系统的JDK和编译dubbo-admin.war的JDK版本不同导致的了。所以我之后直接下载了dubbo-master的源代码,然后自己编译了一个war包,这样就不会存在启动报错的问题了。(这里强烈建议自己编译一个,网上找的基本都不行,试了很多个,最后还是自己来搞)其中自己电脑编译的过程如下,一定在安装maven和jdk!
dubbo的所有源码可在https://github.com/alibaba/dubbo上下载。下好之后解压
解压后的文件内容,这里你其它的都不用去管,只管dubbo-admin.
因为这里只需要编译Dubbo-Admin,所以打开Cmd,然后进入解压路径 E:\下载\dubbo-master\dubbo-master\dubbo-admin,有人把整个工程都编译了,其实没有必要,只需要编译dubbo-admin即可,有什么依赖的,maven会自动帮你解决。整个过程如下:
首先,通过cmd进入目录,输入命令
然后输入命令
- mvn package -Dmaven.skip.test=true
这里要自己把maven的环境变量配置好,这里的-Dmaven.skip.test表示不打包测试包。然后结果如下,表示打包成功
再打开项目的文件所在位置:E:\下载\dubbo-master\dubbo-master\dubbo-admin\target
target表示构建的本地路径,打开,里面有个文件dubbo-admin-2.5.4-SNAPSHOT.war表示打包成功,如果打包时遇到问题,还需要解决打包的问题,可能需要修改dubbo-admin的pom.xml文件。打包完成后,将这个war包得放在Tomcat下才能运行。
这里我已上传这个war包,下载地址:http://download.csdn.net/detail/evankaka/9054273
1.2、dubbo-admin安装
dubbo-admin已打包成功,接下来就容易很多了
1. 安装
将 dubbo-admin-2.5.4-SNAPSHOT.war 拷入 tomcat webapps中
2. 配置
修改tomcat的端口8088,修改方法如下,打到conf下的文件 server.xml,因为zookeeper会用到8080的端口,所以为了不冲突,把Tomcat的端口改一下。记得一定要改!!!
然后修改
3、启动一下Tomcat,让它把war解压了
过程如下
然后启动
发现webapp下多了一个文件夹
再把 Tomcat给关了,直接stop,上面的按钮
4、修改dubbo.properties
D:\Java\Tool\apache-tomcat-7.0.62\webapps\dubbo-admin-2.5.4-SNAPSHOT\WEB-INF
是否是如下内容:
- dubbo.registry.address=zookeeper://127.0.0.1:2181
- dubbo.admin.root.password=root
- dubbo.admin.guest.password=guest
如果是,就不用改,这里的127.0.0.1对应的是自己的电脑IP,因为这里zookeeper也在自己电脑上,所以要这么写才行。一般情况下都是不需要改的,因为初始都是本地的IP地址。但还是看看比较安全。dubbo.registry.address指向的是需要监测的zookeeper地址。
5. 访问:
这下全部都配置好了,首先,一定要先启动zookeeper启动后再去启动tomcat!一定要先启动zookeeper启动后再去启动tomcat!一定要先启动zookeeper启动后再去启动tomcat!重要的事情三遍!
启动zookeeper
启动tomcat
访问http://localhost:8088/dubbo-admin-2.5.4-SNAPSHOT/ 一定要注意名一定要和你webapp下的工程名一样!!
弹出如下:
输入用户名和密码都是root
就会看到:
出现以下界面说明安装配置成功,登录密码为root/root
这下子就大功告成了,可以开始来使用了~~~~~~~~
Dubbo-Admin管理平台和Zookeeper注册中心的搭建(只支持jdk7)的更多相关文章
- Dubbo学习总结(3)——Dubbo-Admin管理平台和Zookeeper注册中心的搭建
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件.它是一个为分布式应用提供一致性服务的软件,提供的功 ...
- Dubbo-Admin管理平台和Zookeeper注册中心的搭建(转)
林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubb ...
- Dubbo(六):zookeeper注册中心的应用
Dubbo中有一个非常本质和重要的功能,那就是服务的自动注册与发现,而这个功能是通过注册中心来实现的.而dubbo中考虑了外部许多的注册组件的实现,zk,redis,etcd,consul,eurek ...
- dubbo实战之三:使用Zookeeper注册中心
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- Zookeeper注册中心的搭建
一.Zookeeper的介绍 Zookeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件.它是一个为分布式应用 ...
- 关于dubbo和zookeeper 注册中心
Dubbo采用全Spring配置方式,透明化接入应用,对应用没有任何API侵入,只需用Spring加载Dubbo的配置即可,Dubbo基于Spring的Schema扩展进行加载.如果不想使用Sprin ...
- dubbo连接zookeeper注册中心因为断网导致线程无限等待问题【转】
最近维护的系统切换了网络环境,由联通换成了电信网络,因为某些过滤规则导致系统连不上zookeeper服务器(应用系统机器在深圳,网络为电信线路,zookeeper服务器在北京,网络为联通线路),因为我 ...
- Dubbo框架应用之(三)--Zookeeper注册中心、管理控制台的安装及讲解
我是在linux下使用dubbo-2.3.3以上版本的zookeeper注册中心客户端.Zookeeper是Apache Hadoop的子项目,强度相对较好,建议生产环境使用该注册中心.Dubbo未对 ...
- Dubbo(二):zookeeper 注册中心
zookeeper 注册中心 Zookeeper 是 Apacahe Hadoop 的子项目,是一个树型的目录服务,支持变更推送,适合作为 Dubbo 服务的注册中心,工业强度较高,可用于生产环境,并 ...
随机推荐
- stm32寄存器版学习笔记06 输入捕获(ETR脉冲计数)
STM32外部脉冲ETR引脚:TIM1-->PA12;TIMER2-->PA0:TIMER3-->PD2;TIMER4-->PE0… 1.TIM2 PA0计数 配置步骤 ①开启 ...
- WebStorm的主题与设置
1. Webstorm主题风格选择 2. Webstorm字体字号配置 3. Webstorm快捷键的查找 4. Webstorm插件的安装
- Codeforces 1012C Hills【DP】*
Codeforces 1012C Hills Welcome to Innopolis city. Throughout the whole year, Innopolis citizens suff ...
- 如何创建一个基于 MSBuild Task 的跨平台的 NuGet 工具包
MSBuild 的 Task 为我们扩展项目的编译过程提供了强大的扩展性,它使得我们可以用 C# 语言编写扩展:利用这种扩展性,我们可以为我们的项目定制一部分的编译细节.NuGet 为我们提供了一种自 ...
- SEO方案
前端需要注意哪些SEO 合理的title.description.keywords:搜索对着三项的权重逐个减小,title值强调重点即可,重要关键词出现不要超过2次,而且要靠前,不同页面title要有 ...
- py2exe转换参数
在公司用python写了个统计数据并通过xlsxwriter模块生成excel的小工具, 完成后使用py2exe转换成exe文件过程中遇到了些问题, 记录下. from distutils.core ...
- Linux下gdb线程的调试
多线程的调试命令 1.info threads: 这条命令显示的是当前可调试的所有线程,GDB会给每一个线程都分配一个ID.前面有*的线程是当前正在调试的线程. 2.thread ID: 切换到当前调 ...
- bzoj3258秘密任务
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3258 因为只走最短路,所以先正反两遍djkstra,新建边. 这里的边是单向边.所以要用原来 ...
- (二)Fiddler抓取Firefox、Chrome浏览器上的https协议
Fiddler抓取Firefox.Chrome浏览器上的https协议 安装Fiddler后默认只抓取http协议,如果是https协议的话,浏览器就会提示"您的链接并不安全". ...
- 阿里云专有网络下一键安装RouterOS-ROS系统
1.阿里云环境centos6.9 x64: 内网网卡为eth0 阿里云的linux下硬盘名称为/dev/vda 注意阿里云的安全组建议开放任意协议和端口,任意IP允许访问 今天测试阿里云2C4G的死活 ...