Nacos使用指南
Nacos完整的搭建和项目配置流程,上手简单
一、Nacos安装启动
1.Windows安装
开发阶段采用单机安装即可。
1.1.下载安装包
在Nacos的GitHub页面,提供有下载链接,可以下载编译好的Nacos服务端或者源代码:
GitHub主页:https://github.com/alibaba/nacos
GitHub的Release下载页:https://github.com/alibaba/nacos/releases
安装小技巧:
windows版本:使用nacos-server-xxxx.zip包解压即可
linux版本:可以使用nacos-server-xxxx.tar.gz
(1).进入到安装包所在文件夹:cd /xxx/xxx(具体路径按照实际情况而定)
(2).解压安装包:tar -xf nacos-server-xxxx.tar.gz
(3).进入bin并启动:sh startup.sh -m standalone
(4).默认访问地址:http://127.0.0.1:8848/nacos/ 账号密码:nacos/nacos
1.2.配置文件
主要注意的是安装包里需要关注bin和conf两个文件路径,其中
bin:启动相关脚本
conf:是配置文件
我们进入conf文件夹,可以看到一份熟悉的文件application.properties
我们都知道Nacos默认端口号是8848,如果有需要调整端口号,可进入此配置文件修改server.port对应端口号重启即可生效
1.3 Nacos启动
进入bin文件,可以看到如下文件:
启动/关闭命令:
启动命令:sh startup.sh -m standalone
关闭命令:sh shutdown.sh
启动成功后的日志信息:
nacos is starting with standalone
nacos is starting,you can check the /Users/gaoshengyong/soft/nacos/nacos/logs/start.out
二、项目配置
(1)父工程配置----依赖版本管理:
<!-- nacos父工程pom文件配置 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>2.2.5.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
(2)客户端配置----引入依赖包:
<!-- nacos客户端依赖包 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
(3)文件配置application.yml相关配置----增加nacos配置:
spring:
cloud:
nacos:
server-addr: localhost:8848 # nacos 服务端地址
discovery:
cluster-name: SH # 集群名称
三、验证完整链路
完成以上配置后,启动nacos并启动项目服务,浏览器器打开nacos
(是本地启动nacos,访问默认地址:localhost:8848/nacos,默认密码:nacos/nacos)
nacos管理页:
如图中,order-server和user-server就是我们测试的demo,说明服务实例已注册成功。
四、细节补充
nacos还有命名空间、临时实例等概念
命名空间:可用于环境分割,默认有publice命名空间,我们可以按需新建开发命名空间、测试命名空间、生产命名空间等,命名空间之间是相互隔离的
临时实例:临时实例和非临时实例是作为nacos的两种类别,当临时实例注册上nacos时,临时实例采用心跳模式主动向nacos发送心跳包,而非临时实例采用主动检测模式。当临时实例的心跳不正常时会被剔除,而非临时实例则不会,等待人工手动启动。另外非临时实例会比较耗nacos资源:
配置流程:
(1)新增命名空间
(2)文件配置application.yml相关配置:
spring:
cloud:
nacos:
server-addr: localhost:8848 # nacos 服务端地址
discovery:
cluster-name: HZ # 集群名字
namespace: 715cb215-10e0-430b-b935-420f6a8ac0ad #选择命名空间-dev环境
ephemeral: false #是否是临时实例
PS:
namespace:填写命名空间的id
ephemeral: 是否是临时实例,临时实例为true,非临时实例为false
(3)重启服务
a.进入服务列表查看,命名空间以及服务分配已成功
b.进入服务详情,查看临时实例情况,已从默认的true成功改为了false
终于已完成完整链路,接下来,可以进入业务代码开发了~~
编写者:梦想的边缘