ITPub博客

首页 > 数据库 > 数据库开发技术 > SpringCloud微服务干货|Nacos注册与发现中心,集群搭建实现详解

SpringCloud微服务干货|Nacos注册与发现中心,集群搭建实现详解

原创 数据库开发技术 作者:Finally_m 时间:2023-02-22 08:03:00 0 删除 编辑
点击上方蓝字关注我们

Nacos是SpringCloudAlibaba微服务架构体系中的一个重要组件,那么该如何保证Nacos的高可用?集群部署就是一个行之有效的解决方案。那么又该如何搭建Nacos集群呢?快来跟涛哥撸起来吧!

关注Java架构栈,干货天天都不断。

一. Nacos集群部署架构图

以下是来自官网的部署架构图,大家先看一看吧 ^_^:

开发的时候,涛哥推荐大家把所有服务列表放到一个ip下面,然后挂到一个域名下面。

  • http://ip1:port/openAPI,直连ip模式,机器挂则需要修改ip才可以使用;

  • http://SLB:port/openAPI,挂载SLB模式(内网SLB,不可暴露到公网,以免带来安全风险),直连SLB即可,下面挂server真实ip,可读性不好;

  •    http://nacos.com:port/openAPI,域名 + SLB模式(内网SLB,不可     暴露到公网,以免带来安全风险),可读性好,而且换ip方便,推荐模     式。

二. Nacos集群搭建

首先我们再通过一张图,来了解一下集群原理:

通过上图我们可以明确Nacos集群搭建的几个关键步骤:

  1. 在MySQL中创建一个名为nacos的数据库,并执行nacos/conf/nacos-mysql.sql文件,创建数据表;

  2. 现在Nacos,拷贝三个nacos节点,并完成数据源配置、相互节点信息配置;

  3. 搭建Nginx负载均衡服务器,构建nacos集群;

  4. 服务面向Nginx进行注册。

步骤明确了,我们就来动手吧!

三. 集群节点信息

在本案例中,我们要搭建出三个Nacos节点,连接到相同的数据库,并搭建一个Nginx服务器,各端口配置信息如下:

服务名 ip 端口 备注

nacos1

192.168.2.8

8848

节点1

nacos2

192.168.2.8

8858

节点2

nacos3

192.168.2.8

8868

节点3

nginx

192.168.2.8

80

反向代理nacos3个实例

四. nacos节点配置

application.properties 配置节点port 和 mysql数据源信息。

server.port=8848
nacos.inetutils.ip-address=192.168.1.3
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=@QFedu123

cluster.conf配置节点列表(需要在nacos/conf目录中,拷贝cluster.conf.example,修改为cluster.conf)。

#2022-11-10T11:06:02.093
192.168.1.3:8848
192.168.1.3:8858
192.168.1.3:8868

bin/startup.cmd配置(默认就是集群启动)。

set MODE="cluster"

相同的配置,部署三个nacos节点(端口分别为 8848、8858、8868,不要设置连续的端口)。

五. nginx负载均衡服务器配置

nginx.conf文件的内容信息如下:

upstream  nacoscluster {
    server    192.168.1.3:8848;
    server    192.168.1.3:8858;
    server    192.168.1.3:8868;
}

server {
    listen       80;
    server_name  localhost;
    location / {
        proxy_pass http://nacoscluster/;
    }
}

接下来依次启动三个Nacos节点,然后启动Nginx服务器,在微服务架构系统中进行服务注册时,面向Nginx的地址进行注册,你会发现在三个Nacos节点中,就都能看到服务器的注册信息啦!小伙伴们学会了吗?赶紧动手试试吧!记得点个赞哟^_^!

扫码咨询了解课程详情,获取课程配套资料!



扫码或者点击文末左下角【阅读原文】快速进入学习!


点击【阅读原文】,免费开始学习SpringCloud视频课程!

原文作者:Java架构栈;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2021-04-13

  • 博文量
    573
  • 访问量
    243805