Nacos的單節點,也就是我們最開始使用的standalone模式,配置的數據是默認存儲到內嵌的數據庫derby中。
如果我們要搭建集群的話,那么肯定是不能用內嵌的數據庫,不然數據無法共享。集群搭建的時候我們需要將Nacos對接Mysql進行數據存儲。
集群模式跟我們平時進行擴容是一樣的,可以通過Nginx轉發到多個節點,最前面掛一個域名即可,如下圖:
通常如果我們只是為了體驗的話直接在本地起動3個實例就可以了,沒必要真的去搞三台服務器,下面我們就以在本地的方式來搭建集群。
將Nacos的解壓包復制分成3份,分別是:
- nacos
- nacos1
- nacos2
進入nacos的conf目錄,編輯application.properties文件,增加數據庫配置
# 指定數據源為Mysql
spring.datasource.platform=mysql
# 數據庫實例數量
db.num=1
db.url.0=jdbc:mysql://localhost:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=123456
同樣的步驟進入nacos1和nacos2操作一遍,唯一需要修改的就是application.properties文件中的server.port,默認nacos的server.port=8848,我們在本地啟動三個實例,那么端口肯定會沖突,所以其他2個實例的端口我們需要進行修改,比如nacos1修改成8847,nacos2修改成8846。
數據庫配置信息好了后,我們需要將對應的數據庫和表進行初始化,數據庫腳本在conf目錄下的nacos-mysql.sql中,執行即可。
最后一步需要配置一份集群節點信息,配置文件在conf目錄下的cluster.conf.example文件,我們進行重命名成cluster.conf。
然后編輯cluster.conf文件,增加3個節點的信息,格式為IP:PORT,三個目錄都一致即可。
127.0.0.1:8848
127.0.0.1:8847
127.0.0.1:8846
啟動的話直接到bin目錄下,執行./startup.sh就可以了,默認就是集群模式,不需要加任何參數。
關於Nginx的安裝和配置,本文就不進行講解了,不會的可以自己去嘗試下,核心配置如下:
upstream nacos {
server 127.0.0.1:8848;
server 127.0.0.1:8847;
server 127.0.0.1:8846;
}
整體來說,nacos的集群搭建方式還是挺簡單的,沒什么特別要注意的,最好是能通過域名的方式來進行訪問,另外數據庫這塊如果上生產環境,也需要考慮高可用問題,至少也得有個主從。
猜你想看: