十五 Nacos集群和持久化配置

2021-10-05 06:57:51 字數 3730 閱讀 3501

nacos支援三種部署模式:

預設nacos使用嵌入式資料庫(derby)實現資料的儲存。所以,如果啟動多個預設配置下的nacos節點,資料儲存是存在一致性問題的。為了解決這個問題,nacos採用了集中式儲存的方式來支援集群化部署,目前只支援mysql的儲存。

集群部署架構圖

因此開源的時候推薦使用者把所有服務列表放到乙個vip下面,然後掛到乙個網域名稱下面

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

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

網域名稱 +vip模式,可讀性好,而且換ip方便,推薦模式

nacos官網說明】:

需要的環境:

3個或3個以上nacos節點才能構成集群。

tar -zxvf nacos-server-1.2.0.tar.gz

② 切換資料庫為 mysql

新建資料庫nacos_config,在該資料庫下執行指令碼:/nacos/conf/nacos-mysql.sql;

spring.datasource.platform=mysql

db.num=1

db.url.0=jdbc:mysql:

db.user=root

db.password=root

③ nacos 集群配置cp cluster.conf.example ./cluster.conf,修改cluster.conf,新增可用埠:

192.168.182.200:3333

192.168.182.200:4444

192.168.182.200:5555

修改/nacos/bin/startup.sh以下兩處地方:

④ nginx 負載均衡設定

安裝nginx

#安裝nginx必備的環境

yum install -y pcre pcre-devel

yum install -y zlib zlib-devel

yum install -y openssl openssl-devel

yum -y install gcc

yum -y install gcc-c++

#解壓nginx

tar -zxvf nginx-1.8.0.tar.gz

#進入到nginx的解壓目錄` nginx-1.8.0`,執行下面命令

#還是在nginx解壓目錄執行以下兩個命令

#編譯make

#安裝make

install

修改nginx配置檔案

#在/usr/local/nginx目錄下建立logs目錄,設定如下配置,防止重啟後/var/run/nginx目錄被刪後報錯

user nobody;

worker_processes 1;

error_log logs/error.log;

error_log logs/error.log notice;

error_log logs/error.log info;

pid logs/nginx.pid;

#負載均衡配置

upstream cluster

server

}

⑤ 啟動測試啟動nginx:/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf;

啟動nacos集群:進入到nacosbin目錄,啟動:

./startup.sh -p 3333

./startup.sh -p 4444

./startup.sh -p 5555

訪問192.168.182.200:1111/nacos,如下圖nacos的集群搭建完成,若有失敗檢視日誌解決即可:

新建乙個配置:

資料庫查詢已插入成功:

修改provider專案的spring.cloud.nacos.discovery.server-addr=192.168.182.200:1111,然後啟動,可以看到服務註冊成功:

Nacos集群和持久化配置

因為nacos安裝到本地上,配置中的資料都在本地 nacos自帶的資料庫derby 中 萬一出現單點故障,那麼配置就會全部丟失 註冊中心也會癱瘓,這就是我們為什麼要集群和持久化到mysql資料庫中的原因 所以我們一般會將配置存到資料庫中 這樣配置中心只需要到資料庫中讀取就可以了 而不用我們乙個個去安...

Nacos集群和持久化配置 重要

官網架構圖 官網集群配置說明 改成自己對應的資料庫的配置 單機版啟動命令 sh startup.sh m standalone 192.168.96.128 192.168.96.131 192.168.96.132 單機版啟動命令 sh startup.sh m standalone 集群必須配置...

Nacos 集群和持久化

官網 上圖翻譯一下 預設nacos使用嵌入式資料庫 derby 實現資料的儲存。所以,如果啟動多個預設配置下的nacos節點,資料儲存是存在一致性問題的。為了解決這個問題,nacos採用了集中式儲存的方式來支援集群化部署,目前只支援mysql的儲存。nacos支援三種部署模式 單機模式 用於測試和單...