搭建 zookeeper + dubbo-admin + dubbo-monitor 環境


 一、單機安裝

1.1、下載

下載地址:官網或其他鏡像 

https://zookeeper.apache.org/           

http://archive.apache.org/dist/zookeeper/

命令: wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz

1.2、安裝

解壓到相應路徑

tar -xzvf zookeeper-3.4.10.tar.gz  -C /home/zookeeper

1.3、配置

在主目錄下創建data和logs兩個目錄用於存儲數據和日志

在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

1.4、啟動和停止

進入bin目錄,啟動、停止、重啟分和查看當前節點狀態(包括集群中是何角色)別執行

./zkServer.sh start
./zkServer.sh stop
./zkServer.sh restart
./zkServer.sh status

  

 

二、偽集群模式

偽集群模式就是在同一主機啟動多個zookeeper並組成集群,下邊以在192.168.220.128主機上創3個zookeeper組集群為例。

將通過第一大點安裝的zookeeper,復制成zookeeper1/zookeeper2/zookeeper3三份

2.1 zookeeper1配置

zookeeper1配置文件conf/zoo.cfg修改如下:

復制代碼
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

2.2 zookeeper2配置

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

2.3 zookeeper3配置

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上,並都解壓到同樣的目錄下。

3.1 conf/zoo.cfg文件修改

三個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一樣即可。

3.2 data/myid文件修改

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即會正常。

 

五、DUBBO-ADMIN安裝

1.到地址 https://github.com/alibaba/dubbo 下載dubbo源碼 

 

2.解壓縮zip

3、打包 

打開命令操作模式   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/ 

10、dubbo-admin搭建完畢。把dubbo服務注冊至zookeeper下時,會看到相應的服務。dubbo-admin的操作查看相應介紹

 

 

六、dubbo-Monitor 安裝

https://blog.csdn.net/s296850101/article/details/52638020


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM