Nacos 集群部署2

Nacos支持三种部署模式

  • 单机模式 - 用于测试和单机试用。

  • 集群模式 - 用于生产环境,确保高可用。

  • 多集群模式 - 用于多数据中心场景。

注:本文以Linux CentOS7系统为讲述如何部署集群模式(cluster);(虚拟机使用VMware)

老规矩环境准备,请确保是在环境中安装使用:

  • 64 bit OS Linux/Unix/Mac,推荐使用Linux系统。

  • 64 bit JDK 1.8+;下载.配置。

  • Maven 3.5.x+;下载.配置。

集群需要依赖mysql,单机可不必

3个或3个以上Nacos节点才能构成集群。

1.Nacos持久化mysql

nacos支持mysql持久化,所以我们部署集群前要先配置mysql

  • mysql版本:5.7以上

  • sql文件:在nacos安装目录下config/nacos-mysql.sql

在mysql中创建数据库nacos,执行上面的sql语句,如图:

Nacos 集群部署2_第1张图片

配置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.集群规划图
Nacos 集群部署2_第2张图片
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

5.将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

6.向其中一个节点注册一个服务,在浏览器分别访问Nacos的3个节点看服务是否都注册进来了:http://10.8.32.14:8849/nacos/index.html;http://10.8.32.14:8847/nacos/index.html;http://10.8.32.14:8845/nacos/index.html;

Nacos 集群部署2_第3张图片

7.在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;
}

在浏览器访问Nginx的负载均衡地址:http://10.8.32.23:8888/nacos-server/nacos/index.html

Nacos 集群部署2_第4张图片

8.在服务中使用Nacos集群

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

至此,集群搭建完毕!

你可能感兴趣的:(微服务及分布式框架,后端Java框架,数据库,java,mysql)