Nacos 安装部署

微服务学习之——nacos安装部署 最详细的centos环境下nacos的部署 阅读详情

简介

Nacos 支持如下核心特性:

1)服务发现: 支持 DNS 与 RPC 服务发现,也提供原生 SDK 、OpenAPI 等多种服务注册方式和 DNS、HTTP 与 API 等多种服务发现方式。
2)动态配置服务: Nacos 提供配置统一管理功能,能够帮助我们将配置以中心化、外部化和动态化的方式管理所有环境的应用配置和服务配置。
3)服务健康监测: Nacos 提供对服务的实时的健康检查,阻止向不健康的主机或服务实例发送请求。
4)动态 DNS 服务: Nacos 支持动态 DNS 服务权重路由,能够让我们很容易地实现中间层负载均衡、更灵活的路由策略、流量控制以及数据中心内网的简单 DNS 解析服务。
5)服务及其元数据管理: Nacos 支持从微服务平台建设的视角管理数据中心的所有服务及元数据,包括管理服务的描述、生命周期、服务的静态依赖分析、服务的健康状态、服务的流量管理、路由及安全策略、服务的 SLA 以及最首要的 metrics 统计数据

常见的注册-配置中心

活跃情况配置注册
Eureka原生,2.0遇到瓶颈,停止维护XO
Spring Cloud Confifig只支持git基础上的配置OX
Zookeeper专业的独立产品。例如:dubboOO
Consul原生,GO语言开发XO
Nacos国内比较活跃,已经取代Eureka和ConfifigOO
Apollo在Nacos之前动态配置最活跃和完善的组件OO

从配置中心角度来看,性能方面Nacos的读写性能最高,Apollo次之,
Spring Cloud Confifig依赖Git场景不适合开 放的大规模自动化运维API,而Spring Cloud Confifig不带运维管理界面,需要自行开发
功能方面Apollo最为完善,nacos具有Apollo大部分配置管理功能。Nacos的一大优势是整合了注册中心、配置中心功能,部署和操作相比 Apollo都要直观简单,因此它简化了架构复杂度,并减轻运维及部署工作

在K8S中服务注册功能已经不再依赖于Nacos等注册服务,以上组件只剩下配置中心的作用,服务发现和心跳检测已经完全由K8S承担。

下载和基本配置sql信息

从nacos官网 https://nacos.io/zh-cn/index.html 下载安装包
1.创建数据库nacos,并设置字符集utf8
2.执行/nacos/conf/nacos-mysql.sql中的语句,创建表,并插入数据
3.修改/nacos/conf/application.properties文件,如下

spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://localhost:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=123456

启动-单机部署

centos

cd  /nacos/bin
sh startup.sh -m standalone

windows

cd  /nacos/bin
startup -m standalone

如果直接双击,非如上命令模式启动,会报如下异常
nacos Caused by: java.net.UnknownHostException: jmenv.tbsite.net

集群部署

cp conf/cluster.conf.example conf/cluster.conf

需要配置3个或3个以上节点,生产环境建议分布在多台服务器上,目前咱们仅在一台机器上测试。

vi conf/cluster.conf

127.0.0.1:8848
127.0.0.1:8849
127.0.0.1:8850

在一台机器上跑三个节点

因此启动脚本和关闭脚本需要做一点修改

cp bin/startup.sh bin/startup-port.sh

vi bin/startup-port.sh

## 修改sh脚本
export MODE="cluster"
export FUNCTION_MODE="all"
export SERVER_PORT="8848"
while getopts ":m:f:p:" opt
do
    case $opt in
        m)
            MODE=$OPTARG;;
        f)
            FUNCTION_MODE=$OPTARG;;
        p)
            SERVER_PORT=$OPTARG;;
        ?)
        echo "Unknown parameter"
        exit 1;;
    esac
done
JAVA_OPT="${JAVA_OPT} -Dserver.port=${SERVER_PORT}"

修改关闭服务脚本

cp bin/shutdown.sh bin/shutdown-port.sh
vi bin/shutdown-port.sh

PORT=$1
if [ ! $PORT ]; then
  echo "please select stop port!" >&2
  exit 1
fi
 
pid=`ps ax | grep -i 'nacos.nacos' |grep java |grep ${PORT} | grep -v grep | awk '{print $1}'`

启动和关闭

默认方式启动是集群模式

sh bin/startup-port.sh ##默认集群模式
sh bin/startup.sh -m standalone #单机模式

单机多节点下-启动方式如下:

sh bin/startup-port.sh -p 8848 

单机多节点下-关闭方式如下:

sh bin/shutdown-port.sh 8848

浏览器控制台

启动后就可以在浏览器打开 http://127.0.0.1:8848/nacos/
即可看到控制台,默认用户名/密码为nacos/nacos。

运维

负载均衡

附1: 可通过Nginx配置只访问一个地址负载均衡到三个节点上:

upstream nacos-cluster{
    server 127.0.0.1:8848;
    server 127.0.0.1:8849;
    server 127.0.0.1:8850;
}

密码修改

附:集群模式下控制台的用户名密码都存在了数据库的users表,用户名直接修改就行,密码需要用org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder加密

配置中心:命名空间Namespace和分组

在这里插入图片描述
Nacos 引入命名空间 Namespace 的概念来进行多环境配置和服务的管理及隔离。例如,你可能存在本地开发环境dev、测试环境test、生产环境prod 三个不同的环境,那么可以创建三个不同的 Namespace 区分不同的环境

在这里插入图片描述

# 对应创建的命名空间的ID,此处对应的是dev命名空间
spring.cloud.nacos.config.namespace=483bb765-a42d-4112-90bc-50b8dff768b3

业务隔离-Group分组:

Group 也可以实现环境隔离的功能,但 Group 设计的目的主要是做同一个环境中的不同服务分组,把不同的微服务的配置文件划分到同一个分组里面去,Nacos 如果不指定 Group,则默认的分组是 DEFAULT_GROUP。

如果没有 Group,试想一下这个场景:
在DEV环境中有两个微服务,一个是订单系统,一个是用户系统,但是他们有着相同Msql依赖但是使用不同的数据库地址的配置,比如 datasource-url,那么如何区分呢?
这时候 Group 就派上用场了。上述场景中订单系统、用户系统可以单独分为一个组,比如 ORDER_GROUP、USER_GROUP,当然这是比较细粒度的分组,根据企业的业务也可以多个微服务分为一组。

没个不同服务配置不同的分组

spring.cloud.nacos.config.group=ORDER_GROUP

Data ID 的命名格式

新建一个 DataID 为 cloud-producer-server-dev.yaml 的数据集
那么 Data ID 怎么取值呢?格式通俗一点就是 “前缀-环境-扩展名”,如下所示:

${spring.cloud.nacos.config.prefix}-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}

在项目中一般也由这些配置来动态确定唯一的配置文件

prefix:前缀,默认是 spring.application.name 的值,也可以通过配置项 spring.cloud.nacos.config.prefix 来配置。

# 若不指定,默认采用应用名的方案
spring.application.name=cloud-producer-server
 
# 手动指定配置的dataID前缀标识
# spring.cloud.nacos.config.prefix=cloud-producer-server-config

active:配置运行环境,即为当前环境对应的 profile。
注意:当 spring.profiles.active 为空时,对应的连接符 ”-“ 也将不存在,dataId 的拼接格式变成 p r e f i x . {prefix}. prefix.{file-extension}

# dev表示开发环境
spring.profiles.active=dev

file-exetension:配置文件的类型,默认是 properties,也可以通过配置项 spring.cloud.nacos.config.file-extension 来配置,目前支持的类型有 TEXT、JSON、XML、YAML、HTML、Properties

# 指定配置文件类型为yaml文件
spring.cloud.nacos.config.file-extension=yaml

springcloud.nacos配置

spring:
  profiles:
    active: test
  application:
    name: @project.name@
  cloud:
    nacos:
    #nacos服务地址
      addr: @nacos.url@
      discovery:
        server-addr: ${spring.cloud.nacos.addr} #和nacos的地址一样
        namespace: ${nacos.group.id}
        group: DEFAULT_GROUP
        service: ${project.name}${_use-local:}
      config:
        prefix: ${project.name}
        namespace: ${nacos.group.id}
        group: DEFAULT_GROUP
        server-addr: ${spring.cloud.nacos.addr}
        file-extension: yaml
        enabled: true
        #配置多个配置文件可以使用[0],[1]
        shared-configs[0]:
          data-id: redis.yml  #共用配置
          # 默认为DEFAULT_GROUP
          group: PUBLIC
          ## 是否动态刷新,默认为false
          refresh: true
        shared-configs[1]:
          data-id: application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
          # 默认为DEFAULT_GROUP
          group: DEFAULT_GROUP
          ## 是否动态刷新,默认为false
          refresh: true
Docker之nacos集群部署(详细教你搭建) 在/home/mysql目录下新建两个文件夹,一个叫data另一个叫conf命令形式因为当mysql容器进行关闭后,再次打开时,mysql容器的端口号可能会进行改变3306–netmynet--ip172.18.1.30(这是mysql的ip,下面会进行创建两个服务,必须在同一网段下)-dmysql8.0.27。... 阅读详情

相关推荐

【微服务-Nacos】手把手教你Nacos集群部署,不会的来找我!

前面我们介绍了Nacos单机部署和微服务接入Nacos注册中心的操作步骤,但单机部署是分布式应用的大忌,在分布式架构中,任何单点都可能成为系统的瓶颈。因此关于Nacos部署,通常都是采用集群部署来为系统带来高可用性。这里我们来介绍下Nacos的集群部署。

我爱娃哈哈的专栏 7926

史上最全的Nacos 介绍和部署

前言什么是微服务一、nacos 概述1.1 nacos 简介1.2 Nacos 核心特性1.2.1 服务发现1.2.2 服务健康监测1.2.3 动态配置服务1.2.4 动态DNS服务1.2.5 服务及其元数据管理1.3 组件介绍1.4 nacos 的架构图二、主流的配置中心三、Nacos与其他注册中心的区别3.1 Nacos和Eurek、apollo的区别3.2 注册中心的原理四、Nacos 搭建4.1 nacos的结构图4.2 nacos 单机部署。

qq_31532979的贺公子之数据科学与艺术博客,致力于科技向善,拥抱开源,要用技术的影响力来领导团队,而不是威权和职位! 6757

Linux 上安装部署Nacos、Docker 创建Nacos容器

通过按照上述步骤,在Linux操作系统上安装和部署Nacos是相对简单的。Nacos作为一个功能强大的服务发现和配置管理平台,可以帮助开发人员更好地构建和管理微服务架构。在安装完成后,您可以通过Nacos的控制台来管理服务实例、配置信息等内容,从而为您的微服务架构提供更好的支持。Nacos是一个开源的分布式服务发现和配置管理平台,它可以帮助开发人员实现微服务架构中的服务注册、发现和动态配置管理。您将被引导到Nacos的Web界面,可以在此界面中管理服务实例、配置和命名空间等内容。

weixin_50667675的博客 2827

Nacos学习之初识Nacos

在分布式项目中既然存在Eureka这个注册中心,那么Nacos有充当什么角色?Nacos到底是个啥?他又是咋么下载安装的?本文我会将从什么是Nacos、Nacos与其他注册中心的区别、Nacos的下载安装、目录结构以及外部数据库的配置等方面进行阐述,一起往下看吧!

Willing卡卡的博客 3975

Nacos安装部署方案(超详细)

本文详细介绍了Nacos的安装部署方案,包括环境准备、下载与解压、数据库配置、单机版与集群版的安装部署、高级配置与优化、备份与恢复、监控与告警以及升级与迁移等方面的内容。通过本文的指导,读者可以轻松地搭建并维护一个稳定、高效的Nacos服务环境。需要注意的是,本文提供的配置信息和步骤可能需要根据具体的服务器环境和业务需求进行调整。因此,在实际操作中,请务必仔细阅读Nacos的官方文档,并根据实际情况进行相应的配置和优化。

专业深耕,技术前沿 1368

Nacos 集群部署安装步骤

Nacos 集群部署安装步骤; linux系统安装步骤: 环境配置: 1、JDK; 2、Git; 3、Maven; 以三台服务器为例子: 1、第一台服务器上: 编译nacos: 下载nacos-server-1.4版本源码; git clone https://github.com/alibaba/nacos.git cd nacos mvn -Prelease-nacos-Dmavem.test.skip=true clean install -U ls -al distribution/target/

qq_37521174的博客 2152

Nacos之安装部署

Nacos 的安装可以根据需求选择不同的方式,包括本地安装、Docker 安装和Kubernetes 部署。下面将介绍几种常见的安装方式。

youziguo的专栏 3295

Nacos简介、安装部署和配置优先级

Nacos/nɑ:kəʊs/的全称为Dynamic Naming and Configuration Service,它是阿里开源的一个整合了动态服务发现、配置管理和服务管理的基础服务平台。服务(Service)是Nacos世界的一等公民,它提供了服务注册与发现、配置管理、动态 DNS服务、服务元数据及流量管理等功能,用于满足微服务架构和云原生应用的需求。其关键特性如下:服务注册与发现:Nacos 支持多种服务注册发现,包括基于DNS、基于RPC和基于K8s的服务发现。

BlogPan的专栏 3706

Kubernetes中安装部署Nacos集群

官方下载的nacos-server-1.2.1.zip包需要经过处理下:修改配置、加入docker-startup.sh启动脚本。

weixin_39941298的博客 2250

Windows环境下Nacos安装与部署全攻略:从零开始的详细教程

本文详细介绍了在Windows系统上安装和部署Nacos的全流程,涵盖环境准备、下载与安装、配置以及启动等关键步骤。首先,确保系统已安装JDK并正确配置环境变量,同时可选安装MySQL以支持持久化存储。接着,从Nacos官方GitHub页面下载最新版本压缩包并解压至目标目录。通过修改`application.properties`文件完成数据库连接和日志路径配置,并根据硬件性能调整JVM参数。使用`startup.cmd -m standalone`命令以单机模式启动Nacos服务

洛阳泰山的博客 1万+

Blender建模:对于模型布线的一些思考

Blender布线中一些问题的总结和思考,主要讲述原理和解决方法。

baidu_38797690的博客 1821

Nacos 安装与部署

Nacos 安装与部署

Leon_Jinhai_Sun的博客 1368

基于51单片机的智能花盆灌溉系统设计与实现

本文详细介绍了基于51单片机的智能花盆灌溉系统设计与实现,通过DS18B20温度传感器、土壤湿度传感器和LCD1602显示屏等硬件模块,结合精确的算法控制,实现自动监测与灌溉。系统解决了传统灌溉依赖定时器、缺乏可视化界面的问题,适合上班族、园艺爱好者和植物园工作人员使用,有效提升植物养护效率。

honey的博客 1014

Linux之docker安装部署nacos集群

文章目录docker安装部署nacos集群1.镜像拉取2.参数说明启动nacos命令访问nacos docker安装部署nacos集群 前提条件 三台服务器ip:192.168.56.102、192.168.56.105、192.168.56.106 安装好docker环境(教程:Linux的centos7安装docker) 1.镜像拉取 docker pull nacos/nacos-server:1.4.0 2.参数说明 参数名 描述 选项 MODE 集群/独立 cluster/st

binggoling 2126

Ad hoc网络路由协议概述4——按需路由协议(2)AODV协议 (Ad-hoc on-demand distance vector algorithm protocol)

AODV协议的基本流程。

weixin_42982240的博客 7705

VTK API 详解(134):vtkOBJWriter - 写入 OBJ 模型

是 VTK 中用于将数据写入 Wavefront OBJ 文件格式的类。OBJ 格式是广泛支持的 3D 网格模型格式,支持顶点、面和基本几何信息的保存,便于模型在多种三维软件间交换。

yumeiguo的博客 140

nacos安装部署

最近在学习nacos,也申请了阿里云服务,顺便把安装操作记录一下 相关学习网站 源码下载地址https://github.com/alibaba/nacos/ 下载安装包https://github.com/alibaba/Nacos/releases 官方文档https://nacos.io/zh­cn/docs/deployment.html 1、下载安装包,针对linux环境,官方网站上下载一般比较慢,推荐网盘共享文件,版本nacos-server-...

dysfzhoulong 2915

详解AUTOSAR:AUTOSAR架构中的配置文件(拓展篇—7)

查看AUTOSAR代码包时会发现一些这样格式的文件:xxx_PBcfg.c、xxx_Lcfg.c和xxx_Cfg.h,本篇博文讲一讲这几个配置文件的作用和特点。

不脱发的程序猿 2146

nacos详细安装部署与异常排解

nacos 详细安装与部署 官网链接:https://nacos.io/zh-cn/docs/quick-start.html 一、预备环境准备 OS windows 10 java 1.8.0_144 maven Apache Maven 3.5.3 nacos版本 Nacos 1.4.2-SNAPSHOT mysql mysql 版本 Nacos 自带sql支持性 5.5.* 不支持 5.7.* 支持 规模及部署模式 单机;standalone 二、安装 安装方式分

dbc_zt的博客 2096

2020计算机专业保研夏令营面经:中科院计算所网数机试题目

计算所网络数据科学与技术重点实验室的第一阶段是机试。机试不限程序语言,要求提交源代码。

乔卿的博客 2957

基于Simulink的异步电机参数在线辨识与自适应控制仿真

本文基于Simulink平台,详细介绍了异步电机参数在线辨识与自适应控制系统的仿真实现。针对异步电机运行中参数时变问题,采用模型参考自适应系统(MRAS)实时辨识转子电阻和互感,并结合自适应PI控制策略动态调整控制器参数。通过搭建完整的矢量控制(FOC)仿真模型,验证了系统在稳态辨识、参数摄动和动态响应等工况下的性能:参数辨识误差<1.2%,转速跟踪误差<20rpm,动态响应时间<10ms。文章还提供了详细的Simulink建模步骤、核心代码实现及性能分析,为高级电机控制系统的设计与优化提

amy_mhd的博客 72

Windows安装部署nacos

Windows安装部署nacos

lza20001103的博客 9053

【图像去噪】基于加权核范数最小化算法实现图像去噪附matlab代码

1 简介 WNNM是一种约束矩阵奇异值稀疏性的低秩算法,在NNM理论基础上增加了核范数权重,有效利用了自然图像的先验信息并提高了核范数的灵活性. 2 部分代码 ​clcclear allclose allnSig = 100;O_Img = double(imread('Monarch.png'));​randn('seed', 0);N_Img = O_Img + nSig* randn(size(O_Img)); ..

qq_59747472的博客 3114

【Nacos】安装与部署

Nacos服务器是独立安装部署的,因此我们需要下载最新的Nacos服务端程序,下载地址:https://github.com/alibaba/nacos,表示单节点模式,Mac和Linux下记得将解释器设定为。至此,Nacos的安装与部署完成。默认的用户名和管理员密码都是。

初听不知曲中意,再听已是曲中人。 7082

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

上一篇: Feign动态设置header
下一篇: K8S装机
牧竹子
博客等级 码龄17年 572粉丝 233原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值