SpringCloudAlibaba-----Nacos(最全学习笔记 单体--集群)

SpringCloudAlibaba实战(三):Kubernetes Nacos   参考Nacos官网在Kubernetes上部署StatefulSets类型的Nacos(单机/集群)。 快速开始   为了理解各类参数的意义和用法,对nacos镜像内配置文件和启动脚本进行分析。 1.Clone 项目 git clone https://github.com/nacos-group/nacos-k8s.git 2.镜像说明   查看YAMlw文件可知官方教程使用的初始化容器镜像是:nacos/nacos-peer-finder-plugin:1.0,镜像则是:nacos/nacos- 阅读详情

一、下载安装

进入官网,下载zip包,这里演示windows下的运行及启动

二、启动

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

进入bin目录,输入cmd,回车,然后执行命令startup.smd 命令进行启动。
启动成功后,在页面输入localhost:8848/nacos ,登录名和密码都是nacos

在这里插入图片描述
注意:这里可能会报错,下面是解决办法
错误1:db.num is null
解决方法:在本地mysql创建一个名为 nacos的数据库,然后执行 conf文件下的 nacos-mysql.sql文件。
修改application.properties文件,主要修改用户名和密码
在这里插入图片描述
错误2:Unable to start embedded Tomcat
解决方法:修改bin目录下startup.cmd文件,改为单机版启动
在这里插入图片描述

三、引入依赖

四、服务注册与发现

1.配置bootstrap.yml文件
server:
  port: 3377

spring:
  application:
  # 服务名
    name: nacos-config-client
  cloud:
    nacos:
      discovery:
      #nacos地址
        server-addr: localhost:8848
      config:
        server-addr: localhost:8848
        file-extension: yml

2.配置application.yml文件
spring:
  profiles:
    active: dev
3.在nacos创建配置文件

命名规范:$ {prefix}-$ {spring.profiles.active}.${file-extension}
例:下面这个就会去nacos找名为 nacos-config-client-dev.yml 的配置文件
在这里插入图片描述在nacos控制台,localhost:8848/nacos,创建配置文件
在这里插入图片描述
上面使用的是默认的命名规范来找配置文件的,也可以指定查找,方法如下

1.可以设置分组名,设置后,就会在该分组下查找默认命名规范的配置文件,不设置分组名就会去默认分组(DEFAULT_GROUP)下查找

在这里插入图片描述

2.可以设置namespace

默认是只有一个public命名空间的,也可以自己新增,每个命名空间都有自己唯一的ID,在yml中配置该ID即可指定是哪个命名空间下的。
在这里插入图片描述
在这里插入图片描述

// A code block
var foo = 'bar';
4.启动

启动后可观察控制台信息
在这里插入图片描述

Nacos集群和持久化配置

Nacos支持三种部署模式
1.单机模式
2.集群模式 - 用于生产环境,确保高可用
3.多集群模式 - 用于多数据中心场景

1.单机模式
上面演示的就是单机模式,不再概述

2.集群模式
注意:上面我们自己配了mysql数据源,如果不配置的话,nacos会使用内嵌的derby数据库来存储信息的

集群模式搭建

1 下载tar包

https://github.com/alibaba/nacos/releases/tag/1.1.4

2 在linux上解压并安装Nacos

cd /opt
tar -zxvf tar包
解压后有一个nacos文件夹
在这里插入图片描述

这里我copy到一个文件夹中进行操做
cp -r nacos /mynacos/nacos1

3.下载并安装mysql

这里就引用别人的博客了
链接: 安装及步骤地址.
注意:该博客中到下面一步可能会报错,下面这个博客是解决办法
在这里插入图片描述
链接: 报错解决地址.

4.执行nacos/conf下的nacos-mysql.sql 脚本文件到mysql下的nacos_config数据库里

执行后可看到库里有这些表:
在这里插入图片描述

5.修改nacos/conf/ applicaytion.properties文件

在修改前一般都要保存一份原始的
cd /mynacos/nacos1/conf
cp application.properties application.properties.bk
vi application.properties
在该文件里面添加下面这些信息

spring.datasource.platform=mysql

### Count of DB:
db.num=1

### Connect URL of DB:
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true
&useSSL=false&serverTimezone=UTCdb.user.0=root
db.password.0=123456
6.配置集群配置文件

conf目录下自带这一个文件cluster.conf.example ,这个就是用来做集群配置用的
我们copy一份进行操作,自带的文件保留
cp cluster.conf.example cluster.conf
在这里插入图片描述
这里面主要配置nacos集群的ip及端口,这里的ip不能写127.0.0.1必须是linux命令能识别的ip
可以用这个命令查看 hostname -i
在这里插入图片描述
执行命令并填入下面这些值,vi cluster.conf
在这里插入图片描述

7.修改配置集群命令启动

修改这个文件是为了能够用 startup.sh -p 3333 startup.sh -p 4444 startup.sh -p 5555 这种形式启动
进入bin目录,老规矩保存原来的文件
copy startup.sh startup.sh.bk
修改下图标出来的内容 vi startup.sh
在这里插入图片描述在这里插入图片描述
看不清的话内容如下在这里插入图片描述

8.启动,及查看是否启动成功

注意:需要配有java环境

./startup.sh -p 3333

./startup.sh -p 4444

./startup.sh -p 5555

检查是否启动成功可以去 log/start.out 日志进行查看

tail -f /logs/start.out

启动成功:
在这里插入图片描述

这里可能会报错,下面是报错及解决方法
1.运行内存不足
在这里插入图片描述
解决方法:修改jvm参数
vi /bin/start.sh
修改前:
在这里插入图片描述
修改后:
在这里插入图片描述
:wq 退出保存
然后重新启动

9.进入控制台进行查看

ip是你自己虚拟机的ip,查看是 hostname -i
ip:3333/nacos
用户名和密码都是 nacos
在这里插入图片描述

到这里集群的配置就完成了!但是!你的项目的配置文件怎么去指呢?指到3333?4444?5555?不行!这样还是相当于是单机版,所以这里就要通过nginx去进行转发,从而达到负载均衡的效果

在这里插入图片描述

来整起!

一、配置nginx转发
1.安装nginx

具体安装参考其他博客啊,这里就不写了

2.修改nginx.conf文件

在这里插入图片描述
在这里插入图片描述
这里主要是配置转发,配置如下,增加如下内容:
在这里插入图片描述
3.启动nginx
./ nginx
4.浏览器输入 ip:80 检查nginx是否正常启动
在这里插入图片描述

二、项目中配置nacos地址

注意:这里配的地址就是nginx里配置的地址ip:1111
修改上面windows时候讲的项目里的配置进行测试:
在这里插入图片描述

三、启动项目观察结果

访问ip:1111/nacos ,可以看到服务成功的注册进来了!
在这里插入图片描述

到这里就学完啦!还有一些概念我就放到最下面了,面试会用到哦~

概念篇:

1.Nacos由三个值来定位,NameSpece,Group, DataId

2.Nacos支持AP和CP模式的切换

3.在项目初始化的时候,要保住先从配置中心进行配置拉取,拉取配置之后,才能保证项目的正常启动,因此要写在bootstrap.yml文件中。
springboot中配置文件的加载是存在优先级顺序的,bootstrap优先级高于application

4.心跳机制:在微服务框架中,我们利用注册中心统一对各个服务进行管理,这时,就需要知道各个服务的健康状态,也就是各个服务定时发送一个自定义的结构体(心跳包)到注册中心,让对方知道自己还活着,以确保连接的有效性的机制。

nacos-server-2.0.4.tar.gz linux操作系统的nacos2.x .tar.gz包 nacos-server-2.0.4.tar.gz 立即下载

相关推荐

nacos-server-1.4.1.tar.gz 安装包下载

1.4.1版本下载 Linux macOS Windows均支持 下载位.zip文件 解压后即可得到安装包

Nacos安装指南:windows版本、linux版本

开发阶段采用单机安装即可。

aa35434的博客 2536

Seafile搭建以及onlyoffice在线办公

部署seafile docker-compose.yml 如下: 参考此篇文章 version: '2.0' services: db: image: mariadb:10.1 container_name: seafile-mysql environment: - MYSQL_ROOT_PASSWORD=db_dev # mysql root的密码,同时修改 seafile的DB_ROOT_PASSWD与这个一致 - MYSQL_LOG_CONSOLE

dwdcth的专栏 4655

CentOS安装配置Nacos2.0.3版本

Nacos JDK1.8 CentOS

奔跑的蜗牛 5002

网站进行企业微信授权登录(附带代码超详细版)

企业微信的扫码登录官方文档 https://work.weixin.qq.com/api/doc/90000/90135/90988 企业微信扫码登录认证流程 上面是官方的图片,看上去比较复杂。因此我用直白简洁的语言梳理下流程。 1、首先在自己的网站上获取到企业微信登录的二维码(二维码怎么获取稍后再说,这里想象下你已经有了一个二维码) 2、你拿着手机扫描二维码,确认登录之后,页面就会自己进行重定向的跳转,跳转的url如何配置下面再讲,但是注意,这个重定向的url可以是内网地址 3、重定向到指

Gzf的博客 1万+

Sentence-BERT 语义相似度双塔模型

论文介绍 发表:2019,EMNLP 论文题目:《Sentence-BERT:sentence embeddings using siaese BERT-networks》 论文地址:https://arxiv.org/abs/1908.10084 Github:https://github.com/UKPLab/sentence-transformers 适用领域: 句向量生成 语义相似度计算 语义搜索 无监督任务(聚类) 1 概述 在20年之前的各种预训练模型中,比如bert,XLNet,Alb

weiyaner的博客 9192

部署nacos2.2.3单机版(详细步骤)

nacos2.2.3部署并整合到SpringBoot

阿木木AEcru的博客 1469

PADS Layout差分对布线实战:从规则设置到高速信号优化

本文详细讲解了在PADS Layout中进行差分对布线的完整实战流程。从在Layout中定义差分对网络,到进入Router配置线宽、间距等关键规则,再到布线实战技巧与高速信号完整性优化,系统阐述了如何确保差分信号(如USB、HDMI)的稳定传输,是高速PCB设计的核心技能。

weixin_29274969的博客 520

微服务之Spring Cloud Alibaba Nacos基础学习

文章主要介绍了Spring Cloud Alibaba以及比较流行的组件Nacos的简单介绍以及基本使用,作为个人在SpringCloud学习过程中的知识总结,其中还有一些学习中的踩坑总结,相对基础,可供参考。

Young_深情不及里子的博客 2121

QML实现ListView的拖动排序

现有一种需求,就是用鼠标拖动某项,动态去改变某一项在ListView中显示的顺序位置,经过研究及实践实战,实现方式的核心代码如下: import QtQuick 2.4 import QtQuick.Controls 1.3 import QtQuick.Window 2.2 import QtQuick.Dialogs 1.2 Rectangle { width: 800 ...

草上爬的博客 7562

【YOLOv11改进 - 特征融合】DySample :超轻量级且高效的动态上采样器

【YOLOv11改进 - 特征融合】DySample :超轻量级且高效的动态上采样器

专注于图像领域,主要研究内容包括计算机视觉和深度学习,特别是在图像分类、目标检测和图像生成等方面有深入的研究和实践经验。 1069

SpringBoot 单体服务集成nacos

SpringBoot 单体服务集成nacos

weixin_44647098的博客 1818

基于MATLAB的变分模态分解(VMD)算法详解

变分模态分解(VMD)是一种先进的信号处理方法,通过变分框架将复杂信号分解为多个模态分量。相比传统经验模态分解(EMD),VMD具有坚实的数学基础,能有效抑制模态混叠和端点效应。其核心思想是将信号分解转化为约束优化问题,通过交替方向乘子法迭代求解各模态的中心频率和带宽。VMD在机械故障诊断、生物医学信号处理等领域展现出优越性能,尤其适合处理非平稳非线性信号。该算法通过严格的数学模型实现自适应频谱优化,为信号分析提供了更可靠的工具。

qq_42212808的博客 735

基于SpringCloudAlibaba+Nacos的集群管理设计

胡弦,视频号2023年度优秀创作者,互联网大厂P8技术专家,Spring Cloud Alibaba微服务架构实战派(上下册)和RocketMQ消息中间件实战派(上下册)的作者,资深架构师,技术负责人,极客时间训练营讲师,四维口袋KVP最具价值技术专家,技术领域专家团成员,2021电子工业出版社年度优秀作者,获得2023电子工业出版技术成长领路人称号,荣获2024年电子工业出版社博文视点20周年荣誉专家称号。

huxian1234的专栏 1274

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

SpringCloudAlibaba微服务远程调用之Nacos篇—Nacos的安装、服务注册、服务集群配置、配置负载均衡策略、配置命名空间与非临时实例、nacos集群配置、nacos与feign的结合

本文主要是通过结合实例进行针对nacos的安装,项目、环境、服务集群。nacos集群的配置,以及如何使用nacos并通过RestTemplate或者使用openfeign实现服务的远程调用,废话不多说,直接开始一、基础项目导入。

weixin_64339548的博客 3590

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

SpringCloudAlibaba实战-nacos集群部署

在学习阶段,我们想快速学习SpringCloudAlibaba功能,但总是花费大量时间跟着视频或博客做组件配置。由于版本的更迭,我们学习时的组件版本很可能和作者的不一致,又或者是各自环境不一,只能一坑又一坑的踩。因此,本篇博客针对这一痛点,进行nacos集群部署记录。关于nacos的理论知识,以及单机版部署网上前人之述足矣。

習習君的博客 957

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

基于SpringCloudAlibaba+Nacos的集群多副本设计

胡弦,视频号2023年度优秀创作者,互联网大厂P8技术专家,Spring Cloud Alibaba微服务架构实战派(上下册)和RocketMQ消息中间件实战派(上下册)的作者,资深架构师,技术负责人,极客时间训练营讲师,四维口袋KVP最具价值技术专家,技术领域专家团成员,2021电子工业出版社年度优秀作者,获得2023电子工业出版技术成长领路人称号,荣获2024年电子工业出版社博文视点20周年荣誉专家称号。

huxian1234的专栏 1418

SpringCloudAlibaba集成Nacos

nacos的配置管理和服务的注册与发现

ZhAoYaJ的博客 2314

SpringCloudAlibaba→Nacos:集群

Nacos集群和持久化配置Linux版Nacos+MySQL生产环境配置1、Nacos下载linux版本2、集群配置步骤3、测试高可用小结 Linux版Nacos+MySQL生产环境配置 需要,1个nginx+3个nacos注册中心+1个mysql 1、Nacos下载linux版本 https://github.com/alibaba/nacos/releases/tag/1.1.4 下载后然后解压 2、集群配置步骤 1.Linux服务器上mysql数据库配置: 在解压后的nacos文件夹下的conf里

Hello World 655

SpringCloudAlibaba-微服务-注册中心之Nacos安装启动与集群配置

如要更改,在 nacos\conf\application.properties 中找到 server.port 更改即可。由于 nacos 默认以集群模式启动,双击 nacos\bin 目录下的 startup.cmd 即可启动。服务启动后,cluster.conf 会被添加一个真实 ip 地址,端口号与当前节点配置的相同。在 nacos\conf 目录中提供了有 nacos-mysql.sql 脚本。我们在自己的 MySQL 中,新建 nacos 数据库,执行脚本即可。

Cey_Tao的博客 3275

springCloudAlibaba之Nacos集群搭建手册

springAlibaba之nacos集群搭建nacos集群简单启动流程集群搭建背景知识傻瓜式搭建手册价值观传递: 让知识通过分享产生价值 nacos集群简单启动流程 你好! 记载一次简单的搭建nacos集群的步骤(已实现),希望通过分享让学者门快速搭建nacos伪集群 集群搭建背景知识 Nacos的单节点,也就是我们最开始使用的standalone模式,配置的数据是默认存储到内嵌的数据库derby中。 如果我们要搭建集群的话,那么肯定是不能用内嵌的数据库,不然数据无法共享。集群搭建的时候我们需要将Naco

caopengyuan的博客 464

SpringCloudAlibaba之Nacos

SpringCloudAlibaba之Nacos 测试环境搭建 1.1 创建提供者程 工程 01-provider-8081 (1)创建工程 创建一个 Spring Initializr 工程,并命名为 01-provider-8081。导入 Lombok、Web、JPA 及MySQL 驱动依赖。 (2)导入Druid依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</

u010156553的博客 604

SpringCloudAlibaba-Nacos集群

Windows搭建nacos集群

weixin_46899412的博客 807

SpringCloudAlibaba-Nacos

SpringCloudAlibaba -Nacos EndPoint 服务端点 spring-cloud-starter-alibaba-nacos-discovery 在实现的时候提供了一个EndPoint 服务端点。可以通过访问 http://localhost:port/actuator/nacos-discovery 获得关于某个端口下的服务的相关信息。 subscribe: 显示了当前有哪些服务订阅者 NacosDiscoveryProperties: 显示了当前服务实例关于Nacos的基础配

qq_47815451的博客 2961

SpringCloudAlibaba:Nacos的集群部署

SpringCloudAlibaba:Nacos的集群部署 根据官方文档的介绍,Nacos的集群架构大致如下图所示(省略了集中化存储信息的MySQL): 集群搭建 1.环境准备 192.168.31.100:80 jdk1.8 mysql nginx 192.168.31.100:8848 jdk1.8 nacos 192.168.31.100:8849 jdk1.8 nacos 192.168.31.100:8850 jdk1.8 nacos 注意:这里的例子仅用于本地学习测试使用,实际生产

拒绝熬夜啊的博客 1675
上一篇: SpringSecurity学习第一讲(自定义配置类,登录逻辑)
下一篇: Nginx学习笔记(下载、安装、反向代理、负载均衡、高可用集群配置、原理)
Sonk.
博客等级 码龄8年 84粉丝 83原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Sonk.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值