构建第一个Spring Boot2.0应用之集成dubbo上---环境搭建(九)
一、环境:
Windows:
IDE:IntelliJ IDEA 2017.1.1
JDK:1.8.0_161
Maven:3.3.9
springboot:2.0.2.RELEASE
Linux(CentOS Linux release 7.2.1511 (Core)):
dubbo:dubbo-admin-2.0.0
zookeeper:zookeeper-3.4.10
二、部署zookeeper(集群方式)
准备三台机器或虚拟机,IP为192.168.254.3(节点1)、192.168.254.4(节点2)、192.168.254.5(节点3)。
1.下载zookeeper-3.4.10.tar.gz
地址:http://mirror.bit.edu.cn/apache/zookeeper/
2.解压zookeeper
解压gz文件,在下载的zookeeper-3.4.10.tar.gz存放目下,执行tar -zxvf zookeeper-3.4.10.tar.gz,等待命令运行完成,则生成解压后的目录为zookeeper-3.4.10,进入文件夹,文件列表如下。
设置zookeeper的安装目录为/usr/local,则将解压后的目录文件夹移动到此,即执行mv zookeeper-3.4.10 /usr/local
3.安装配置
(1)进入/usr/local/zookeeper/conf,复制zoo_sample.cfg文件的并命名为 zoo.cfg
(2)编辑zoo.cfg
vim zoo.cfg
添加dataLogDir,设置日志目录;修改数据目录dataDir。
zookeeper有三个重要端口,默认分别为2181、2888、3888,分别是为客户端服务端口、集群内部通信端口、选举leader使用端口。这三个端口可以根据实际情况自行修改,只要是端口未被其他一个用占用都可以使用,此处故意修改三个端口为3181、12888、13888。
修改完成后保存zoo.cfg。
(3)复制zookeeper-3.4.10目录到其他服务器
scp -r root@ zookeeper-3.4.10/ 192.168.254.4:/usr/local
scp -r root@ zookeeper-3.4.10/ 192.168.254.5:/usr/local
如果直接复制需要输入其他机器帐户密码,则需要在集群机器之间配置SSH免密登录。
(4)集群各节点配置myid
将zookeeper目录复制到集群各节点后,按照上面zoo.cfg中配置的dataDir、dataLogDir中配置的实际路径,在zookeeper-3.4.10根目录下建立data、logs目录(mkdir data、mkdir logs)。
配置后,在集群节点1进入data目录,建立myid文件,并在文件中输入1,保存
节点1(192.168.254.3)
同理在集群节点2、节点3中分别进入data目录,建立myid文件,在文件中分别输入2、3,保存。
节点1(192.168.254.4)
节点1(192.168.254.5)
这里各节点myid文件中设置的数字,与zoo.cfg中配置集群节点的数字对应。
(5)集群节点启动和验证
在节点1,启动集群# ./bin/zkServer.sh start
同样,在节点2、节点3启动zookeeper。
在三个节点都启动完成后,分别查看状态:
节点1: ./bin/zkServer.sh status
节点2: ./bin/zkServer.sh status
节点3: ./bin/zkServer.sh status
可以看出,集群节点启动后,节点2被选举为leader。
对于集群,也可以通过编写脚本批量一键启动集群节点。
在任意一个节点zookeeper的安装目录下,新建zkBatchServer.sh,打开并编写如下内容:
#!/bin/bash
#参数传递
usage="Usage: $0 (start|stop|status)"
if [ $# -lt 1 ]; then
echo $usage
exit 1
fi
behave=$1
echo "$behave zkServer cluster" #主机名称
SERVERS="master1-hadoop master2-hadoop slave1-hadoop"
for SERVER in $SERVERS
do
#使用ssh进行启动
echo "当前"$SERVER "正在"$behave"-----------------------"
ssh root@$SERVER "source /etc/profile; /usr/local/zookeeper-3.4.10/bin/zkServer.sh $behave"
echo $SERVER $behave "结束------------------------------"
done
设置完后,修改权限 chmod u+x zkBatchServer.sh
zookeeper目录文件如下
批量启动集群
# ./zkBatchServer.sh start
启动后,查看集群节点状态
# ./zkBatchServer.sh status
(6)连接ZooKeeper的集群
通过192.168.254.3连接zookeeper集群,
# ./bin/zkCli.sh -r -server 192.168.254.3:3181
上面是通过zkCli.sh连接指定的节点ip和端口连接到zookeeper集群。
二、部署dubbo
(1)下载编译
dubbo项目地址https://github.com/apache/incubator-dubbo,最新的源码项目为2.6.2,不过从2.6.1后dubbo-admin已经被分离出去了,因此要部署dubbo-admin则需在 https://github.com/apache/incubator-dubbo-ops下载 。
下载解压后,进入项目录下(即incubator-dubbo-ops-master),项目工程结构如下
打开dubbo-admin\src\main\webapp\WEB-INF下的dubbo.properties,内容为:
dubbo.registry.address=zookeeper://127.0.0.1:2181
dubbo.admin.root.password=root
dubbo.admin.guest.password=guest
将注册中心的地址更改为上面配置的zookeeper集群的地址,即
dubbo.registry.address=zookeeper://192.168.254.3:3181?backup=192.168.254.4:3181,192.168.254.5:3181
dubbo.admin.root.password=root
dubbo.admin.guest.password=guest
导入项目到idea
或直接在项目目录控制台执行命令:mvn package -Dmaven.skip.test=true
执行成功后,进入incubator-dubbo-ops-master\dubbo-admin\target目录,
(2)安装dubbo-admin
将上面生成的war包拷贝到tomcat的webapps目录
启动tomcat后,自动解压war,生成项目目录
通过URL即可访问dubbo-admin
http://192.168.254.3:8686/dubbo-admin-2.0.0/
登录用户名密码参考dubbo.properties,其里面配置的两个账户,每个账户的用户名与密码一样
登录后可以看到管理界面如下
这篇主要学习了一下结成dubbo的环境配置,为真正集成应用做一些准备工作,下篇通过具体的代码实例学习编写服务如何注册、调用。
构建第一个Spring Boot2.0应用之集成dubbo上---环境搭建(九)的更多相关文章
- 构建第一个Spring Boot2.0应用之集成mybatis、Druid(七)
一.环境: IDE:IntelliJ IDEA 2017.1.1 JDK:1.8.0_161 Maven:3.3.9 springboot:2.0.2.RELEASE 二.说明: 本文综合之 ...
- 构建第一个Spring Boot2.0应用之集成mybatis(六)
一.环境: IDE:IntelliJ IDEA 2017.1.1 JDK:1.8.0_161 Maven:3.3.9 springboot:2.0.2.RELEASE 二.步骤 方式一:利用配置文件配 ...
- 构建第一个Spring Boot2.0应用之application.properties和application.yml(八)
本节学习在项目中配置文件配置的方式,一种是通过applicaiton.properties,一种是通过application.yml方式. 一.环境: IDE:IntelliJ IDEA 2017.1 ...
- 构建第一个Spring Boot2.0应用之项目创建(一)
1.开发环境 IDE: JAVA环境: Tomcat: 2.使用Idea生成spring boot项目 以下是使用Idea生成基本的spring boot的步骤. (1)创建工程第一步 (2)创建工 ...
- 构建第一个spring boot2.0应用之项目启动运行的几种方式(二)
方法一. 配置Run/Debug Configuration 选择Main Class为项目 Application启动类(入口main方法) (2).进行项目目录,即包含pom.xml的目录下,启 ...
- 构建第一个Spring Boot2.0应用之Controller(三)
Controller控制器主要是接收浏览器请求.下面说一说@Controller注解和@RestController的区别: (1)@Controller类中的方法可以直接通过返回String跳转到j ...
- 构建第一个Spring Boot2.0应用之RequestMapping(四)
在学习controller的时候,测试了在RequestMapping中,value参数中配置集合,实现不同的URL访问同一方法. 本章继续学习和测试RequestMapping的其他特性. 一.Pa ...
- 快速搭建spring boot2.0 项目
快速搭建spring boot2.0+mybatis+thymeleaf 项目 使用工具STS 3.9.7(eclipse) 首先创建一个spring boot2.0项目(具体创建方法就不写了) 然后 ...
- spring boot2.0(一 ) 基础环境搭建
1.基础配置 开发环境:window jdk版本:1.8(spring boot2.0最低要求1.8) 开发工具:eclipse 构建方式:maven3 2.POM配置文件 <project x ...
随机推荐
- leetcode-002
给定两个非空链表来表示两个非负整数.位数按照逆序方式存储,它们的每个节点只存储单个数字.将两数相加返回一个新的链表. 你可以假设除了数字 0 之外,这两个数字都不会以零开头. 示例: 输入:(2 -& ...
- 31、NGS 常用分析软件
转载:http://www.zilhua.com/2081.html 参考资料:http://bioinfo.mc.vanderbilt.edu/NGS/software.htm 1. Mapping ...
- solr搜索应用
非票商品搜索,为了不模糊查询影响数据库的性能,搭建了solr搜索应用,php从solr读取数据
- Windows环境下 Hadoop Error: JAVA_HOME is incorrectly set. 问题
最近尝试在windows开发MR程序并且提交Job,在解压缩好Hadoop,配置好环境变量后, 打开cmd 输入hadoop version 的时候出现以下错误: Error: JAVA_HOME i ...
- PHP获取原生POST数据
To get the Raw Post Data: <?php $postdata = file_get_contents("php://input"); ?> 参考官 ...
- 【OpenGL】Shader概述
目录(?)[-] 综述 编译一个Shader 链接一个Shader 删除一个Shader 指定使用一个Shader Program 删除一个Shader Program 备注 这篇文章讲述了Shade ...
- [CentOS7] 挂载iso镜像文件到/media目录下
声明:本文主要总结自:鸟哥的Linux私房菜-第七章.Linux 磁碟與檔案系統管理,如有侵权,请通知博主 首先,设置虚拟机让它加载iso镜像文件到CD/DVD设备中,这个设备对应于Linux下的/d ...
- Baidu - Echarts 地图实例测试,并绘制平滑圆弧路径
百度Echarts实例地址: http://echarts.baidu.com/examples.html 同事想做一个地图,地图上的几个点通过动态的线连接起来.但是在实例里没找到类似的. 然后仔细分 ...
- matlab矩阵与数组
数组运算:数与数组加减:k+/-A %k加或减A的每个元素数组乘数组: A.*B %对应元素相乘数组乘方: A.^k %A的每个元素k次方:k.^A,分别以k为底A的各元素为指数求幂值数除以数组: k ...
- 1、kubernetes系统基础190622
1.容器编排工具 docker编排工具三剑客:docker compose, docker swarm, docker machine IDC的操作系统:mesos 提供容器编排框架:marathon ...