搭建nacos集群,并通过nginx实现负载均衡

nacos、eureka、consul、zookeeper等都是常用的微服务注册中心,这篇文章详细介绍一下在Ubuntu操作系统上搭建一个nacos的集群,以及通过nginx的反向代理功能实现nacos的负载均衡。

目录

一、安装nacos

1、安装nacos

2、修改nacos配置文件

3、创建nacos的数据源

二、搭建nacos集群

1、修改nacos的集群配置文件

2、创建nacos集群节点

3、安装nginx服务器

4、通过nginx的反向代理功能实现nacos的负载均衡


在此之前,需要一台安装了Ubuntu系统的服务器或者虚拟机。

一、安装nacos

1、安装nacos

把下载下来的nacos压缩包上传到Ubuntu的一个目录下,这篇文章选择在/usr/local下创建一个nacos目录来保存安装的多个nacos服务器。

上传压缩包后解压:

bash 复制代码
tar -zxvf nacos-server-1.4.2.tar.gz

2、修改nacos配置文件

上面已经完成了nacos的安装,接下来修改一下nacos的配置文件,由于nacos默认把数据保存到derby数据库(这是一个内存数据库),为了保证数据的一致性,需要修改一下,把配置信息保存到mysql。

修改nacos安装目录下的conf/application.properties配置文件

修改nacos数据源配置,也就是红框内的配置

修改之后的配置内容(先取消注释,删除前面的# ,然后修改配置)

3、创建nacos的数据源

第二步已经修改了nacos的数据源配置,接下来需要在服务器的mysql数据库上创建一个nacos数据库

然后,在nacos数据库上执行下面的nacos-mysql.sql

执行完成后,数据库下面有以下几张表:

二、搭建nacos集群

1、修改nacos的集群配置文件

首先,复制一份cluster.conf.example并命名为cluster.conf

修改配置文件的内容,把所有nacos服务器的地址都编辑上去。

bash 复制代码
192.168.60.128:8858
192.168.60.128:8868
192.168.60.128:8878

2、创建nacos集群节点

把nacos的目录名修改为nacos8858,作为集群的一个节点。

重复之前的解压操作,然后重命名。

创建节点2

创建节点3

然后把nacos8858的conf/application.properties以及cluster.conf复制一份,覆盖掉nacos8868和nacos8878两个节点原来的配置文件。

最后一步:修改三个节点的端口号,修改conf/application.properties

最后,依次启动三个节点(注意:这里其实只需要启动任意节点即可,其余节点会一起启动)

启动节点1

访问一下三个节点(用户名/密码初始都是nacos)

访问节点1

在节点1创建一个命名空间test

访问节点2

访问节点3,在集群管理中可以看到三个节点都在线

至此,nacos集群搭建完成~

3、安装nginx服务器

可以参考博主的另外一篇文章完成nginx的安装:

ubuntu上安装nginxhttps://blog.csdn.net/heyl163_/article/details/132549969

4、通过nginx的反向代理功能实现nacos的负载均衡

修改niginx的配置文件nginx.conf

bash 复制代码
upstream nacosserver {
    server 192.168.60.128:8858;
    server 192.168.60.128:8868;
    server 192.168.60.128:8878;
}

server {
    listen       8848;
    server_name  localhost;
    
    location /nacos/ {
      proxy_pass http://nacosserver/nacos/;
    }
}

通过nginx访问nacos

好了,文章就分享到这里了~

相关推荐
龙智DevSecOps解决方案20 小时前
深度:Perforce P4 MCP 服务器开源解析——当版本控制遇见 AI Agent
运维·服务器·人工智能
小杰帅气20 小时前
负载均衡式的在线OJ
运维·负载均衡
蜡笔婧萱20 小时前
Linux--RHCE关于at和crond的第一次应用
linux·运维·服务器
VBsemi-专注于MOSFET研发定制20 小时前
高端LED封装自动化产线功率MOSFET选型方案——精密、高效与可靠驱动系统设计指南
运维·单片机·自动化
Agent手记20 小时前
生产节拍混乱,在制品积压严重该怎么破解?——2026制造业柔性生产与Agent自动化实战指南
运维·人工智能·ai·自动化
霍格沃兹测试学院-小舟畅学20 小时前
我用一个自定义Skill,把UI自动化维护时间从4小时压到15分钟
运维·ui·自动化
D4c-lovetrain20 小时前
Linux个人心得28(k8s实战)
linux·运维·kubernetes
淼淼爱喝水20 小时前
openEuler 环境下 Ansible Playbook 实战:批量创建用户并修改 Shell 属性
linux·运维·服务器·openeuler·playbook
莎士比亚的文学花园20 小时前
Linux驱动开发(2)——驱动编程
linux·运维·驱动开发
计算机安禾20 小时前
【Linux从入门到精通】第30篇:综合案例:编写一个Linux系统体检脚本
linux·运维·服务器