1. 程式人生 > 其它 >Nacos部署叢集

Nacos部署叢集

Nacos支援三種部署模式

單機模式 - 用於測試和單機試用。
叢集模式 - 用於生產環境,確保高可用。
多叢集模式 - 用於多資料中心場景。
注:本文以Linux CentOS7系統為講述如何部署叢集模式(cluster);(虛擬機器使用VMware)

老規矩環境準備

請確保是在環境中安裝使用:

64 bit OS Linux/Unix/Mac,推薦使用Linux系統。
64 bit JDK 1.8+;下載.配置。
Maven 3.2.x+;下載.配置。
叢集需要依賴mysql,單機可不必
3個或3個以上Nacos節點才能構成叢集。

1.Nacos持久化mysql

nacos支援mysql持久化,所以我們部署叢集前要先配置mysql

mysql版本:5.7以上

sql檔案:在nacos安裝目錄下config/nacos-mysql.sql

在mysql中建立資料庫nacos,執行上面的sql語句,如圖:

配置nacos的mysql配置:/config/application.properties

#*************** Spring Boot Related Configurations ***************#
### Default web context path:
server.servlet.contextPath=/nacos
### Default web server port:
server.port
=8845 #*************** Network Related Configurations ***************# ### If prefer hostname over ip for Nacos server addresses in cluster.conf: # nacos.inetutils.prefer-hostname-over-ip=false ### Specify local server's IP: # nacos.inetutils.ip-address= #*************** Config Module Related Configurations ***************# ### If use MySQL as datasource: spring.datasource.platform
=mysql ### Count of DB: db.num=1 ### Connect URL of DB: db.url.0=jdbc:mysql://10.8.32.14:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC db.user.0=root db.password.0=root

2.叢集搭建

1.叢集規劃圖

2.叢集規劃

nacos01 10.8.32.14:8845

nacos02 10.8.32.14:8847

nacos03 10.8.32.14:8849

mysql 10.8.32.14:3306

nginx 10.8.32.23:8888

3.搭建nacos叢集

1.準備3個nacos節點,並連線mysql資料庫

2.修改三個nacos節點的埠分別為8845/8847/8849

3.在conf資料夾下建立cluster.conf,內容為叢集中的節點,如圖:

4.以次啟動3個nacos的bin目錄下的startup.sh

./startup.sh

4.將3個節點的埠新增到防火牆

firewall-cmd --zone=public --add-port=8845/tcp --permanent
firewall-cmd --zone=public --add-port=8847/tcp --permanent
firewall-cmd --zone=public --add-port=8849/tcp --permanent
systemctl stop firewalld.service
systemctl start firewalld.service

5.在瀏覽器訪問

6.在nginx配置負載均衡

        location /nacos-server/ {
        proxy_set_header Host $http_host;
        proxy_pass http://nacos-servers/;
        }
    upstream nacos-servers{
    server 10.8.32.14:8845;
    server 10.8.32.14:8847;
    server 10.8.32.14:8849;
    }

7.在服務中使用Nacos叢集

  cloud:
    nacos:
      discovery:
        server-addr: 10.8.32.23:8888/nacos-server/

至此,叢集搭建完畢!