linux下部署nacos(单机、集群)

nacos.jpg

官网文档地址:nacos.io/zh-cn/docs/... github地址:github.com/alibaba/nac...

nacos简介

Nacos,全称阿里巴巴开源的动态服务发现、配置和服务管理平台,是构建以"服务"为中心的现代应用架构(例如微服务范式、云原生范式)的服务基础设施。它是云原生应用的三大功能:注册中心、配置中心和动态DNS服务的提供者。

在服务注册发现和服务健康检测方面,Nacos支持基于DNS和基于RPC的服务发现,并且服务端可以通过SDK或者Api进行服务注册。相应的服务消费者可以使用DNS或者Http查找的方式获取服务列表。此外,Nacos还提供对服务的实时健康检查,阻止向不健康的主机或服务发送请求。

在动态配置服务上,Nacos支持动态的配置管理,将服务的配置信息分环境分类别外部管理,并且支持热更新。与Config不同的是,Nacos的配置信息存储在数据库中,支持配置信息的监听和版本回滚。

除此之外,Nacos还能让您从微服务平台建设的视角管理数据中心的所有服务及元数据,包括管理服务的描述、生命周期、服务的静态依赖分析、服务的健康状态、服务的流量管理、路由及安全策略、服务的SLA以及metrics统计数据。

单机部署

1.从github下载项目github.com/alibaba/nac... 我部署的是2.1.0版本,大家可以根据自己的需求下载相应的文件 2.项目拉取完之后我们直接放到服务器上解压 3.项目依赖于mysql数据库,版本版本要求:5.6.5+,我们需要创建一个库名为nacos的数据库,使用nacos/conf/nacos-mysql.sql初始化数据,初始化完成之后就可以部署项目了 初始化sql文件[1] 4.修改 nacos/conf/application.properties 配置文件,我们此处只需修改我们的端口号和数据库配置即可 配置文件模板[2] 5.启动项目

bash 复制代码
cd nacos/bin
sh startup.sh -m standalone

集群部署

集群部署前边的步骤和单机部署一致,我们在第四步的时候还需要在 nacos/conf 下额外配置一个 cluster.conf的配置文件,请每行配置成ip:port。(请配置3个或3个以上节点)

makefile 复制代码
# ip:port
192.168.1.106:8858
192.168.1.106:8868
192.168.1.106:8878

我们此处配置了3个节点,每个服务的配置文件只有端口号做了修改,其他的均一致; 启动项目:

bash 复制代码
cd nacos/bin
sh startup.sh

部署完成后我们使用默认的用户:nacos,密码:nacos登录

_20230610223717.png

到此我们已经可以使用了 如果我们使用http://ip1:port/nacos 直连ip模式,机器挂则需要修改ip才可以使用。生产我们推荐使用ng或其他方式做负载,来提高我们服务的可用性

部署常见问题

1.jdk 配置问题

vbnet 复制代码
readlink: missing operand
Try 'readlink --help' for more information.
dirname: missing operand
Try 'dirname --help' for more information.
ERROR: Please set the JAVA_HOME variable in your environment, We need java(x64)! jdk8 or later is better! !!

这种情况是我们配置的jdk路径nacos没识别到,我们只需在启动脚本nacos/bin/startup.sh中手动配置下我们的JAVA_HOME 路径即可 图中红色标记的部分则是我们添加的自己的jdk安装路径

参考资料

[1]

初始化sql文件: mindoc.xiuji.mynatapp.cc/attach_file...

[2]

配置文件模板: mindoc.xiuji.mynatapp.cc/attach_file...

相关推荐
hlsd#22 分钟前
go mod 依赖管理
开发语言·后端·golang
陈大爷(有低保)27 分钟前
三层架构和MVC以及它们的融合
后端·mvc
亦世凡华、27 分钟前
【启程Golang之旅】从零开始构建可扩展的微服务架构
开发语言·经验分享·后端·golang
河西石头28 分钟前
一步一步从asp.net core mvc中访问asp.net core WebApi
后端·asp.net·mvc·.net core访问api·httpclient的使用
2401_8574396940 分钟前
SpringBoot框架在资产管理中的应用
java·spring boot·后端
怀旧66641 分钟前
spring boot 项目配置https服务
java·spring boot·后端·学习·个人开发·1024程序员节
阿华的代码王国1 小时前
【SpringMVC】——Cookie和Session机制
java·后端·spring·cookie·session·会话
小码编匠1 小时前
领域驱动设计(DDD)要点及C#示例
后端·c#·领域驱动设计
德育处主任Pro2 小时前
『Django』APIView基于类的用法
后端·python·django
哎呦没4 小时前
SpringBoot框架下的资产管理自动化
java·spring boot·后端