下载地址:官网或其余镜像 git
https://zookeeper.apache.org/ github
http://archive.apache.org/dist/zookeeper/web
命令: wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz
解压到相应路径apache
tar -xzvf zookeeper-3.4.10.tar.gz -C /home/zookeeper
在主目录下建立data和logs两个目录用于存储数据和日志vim
在conf目录下新建zoo.cfg文件,写入如下内容保存浏览器
mkdir data mkdir logs
cp zoo_sample.cfg zoo.cfg
vim zoo.cfg
tickTime=2000
dataDir=..path../zookeeper/data
dataLogDir=..path../zookeeper/logs
clientPort=2181
进入bin目录,启动、中止、重启分和查看当前节点状态(包括集群中是何角色)别执行tomcat
./zkServer.sh start ./zkServer.sh stop ./zkServer.sh restart ./zkServer.sh status
伪集群模式就是在同一主机启动多个zookeeper并组成集群,下边以在192.168.220.128主机上创3个zookeeper组集群为例。bash
将经过第一大点安装的zookeeper,复制成zookeeper1/zookeeper2/zookeeper3三份app
zookeeper1配置文件conf/zoo.cfg修改以下:webapp
tickTime=2000 dataDir=/usr/myapp/zookeeper1/data dataLogDir=/usr/myapp/zookeeper1/logs clientPort=2181 initLimit=5 syncLimit=2 server.1=192.168.220.128:2888:3888 server.2=192.168.220.128:4888:5888 server.3=192.168.220.128:6888:7888
zookeeper1的data/myid配置以下:
echo '1' > data/myid
zookeeper2配置文件conf/zoo.cfg修改以下:
tickTime=2000 dataDir=/usr/myapp/zookeeper2/data dataLogDir=/usr/myapp/zookeeper2/logs clientPort=3181 initLimit=5 syncLimit=2 server.1=192.168.220.128:2888:3888 server.2=192.168.220.128:4888:5888 server.3=192.168.220.128:6888:7888
zookeeper2的data/myid配置以下:
echo '2' > data/myid
zookeeper3配置文件conf/zoo.cfg修改以下:
tickTime=2000 dataDir=/usr/myapp/zookeeper3/data dataLogDir=/usr/myapp/zookeeper3/logs clientPort=4181 initLimit=5 syncLimit=2 server.1=192.168.220.128:2888:3888 server.2=192.168.220.128:4888:5888 server.3=192.168.220.128:6888:7888
zookeeper3的data/myid配置以下:
echo '3' > data/myid
最后使用1.4的命令把三个zookeeper都启动便可,启动顺序随意没要求。
集群模式就是在不一样主机上安装zookeeper而后组成集群的模式;下边以在192.168.220.128/129/130三台主机为例。
将第1.1到1.3步中安装好的zookeeper打包复制到129和130上,并都解压到一样的目录下。
三个zookeeper的conf/zoo.cfg修改以下:
tickTime=2000 dataDir=/usr/myapp/zookeeper-3.4.5/data dataLogDir=/usr/myapp/zookeeper-3.4.5/logs clientPort=2181 initLimit=5 syncLimit=2 server.1=192.168.220.128:2888:3888 server.2=192.168.220.129:2888:3888 server.3=192.168.220.130:2888:3888
对于129和130,因为安装目录都是zookeeper-3.4.5因此dataDir和dataLogDir不须要改变,又因为在不一样机器上因此clientPort也不须要改变
因此此时129和130的conf/zoo.cfg的内容与128同样便可。
128 data/myid修改以下:
echo '1' > data/myid
129 data/myid修改以下:
echo '2' > data/myid
130 data/myid修改以下:
echo '3' > data/myid
最后使用1.4的命令把三个zookeeper都启动便可,启动顺序随意没要求。
应用链接zookeepr报错:Session 0x0 for server 192.168.220.128/192.168.220.128:2181,unexpected error,closing socket connection and attempting reconnect;
先看端口可否telnet通,若是通则使用./zkServer.sh status查看zk是否确实已启动,没启查看bin/zookeeper.out中的报错。
bin/zookeeper.out中报错:“zookeeper address already in use”;显然端口被占用,要么是其余进程占用了配置的端口,要么是上边配置的clientPort和server中的端口有重复。
bin/zookeeper.out中报错:Cannot open channel to 2 at election address /192.168.220.130:3888;这应该只是组成集群的130节点未启动,到130启动起来zk即会正常。
1.到地址 https://github.com/alibaba/dubbo 下载dubbo源码
打开命令操做模式 mvn package -Dmaven.skip.test=true
若是编译时报下面的错误,须要修改 D:\技术资料\zookeeper\dubbo-master\dubbo-master\dubbo-admin目录下的pom.xml文件
[ERROR] Failed to execute goal on project dubbo-admin: Could not resolve dependencies for project com.alibaba:dubbo-admin:war:2.5.4-SNAPSHOT: Could not find artifact com.alibaba:dubbo:jar:2.5.4-SNAPSHOT -> [Help 1]
将 <version>${project.parent.version}</version> 修改成<version>2.5.3</version>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>dubbo</artifactId>
<version>${project.parent.version}</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>dubbo</artifactId>
<version>2.5.3</version>
</dependency>
4.编译成功
6.把这个dubbo-admin-2.5.4-SNAPSHOT.war拷贝到 tomcat下的webapps目录下
7 修改tomcat的端口为8088,修改方法以下,打到conf下的文件 server.xml,由于zookeeper会用到8080的端口,因此为了避免冲突,把Tomcat的端口改一下。记得必定要改!!!
8 启动tomcat后,tomcat启动命令为 bin下,启动后,dubbo-admin-2.5.4-SNAPSHOT.war包会自动解压,在tomcat/webapps目录下生成一个dubbo-admin-2.5.4-SNAPSHOT文件夹
修改dubbo-admin-2.5.4-SNAPSHOT/WEB-INF/文件夹下的dubbo.properties文件为以下内容
9 先启动zookeeper,而后再启动tomcat,在浏览器输入 http://localhost:8088/dubbo-admin-2.5.4-SNAPSHOT/
https://blog.csdn.net/s296850101/article/details/52638020