【Spring Cloud Alibaba】004-Nacos 管理界面与集群部署
文章目录
一、管理界面
1、文档
地址:https://nacos.io/zh-cn/docs/what-is-nacos.html
使用最多的是 open-api (对外访问的接口): https://nacos.io/zh-cn/docs/open-api.html
2、服务列表与命名空间
命名空间
手动创建命名空间
服务列表按照命名空间分类
服务详情
设置永久实例
spring:
application:
name: stock-service
cloud:
nacos:
server-addr: localhost:8848
discovery:
username: nacos
password: nacos
namespace: public
ephemeral: false # 服务注册为永久服务,即使服务宕机了,也会存在!
设置下线
下线有时间延迟,因为有缓存,大约每过 20 秒刷新一次!
另外,下线只能影响通过 nacos 调用的服务,nacos 作为桥梁的服务,因为服务本身是可用的,只是 nacos 不让你“过桥”了!
设置下线后,服务就不可用了!
二、集群部署
1、Nacos 集群架构
这种架构,官方称之为 “ 域名 + SLB 模式 ” ,其优点可读性好,而且换 IP 方便。
域名是直接解析到负载均衡上,再由负载均衡选择具体 Nacos 实例来进行访问,这种架构也是 Nacos 官方推荐集群模式。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZaVxscMh-1676994776532)(https://gudu2019.oss-cn-beijing.aliyuncs.com/mdimg/24389a3ddd_%E7%9C%8B%E5%9B%BE%E7%8E%8B.jpg)]
2、准备工作
在搭建之前,我们得先准备一个可用的 MySQL 数据库
,因为在 Nacos 集群模式下,数据的持久化是需要公用的,每一台 Nacos 实例都需要连接同一个 MySQL 数据库。
创建数据库 order_nacos 并执行 sql 文件
3、三步搭建 Nacos 集群
本次集群搭建,我们也按照 3 台 Nacos 的规模来搭建,3 台最好放在 3 台不同的服务器上。
将 nacos 复制出来三份
第一步:配置 MySQL 信息
把 MySQL 数据库信息配置到 Nacos 配置文件当中,在解压后的文件中,有一个 conf 文件夹,修改里面的 application.properties
文件,如下图:
如果要修改 Nacos 服务的端口号,对应配置是:
server.port=8848
第二步:配置集群信息
这一步就是告诉 Nacos,其他节点都部署在哪台服务器上,怎么告诉呢?在 conf 文件夹下,有一个
cluster.conf.example
文件,首先我们把文件名改成cluster.conf
,然后编辑这个文件,把 Nacos 每台对应的 IP 以及 Nacos 端口号配置进去。端口不能相邻,因为:
127.0.0.1:8842
127.0.0.1:8845
127.0.0.1:8848
第三步:修改集群内存大小
修改 startup.cmd 文件,启动文件默认就是集群模式(我们前面改成了单机模式,此时改回来
set MODE="cluster"
),但是集群模式下分配的系统内存占用特别大,如果你机器内存很足,那可以忽视。
这里我改成 -Xms64m -Xmx64m -Xmn32m
,系统内存省着点花。
注意:这三步骤,在每一台 Nacos 实例,都需要进行配置。
三台 nacos 部署在一台机器上,别忘记改端口号!
4、启动集群
启动三台 Nacos
访问其中一台
5、nginx 负载均衡
具体演示略
安装 nginx
参考文章:
https://blog.csdn.net/qq_29689343/article/details/115265847
https://blog.csdn.net/qq_45752401/article/details/122660965
nginx 负载均衡配置
默认轮询 反向代理
upstream nacoscluster {
server 127.0.0.1:8849;
server 127.0.0.1:8850;
server 127.0.0.1:8851;
}
server {
listen 8847;
server_name localhost;
location /nacos/{
proxy_pass http://nacoscluster/nacos/;
}
}