微服务和集群版 微服务集群部署

0 阅读2分钟

目录

1.官方集群结构

2.搭建集群

2.1搭建数据库

2.2安装nacos

2.3配置nacos

2.4启动

2.5nginx反向代理和负载均衡


1.官方集群结构

image.png

         请求进入以后,经过SLB负载均衡器分发到不同的nacos结点。

详细设计:3个nacos结点通过MySQL集群实现数据共享,nginx实现反向代理和负载均衡

 3个nacos结点还是使用不同的端口模拟

2.搭建集群

2.1搭建数据库

        Nacos 默认数据存储在内嵌数据库 Derby 中,不属于生产可用的数据库。官方推荐的最佳实践是使用带有主从的高可用数据库集群,主从模式的高可用数据库。这里我们以单点的数据库为例。

image.png

        首先新建一个数据库,命名为 nacos,而后导入下面的 SQL(在nacos安装目录 -> conf -> nacos-mysql.sql可找到)

2.2安装nacos

2.3配置nacos

1.进入nacos的conf目录,修改配置文件cluster.conf.example,重命名为cluster.conf

image.png

2.在文件末尾修改结点信息(端口占用要修改,我就是8846被占用,所以改成8849)

127.0.0.1:8845
127.0.0.1:8849
127.0.0.1:8847

  1. 修改 application.properties 文件,添加数据库配置

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=

2.4启动

1.将nacos文件夹复制三份,模拟三台机器

image.png

2.分别修改三个application.properties文件的端口

nacos1:

server.port=8845

nacos2:

server.port=8849

nacos3:

server.port=8847

 3.运行bin目录下的startup.cmd文件

        或者在bin目录下执行启动命令:

startup.cmd

2.5nginx反向代理和负载均衡

1.安装

        官网地址:nginx.org/en/download…

image.png

         解压即安装

2.修改配置

        修改 nginx 文件夹下的 conf/nginx.conf 文件的http属性内添加

`upstream nacos-cluster { 
    server 127.0.0.1:8845; 
    server 127.0.0.1:8849; 
    server 127.0.0.1:8847; 
}
server { 
    listen 80; 
    server_name localhost; 
    location /nacos { 
        proxy_pass http://nacos-cluster; 
    } 
}`

image.png 3.启动

        在安装目录执行启动命令

start nginx.exe

 访问http://localhost/nacos

404报错!!!

如果访问出现404,而检查配置无误,将监听端口80改为其他空闲的(如8888)测试,结束后再改回80测试,用什么端口无所谓,能跑就行

在访问的配置文件中配置:

spring: application: name: user-server # 服务名称 cloud: nacos: server-addr: localhost:80/nacos #nacos服务地址

注意!!! 此处的nacos服务地址由添加在nginx.conf 文件的http属性的三部分组成,直接写localhost:80会连接失败

 

 在nacos控制台创建配置

 发布失败可能是版本问题,创建数据库时要用自己nacos目录conf里面的nacos-mysql.sql文件,

测试访问:http://localhost:8081/user/prop