spring cloud alibaba之nacos之集羣部署(五)

spring cloud alibaba之nacos之集羣部署(五)

1.集羣部署架構圖

阿里官網推薦,推薦用戶把所有服務列表放到一個vip下面,然後掛到一個域名下面

http://ip1:port/openAPI 直連ip模式,機器掛則需要修改ip纔可以使用。

http://VIP:port/openAPI 掛載VIP模式,直連vip即可,下面掛server真實ip,可讀性不好。

http://nacos.com:port/openAPI 域名 + VIP模式,可讀性好,而且換ip方便,推薦模式

在這裏插入圖片描述
掛載VIP與域名模式,較繁重,所以生產一般使用 Nginx做負載均衡。

2. 準備環境

2.1 三個虛擬機

192.168.181.131
192.168.181.132
192.168.181.133

3 .在虛擬機上分別部署集羣版本的nacos-server。

3.1 運行nacos-server之前需要在虛擬機上安裝JDK.
3.2 運行nacos-server需要配置Mysql數據源,保證naocs數據持久化,推薦主備模式,保證數據高可用。修改方式見上篇文章 數據持久化
3.3 修改nacos/conf/cluster.conf.example爲 cluster.conf
內容爲:

在這裏插入圖片描述
3.4 然後分別啓動nacos-server

sh /usr/local/nacos/bin/startup.sh  //啓動集羣模式
tail -f /usr/local/nacos/logs/start.out //查看日誌

在這裏插入圖片描述
此圖,表示單個節點啓動成功。

三個節點分別啓動成功之後,訪問其中一個虛擬機nacos的訪問頁面,可以看見集羣節點列表。

在這裏插入圖片描述
可以,集羣節點全部啓動成功。

節點狀態:LEADER:主  FLOWER:備
集羣任期:節點競爭LEADER的選舉票數,要是132掛了,131133會重新選舉哪個節點做主節點

4.啓動Nginx
修改nginx/conf/nginx.conf

worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
 
    sendfile        on;
    #tcp_nopush     on;
 
    keepalive_timeout  65;

	upstream nacosserver{
	   server 192.168.181.131:8848;
	   server 192.168.181.132:8848;
	   server 192.168.181.133:8848;
	}
	
    server {
        listen       8848;
        server_name  127.0.0.1;      
        location / {
            proxy_pass http://nacosserver;
        }

       
    }
   
}

5.服務提供者註冊nacos地址配置

在這裏插入圖片描述

6.服務消費者註冊消費nacos的地址配置

在這裏插入圖片描述
7.測試
7.1 爲測試集羣環境,把服務提供者service-order打成了三個jar(修改端口),分別在本機啓動,可以預見,會在服務列表註冊三個order的服務 節點。
在這裏插入圖片描述
7.2 消費者service-user啓動一個。
在這裏插入圖片描述

查看消費列表:user訂閱了order
在這裏插入圖片描述
7.3 訪問user的接口(getOrderById)。
在這裏插入圖片描述
可見,每次訪問展示的端口爲不同節點的端口號,所以,每次訪問都訪問了不同的節點,可以服務節點的集羣搭建成功,nacos-servier的集羣也搭建成功了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章