Nacos介绍及使用

内容分享2周前发布
0 4 0

一、Nacos介绍

Nacos是SpringCloudAlibaba架构中最重大的组件。

Nacos 是一个更易于协助构建云原生应用的动态服务发现、配置和服务管理平台,提供注册中心、配置中心和动态 DNS 服务三大功能。能够无缝对接Springcloud、Spring、Dubbo等流行框架。

Nacos 支持a(高可用)p(分区容错)和c(一致性)p(分区容错),默认为ap, eureka仅支持ap,zookeeper仅支持cp

二、Nacos能做什么?

服务注册发现和服务健康监测:

  Nacos支持基于DNS和基于RPC的服务发现,服务端可以通过SDK或者Api进行服务注册,相应的服务消费者可以使用DNS或者Http查找的方式获取服务列表。Nacos同时提供对服务的实时健康检查,阻止向不健康的主机或服务发送请求,与Eureka类似Nacos也有友善的控制台界面。

动态DNS服务:

  支持权重路由,更容易地实现中间层负载均衡、更灵活的路由策略、流量控制以及数据中心内网的简单DNS解析服务。

动态配置服务:

  接触过SpringCloud应该对config有所了解,那么配置中心也就很好理解,Nacos支持动态的配置管理,将服务的配置信息分环境分类别外部管理,并且支持热更新。不过与Config不同Nacos的配置信息存储于数据库中,支持配置信息的监听和版本回滚。

服务及元数据管理:

  Nacos 能让您从微服务平台建设的视角管理数据中心的所有服务及元数据,包括管理服务的描述、生命周期、服务的静态依赖分析、服务的健康状态、服务的流量管理、路由及安全策略、服务的 SLA (服务等级协议)以及最首要的 metrics 统计数据(默认不开启暴露需要修改配置)。可以搭建搭建prometheus采集Nacos metrics数据也可以搭建搭建grafana图形化展示metrics数据

三、Nacos服务端搭建(Window):

Nacos官方下载地址:
https://github.com/alibaba/nacos/releases

Nacos码云下载地址(更快):
https://gitee.com/mirrors/Nacos/releases

解压后,进入 bin 目录,注意,bin目录在 distribution 下面

C:work_programNacos-2.2.0.1-releasedistributionin

编辑 startup.cmd

set MODE=”cluster” 修改为 set MODE=”standalone 单机模式 或者输入指令 startup -m standalone 单机模式启动

  • JDK问题

双击 startup.cmd,屏幕闪一下然后关闭,

cd C:work_programNacos-2.2.0.1-releasedistributionin>startup

报错 Please set the JAVA_HOME variable in your environment, We need java(x64)! jdk8 or later is better!

java -version,版本为 jdk 17,可能版本太高了。。。

修改 java home,引用 jdk 8

删除

C:Program FilesCommon FilesOracleJavajavapath

C:Program Files (x86)Common FilesOracleJavajavapath

配置

JAVA_HOME C:Program FilesJavajdk1.8.0_202

Path 添加 %JAVA_HOME%in 和 %JAVA_HOME%jrein

  • nacos-server.jar 不存在

“nacos is starting with standalone”

Unable to access jarfile C:work_programNacos-2.2.0.1-releasedistribution argetnacos-server.jar

cd C:work_programNacos-2.1.1-> mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U

生成了 nacos-server.jar,把这个 jar 放到distribution argetnacos-server.jar

  • 找不到 nacos-console:jar:2.2.0

[ERROR] Failed to execute goal on project nacos-distribution: Could not resolve dependencies for project com.alibaba.nacos:nacos-distribution:pom:2.2.0: Could not find artifact com.alibaba.nacos:nacos-console:jar:2.2.0 in alimaven (http://maven.aliyun.com/nexus/content/groups/public/)

中央仓库的确 没有这个artifact!!!

发现 nacos 有 console 目录,

查看 pom 文件,原来 nacos-console 项目在这里。。。

安装 nacos-console cd C:work_programNacos-2.1.1console mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U

  • 端口号被占用

com.alibaba.nacos.core.distributed.raft.exception.JRaftException: java.io.IOException: Failed to bind

netstat -aon|findstr “8848” 没有进程占用这个端口号,

重启电脑,启动 nacos 成功。


http://localhost:8848/nacos 用户名和密码都是 nacos

Nacos介绍及使用

#发现深圳美好# #程序员#

© 版权声明

相关文章

4 条评论

您必须登录才能参与评论!
立即登录
  • 头像
    拼好饭糕手 投稿者

    云原生本省就不需要注册中心,一看就是Java系的

    无记录
  • 头像
    冰山雪莲 读者

    配置中心和注册中心,k8s本身就,部分使用nacos的场景,仅仅是不愿意重构老旧的微服务

    无记录
  • 头像
    像索图娜那样 投稿者

    大佬厉害,学习了

    无记录
  • 头像
    长安静轩阁主 投稿者

    收藏了,感谢分享

    无记录