Nacos——Nacos简介以及Nacos Server安装

这篇具有很好参考价值的文章主要介绍了Nacos——Nacos简介以及Nacos Server安装。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

资料来源:02-Nacos配置管理-什么是配置中心_哔哩哔哩_bilibili

nacos记得下载2.x版本的,负责以后新建配置的时候会出现“发布错误,请检查参数是否正确”错误!!!!

目录

一、Nacos简介

1.1  四大功能:

1.2   对比

二、配置中心

2.1 什么是配置

  2.1.1 特点 

2.2 什么是配置中心

三、Nacos Server安装

3.1 文件下载

3.2 启动服务器(Windos方式)

3.3  OPEN API 配置管理测试

 3.3.1  curl工具安装

 3.3.2 发布配置

 3.3.3   获取配置

 3.3.4  关闭服务器(windows方式)

 3.3.5 外部MySQL数据库支持


一、Nacos简介

Nacos事阿里的一个开源产品,针对微服务架构中的服务发现、配置管理、服务治理的综合型解决方案。

1.1四大功能:

①服务发现与服务健康检查

     Nacos 使服务更容易注册,并通过 DNS HTTP 接口发现其他服务, Nacos 还提供服务的实时健康检查,以防止向不健康的主机或服务实例发送请求。

②动态配置管理

     动态配置服务允许您在所有环境中以集中和动态的方式管理所有服务的配置。 Nacos 消除了在更新配置时重新部署应用程序,这使配置的更改更加高效和灵活。

③动态DNS服务

     Nacos 提供基于 DNS 协议的服务发现能力(Nacos不光基于HTTP进行服务发现,也可以通过DNS协议进行服务发现),旨在支持异构语言的服务发现,支持将注册在 Nacos 上的服务以域名的方式暴露端点,让三方应用方便的查阅及发现。
④服务和元数据管理
    Nacos 能让您从微服务平台建设的视角管理数据中心的所有服务及元数据,包括管理服务的描述、生命周期、服务的静态依赖分析、服务的健康状态、服务的流量管理、路由及安全策略。
这里动态配置管理的特性说明了Naocs的配置管理能力。

1.2   对比

Nacos——Nacos简介以及Nacos Server安装

      从配置中心角度来看,性能方面Nacos的读写性能最高,Apollo次之,SpringCloudConfig依赖Git场景不适合开放的大规模自动化运维API。功能方面Apollo最为完善,nacos具有Apollo大部分配置管理功能,而SpringCloud Config不带运维管理界面,需要自行开发。Nacos的一大优势是整合了注册中心、配置中心功能,部署和操作相比

Apollo 都要直观简单,因此它简化了架构复杂度,并减轻运维及部署工作。

二、配置中心

总得来说,配置中心就是一种统一管理各种应用配置的基础服务组件

2.1 什么是配置

       应用程序在启动和运行的时候往往需要读取一些配置信息,配置基本上伴随着应用程序的整个生命周期,比如:数据库连接参数、启动参数等。

  2.1.1 特点 

   配置是独立于程序的 只读 变量
       配置对于程序是只读的,程序通过读取配置来改变自己的行为,但是程序不应该去改变配置
   配置伴随应用的整个生命周期
        
      配置贯穿于应用的整个生命周期,应用在启动时通过读取配置来初始化,在运行时根据配置调整行为。
      比如:启动时需要读取服务的端口号、系统在运行过程中需要读取定时策略执行定时任务等。
    配置可以有多种加载方式
      常见的有程序内部 hardcode ,配置文件,环境变量,启动参数,基于数据库等
    配置需要治理
        同一份程序在不同的环境(开发,测试,生产)、不同的集群(如不同的数据中心)经常需要有不同的配置,所以需要有完善的环境、集群配置管理

2.2 什么是配置中心

       在微服务架构中,当系统从一个单体应用,被拆分成分布式系统上一个个服务节点后,配置文件也必须跟着迁移(分割),这样配置就分散了,不仅如此,分散中还包含着冗余,如下图:
Nacos——Nacos简介以及Nacos Server安装
   为了避免冗余,我们可以创建一个配置中心,让所有的服务都从配置中心读取配置文件。
   
   也就是说 将配置从各个应用中剥离出来,由配置中心对配置进行统一管理,应用自身不需要自己去管理配置
流程如下图所示:整个过程很智能
Nacos——Nacos简介以及Nacos Server安装
那怎么获取最新的配置呢?
   比如说通过一些网络协议,远程网络协议读取出来。
为什么要通过远程网络协议读取出来?
   配置中心是一个独立部署的一个服务,可能在一个独立的服务器上,服务A和服务B都是再一个独立的服务器上,那这访问的话只能通过远程网络协议读取出来。
    

三、Nacos Server安装

Nacos 依赖 J ava 环境来运行。如果您是从代码开始构建并运行 Nacos ,还需要为此配置 Maven 环境。
 
推荐    nacos 2.x     jdk 1.8+    Maven 3.2.x+  mysql 5.6.5+ 

3.1 文件下载

Releases · alibaba/nacos (github.com)

下载下面的文件并解压,注意路径中不要有中文
       ".gz" 结尾的文件是Linux版本的,我们需要下载zip结尾的
Nacos——Nacos简介以及Nacos Server安装

 

下面是解压之后的文件目录
Nacos——Nacos简介以及Nacos Server安装

3.2 启动服务器(Windos方式)

   Nacos默认端口8848,所以我们要保证这个端口并没有被其他进程占用。

 启动命令:

cmd startup.cmd
   
    或者直接双击startup.cmd文件
Nacos——Nacos简介以及Nacos Server安装
不论哪种方式,运行成功后会出现下面这个页面,然后复制下面这个标红的地方,这个地方可能每个人都不一样
http://10.203.41.25:8848/nacos/index.html    或者   http://10.203.41.25:8848/nacos
或者  http://127.0.0.1:8848/nacos
Nacos——Nacos简介以及Nacos Server安装

 

假如我们双击之后出现cmd运行窗口闪退,可以参考下面这个人的文章,真的很棒

(34条消息) NACOS启动闪退的情况_日出前的千夜的博客-CSDN博客_nacos启动闪退

输入地址回车后会出现下面这个网页

    默认用户名:nacos     默认密码:nacos   

Nacos——Nacos简介以及Nacos Server安装
    输入密码便可以进入到主界面
Nacos——Nacos简介以及Nacos Server安装

3.3  OPEN API 配置管理测试

3.3.1  curl工具安装

启动 nacos 成功后,可通过 nacos 提供的 httpapi 验证 nacos 服务运行是否正常。
下边我们通过curl工具来测试nacosopenapi
curl是开发中常用的命令行工具,可以用作HTTP协议测试。
下载 curl windows 版本: curl-7.66.0_2-win64-mingw ,下载地址: https://curl.haxx.se/windows/
也可以从上面分享的百度网盘中提取资料
Nacos——Nacos简介以及Nacos Server安装
下载完成进入 curl-7.66.0_2-win64-mingw bin 目录,进行下边的测试,通过测试可判断 nacos 是否正常工作
Nacos——Nacos简介以及Nacos Server安装

 3.3.2 发布配置

   仔细看,这是一个POST请求

curl -X POST "http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=nacos.cfg.dataId&group=test&content=HelloWorld"

将上面的命令再cmd窗口进行运行,如果成功的话会出现“true”字样

Nacos——Nacos简介以及Nacos Server安装

此时出现true之后,我们再打开Nacos页面,配置列表->查询->就会出现下面这个配置,这个就是我们的配置信息

Nacos——Nacos简介以及Nacos Server安装

点击右侧详情

Nacos——Nacos简介以及Nacos Server安装

下面这个页面就会出现配置的内容 这个配置的内容,和我们刚刚所运行的指令相对应

Nacos——Nacos简介以及Nacos Server安装

    与“content=”之后的内容对应Nacos——Nacos简介以及Nacos Server安装

3.3.3   获取配置

 我们的电脑就是一个客户端,我们要从nacos中获取数据

 向 nacos 发布配置成功,就可以通过客户端从 nacos 获取配置信息,执行下边的命令:
   
       GET请求就可以获取到
curl -X GET "http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=nacos.cfg.dataId&group=test"

我们发布配置的时候指定了一个dataId、group、content

所以我们在获取配置的时候要指定dataId、group,此时我们便可以获取到content的内容,如下图所示

Nacos——Nacos简介以及Nacos Server安装

3.3.4  关闭服务器(windows方式)

cmd shutdown.cmd

或者有个更直接的方式就是把窗口直接关掉

或者双击shutdown.cmd运行文件

3.3.5 改成外部MySQL数据库支持

如下图所示,nacos中会有一些数据,单机模式时nacos默认使用嵌入式数据库实现数据的存储,

Nacos——Nacos简介以及Nacos Server安装

      MySQL和SQL Server这些数据库属于数据库服务器

      SQLite、Berkeley DB等属于嵌入式数据库

      嵌入式数据库跟数据库服务器最大的区别在于它们运行的地址空间不同

      通常,数据库服务器独立地运行一个守护进程(daemon),而嵌入式数据库与应用程序运行在同一个进程。

若想使用外部 mysql存储nacos 数据,需要进行以下步骤:
1. 安装数据库,版本要求: 5.6.5+ mysql8 以下
2.初始化mysql 数据库,新建数据库 nacos_config ,数据库初始化文件: ${nacoshome}/conf/nacos- mysql.sql
    将下面的这个文件导入数据库
Nacos——Nacos简介以及Nacos Server安装

 

下面就是nacos所需要的表Nacos——Nacos简介以及Nacos Server安装

3.修改${nacoshome}/conf/application.properties 文件,增加支持 mysql 数据源配置(目前只支持mysql),添加 mysql 数据源的 url 、用户名和密码。

Nacos——Nacos简介以及Nacos Server安装

 将下段语句复制到上面的文件当中

 spring.datasource.platform=mysql
 
db.num=1
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true 
db.user=nacos_devtest
db.password=youdontknow

Nacos——Nacos简介以及Nacos Server安装

 如果上面这个语句不行的话,我们可以使用下面这个,比上面的配置多了一个时区serverTimezone=UTC,除此之外我也把数据库名改成nacos了,这个文件和MySQL中的数据库都改,因为我是用上面的那个时候一直给我报错“com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown database 'nacos_config'”,但是我修改之后发现没有了这个问题,至于什么原因我也不太清楚

spring.datasource.platform=mysql

db.num=1
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&serverTimezone=UTC&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=root
127.0.0.1:3306   因为在我本机上,所以是127.0.0.1,MySQL的端口号3306

  nacos_config         表示数据库名(我后来改成了  nacos)

   db.user 、db.password     表示数据库的用户名和密码  

重新启动nacos

Nacos——Nacos简介以及Nacos Server安装

 重新进入到网页,发现没有数据,因为我们数据库中是一个空表,所示没有数据,这是正常的Nacos——Nacos简介以及Nacos Server安装文章来源地址https://www.toymoban.com/news/detail-450818.html

到了这里,关于Nacos——Nacos简介以及Nacos Server安装的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Nacos(一):简介 如何安装 服务注册与发现 集群 权重 与Eureka区别

    当服务调用越来越多,服务的地址需要管理起来,并实现动态调用而不是硬编码在接口中。此时需要一个注册中心来帮助我们管理服务。    流程如下: 商品微服务注册IP和端口到注册中心 订单微服务先从注册中心获取到商品微服务的IP和端口 订单微服务中使用获取到的IP和

    2024年02月13日
    浏览(43)
  • Windows server 2016——SQL server 简介与安装

    作者简介:一名云计算网络运维人员、每天分享网络与运维的技术与干货。  公众号: 网络豆  座右铭:低头赶路,敬事如仪 个人主页: 网络豆的主页​​​​​ 目录  写在前面 介绍 一.数据库简介 1.使用数据库的必要性 2.数据库基本概念 (1)数据  (2)数据库与数据

    2024年02月11日
    浏览(27)
  • 【Docker】安装nacos以及实现负载均衡

    接下来看看由辉辉所写的关于Docker的相关操作吧 目录 🥳🥳Welcome 的Huihui\\\'s Code World ! !🥳🥳 前言 一.nacos单个部署 1.镜像拉取 2.创建nacos容器 一.nacos集群部署 1.创建nacos容器 2.访问nacos 3.创建集群 4.nginx部署 三.本篇问题 本节任务:完成nacos的单个部署以及集群部署 首先是需要

    2024年01月19日
    浏览(28)
  • 瑞萨RA&e2studio快速上手视频笔记 四、瑞萨RA2L1资料来源和jlink rtt打印

    https://www2.renesas.cn/cn/en/products/microcontrollers-microprocessors/ra-cortex-m-mcus/ra2l1-48mhz-arm-cortex-m23-ultra-low-power-general-purpose-microcontroller 1.1 DatasheetUser\\\'s Manual 1.2 Documentation 1.3 Software Tools 1.4 Sample Code 1.5 Boards Kits https://github.com/renesas 2.1 fsp 2.2 ra-fsp-examples 2.3 amazon-freertos 2.4 rx-driver-package htt

    2023年04月21日
    浏览(32)
  • Mac M系列芯片(M1/M2)Docker安装Nacos Server单机版

    本文基于Nacos2.1.2进行说明 DockerHub镜像仓库-nacos镜像 可以看到只有-slim版本有arm64版本,因此我们用v2.1.2-slim这个版本(笔者亲测v2.1.2的linux/amd64版本在M系列芯片上不可用,nacos启动会报错)。 注意版本是Tags前面有个v,不是2.1.2;Docker会根据CPU架构拉取对应的架构版本。 查看

    2024年02月05日
    浏览(45)
  • SpringCloud Alibaba(一)微服务简介+Nacos的安装部署与使用+Nacos集成springboot实现服务注册+Feign实现服务之间的远程调用+负载均衡+领域划分

    目录 一.认识微服务 1.0.学习目标 1.1.单体架构 单体架构的优缺点如下: 1.2.分布式架构 分布式架构的优缺点: 1.3.微服务 微服务的架构特征: 1.4.SpringCloud 1.5Nacos注册中心 1.6.总结 二、Nacos基本使用安装部署+服务注册 (一)linux安装包方式单节点安装部署 1. jdk安装配置 2. na

    2024年02月09日
    浏览(36)
  • 【微服务】在window下安装nacos以及可能遇到的问题

    介绍 这里是小编成长之路的历程,也是小编的学习之路。希望和各位大佬们一起成长! 以下为小编最喜欢的两句话: 要有最朴素的生活和最遥远的梦想,即使明天天寒地冻,山高水远,路远马亡。 一个人为什么要努力? 我见过最好的答案就是:因为我喜欢的东西都很贵,

    2024年02月13日
    浏览(32)
  • docker的安装,以及通过docker拉取nacos镜像和启动

    docker是一个镜像容器引擎,他可以将我们的应用和相关的依赖打包到一个容器中。这种打包会将对应的应用依赖的一些系统底层依赖一并打包进去,这样应用可以避免因为一些系统版本不同的原因导致应用运行失败的问题。docker各个容器之间互相独立,不会相互影响。这点依

    2024年04月11日
    浏览(28)
  • 数学建模-------误差来源以及误差分析

    绝对误差 :精确值-近似值; 举个例子:从A到B,应该有73千米,但是我们近似成了70千米;从C到D,应该是1373千米,我们近似成了1370千米,如果使用绝对误差,结果都是3,显然无法衡量我们误差的大小,这个时候我们引入了相对误差; 相对误差 :精确值-近似值/精确值;我

    2024年03月10日
    浏览(42)
  • Altium Designer简介以及下载安装

    阅读引言: Altium Designer的离线安装包在文章最后, 注意该软件只能用于个人的学习使用, 不能用于商业用途, 文章主题图片来自网络。 Altium Designer是一款功能强大的电子设计自动化(EDA)软件,用于设计和开发Printed Circuit Board(PCB)和FPGA(Field-Programmable Gate Array)电路。

    2024年01月18日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包