Nacos 集群部署

Posted catoop

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nacos 集群部署相关的知识,希望对你有一定的参考价值。

Nacos 集群部署

本文对Nacos的集群部署进行说明,有单节点需求的,按集群部署的方式部署一个即可。
查看本文之前,请先前往官网下载服务部署包。

部署架构图

在这里插入图片描述

创建数据库

Nacos官方目前仅支持mysql数据库
注:建议使用MySQL 5.6.5+

1.创建数据库并导入脚本

创建数据库nacos
将脚本 conf/nacos-mysql.sql 将其导入到数据库中。

2.配置数据库连接

将配置文件 conf/application.properties 中的数据库连接信息修改为创建的数据库连接信息。

#*************** Config Module Related Configurations ***************#
### 使用MySQL数据库
spring.datasource.platform=mysql

### 数据库实例个数
db.num=1

### 连接数据库的信息,db.url.0 为第一个实例,第二个实例则是 db.url.1,以此类推
db.url.0=jdbc:mysql://192.168.1.116:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=nacos
db.password.0=nacos

注:目前我们使用2.0以上版本,默认支持MySQL8.0,内置了对应的驱动包

主机说明

3台机器,每台机器的配置完全相同。如果你要在同一个机器上部署3个不同实例,则需要注意区分端口号配置。

部署

复制或重命名文件 conf/cluster.conf.examplecluster.conf,然后将里面的3个IP地址修改为你的3台机器的IP地址,例如:

192.168.1.101:8848
192.168.1.102:8848
192.168.1.103:8848

注:如果你需要修改端口号,在 application.properties 文件中修改 server.port=8848

最后使用命令 sh startup.sh 启动服务。

nginx配置示例如下:

upstream nacos {
  server 192.168.1.101:8848;
  server 192.168.1.102:8848;
  server 192.168.1.103:8848;
}

server {
  listen 80;
  server_name _;
  location /nacos/ {
    proxy_pass http://nacos/nacos/;
  }
}

测试

假设 Nginx 服务器的IP地址为 192.168.1.104,则访问地址为 http://192.168.1.104:80/nacos 可看到Nacos的登录页,登录后即可正常使用Nacos。

注:在访问 Nginx 验证之前,建议通过浏览器挨个访问3个不同实例的nacos验证是否每个都正常。

建议事项

  • 实际项目中,建议为Nacos集群的Nginx设定一个内部域名,这样即使未来Nacos Server需要迁移,也无需修改Nacos Client端的配置。
  • 实际生产中,不推荐将所有实例部署在了一台机器中。不能为了集群而集群,集群的目的更多是为了实现更好的容灾与隔离。

其他更多内容请参考官方集群部署说明


(END)

以上是关于Nacos 集群部署的主要内容,如果未能解决你的问题,请参考以下文章

Nacos Server Docker部署集群踩坑

Nacos 集群部署

Spring Cloud Alibaba | Nacos集群部署

Nacos学习笔记 Nacos集群部署

Nacos学习笔记 Nacos集群部署

Nacos集群部署