nacos升级到2.0.3(单机模式)
前提:https://github.com/alibaba/spring-cloud-alibaba/wiki/版本说明
Spring Cloud Alibaba | Spring Cloud | Spring Boot | Nacos |
2.2.7.RELEASE | Spring Cloud Hoxton.SR12 | 2.3.12.RELEASE | 2.0.3 |
一、pom.xml文件
<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.3.12.RELEASE</version><relativePath/>
</parent><properties>
<spring-cloud.version>Hoxton.SR12</spring-cloud.version>
<spring-cloud-alibaba.verion>2.2.7.RELEASE</spring-cloud-alibaba.verion>
<nacos-client.verion>2.0.3</nacos-client.verion>
</properties> <!-- Spring Cloud -->
<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${spring-cloud.version}</version><type>pom</type><scope>import</scope>
</dependency>
<!-- Spring Cloud Alibaba -->
<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-dependencies</artifactId><version>${spring-cloud-alibaba.verion}</version><type>pom</type><scope>import</scope>
</dependency><!-- 服务注册 -->
<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<!-- 配置中心 -->
<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency><!--springboot版本变更2.3.12.RELEASE后@NotBlank注解失效引入-->
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-validation</artifactId>
</dependency>
自己记录 method(@Validated TestReq req) 替换 method(@RequestBody TestReq req)
二、下载nacos2.0.3
官方下载地址:https://github.com/alibaba/nacos/releases
windows加速下载地址:https://ghproxy.com/https://github.com//alibaba/nacos/releases/download/2.0.3/nacos-server-2.0.3.zip
linux加速下载地址:https://ghproxy.com/https://github.com//alibaba/nacos/releases/download/2.0.3/nacos-server-2.0.3.tar.gz
三、下载后解压
1、修改application.properties中数据库配置
cd /lanren312/nacos/conf/
vim application.properties#*************** Config Module Related Configurations ***************#
### If user MySQL as datasource:
spring.datasource.platform=mysql### Count of DB:
db.num=1### Connect URL of DB:
db.url.0=jdbc:mysql://服务器ip:3306/db_nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=你的数据库密码nacos.core.auth.caching.enabled=true # 开启权限认证,很重要,很重要,很重要
2、修改nacos/bin/startup.cmd set MODE="standalone" (linux是startup.sh)
3、linux多两个步骤
3.1、在/bin/startup.sh中配置JAVA_HOME
3.2、在安全组、防火墙中开放8848、9848、9849三个端口
4、项目resource下的bootstrap.properties 文件
我项目的resource只配置了一个 bootstrap.properties 文件,bootstrap 加载优先于 applicaton(优先级可以自行百度)
spring.profiles.active=prod
spring.application.name=lanren312-order
spring.cloud.nacos.config.group=monkey
spring.cloud.nacos.config.server-addr=http://192.168.0.103:8848 # 服务器ip
spring.cloud.nacos.config.file-extension=yaml## 这些是2.x版本以上必须加的,不加服务启动就会报错
spring.cloud.nacos.config.username=nacos
spring.cloud.nacos.config.password=nacos # 默认是nacos,建议把密码改掉
spring.cloud.nacos.discovery.username=nacos
spring.cloud.nacos.discovery.password=nacos # 默认是nacos,建议把密码改掉
1、我是用的默认的namespace,这里可以不写,如果你创建了新的,那么这么就要指定
2、nacos密码是默认的,建议导入sql时将密码改掉,百度搜索--Bcrypt密码生成计算器, https://www.jisuan.mobi/nX7.html
3、dataID格式: ${spring.application.name}-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}(格式可以自行百度)
我的这个服务的dataId: lanren312-order-prod.yaml
dataID不能有下划线“_” ,得是中划线"-"
配置中“:”后要有空格。accessKey: 5
5、 在nacos客户端新建配置
Data ID:lanren312-order-prod.yaml
Group: monkey
配置格式: YAML
配置内容:写之前的不用改,贴一部分关于nacos的配置
spring:cloud:nacos:discovery:server-addr: 192.168.0.103:8848
做完这些,启动服务,就能注册到nacos上。
记录一些api## 查看到nacos目前已经注册过的账号和加密后的密码
http://localhost:8848/nacos/v1/auth/users?pageNo=1&pageSize=10&username=nacos&password=nacos
## 查看到dataId配置
http://localhost:8848/nacos/v1/cs/configs?group=monkey&tenant=public&dataId=lanren312-order-prod.yaml&username=nacos&password=nacos
## 查看nacos启动的服务
http://localhost:8848/nacos/v1/ns/upgrade/ops/metrics
四、说说碰到的问题
1、可能需要的pom.xml引用
<!--spring-cloud-dependencies 2020.0.0 默认不在加载bootstrap 配置文件,
如果项目中要用bootstrap 配置文件 需要手动添加spring-cloud-starter-bootstrap 依赖,不然启动项目会报错的。-->
<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-bootstrap</artifactId><version>3.0.2</version>
</dependency> <!--有博客说要排除自带的nacos-client,要重新引入,后面不排除发现也能用-->
<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId><exclusions><exclusion><groupId>com.alibaba.nacos</groupId><artifactId>nacos-client</artifactId></exclusion></exclusions>
</dependency>
<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId><exclusions><exclusion><groupId>com.alibaba.nacos</groupId><artifactId>nacos-client</artifactId></exclusion></exclusions>
</dependency>
<dependency><groupId>com.alibaba.nacos</groupId><artifactId>nacos-client</artifactId><version>2.0.3</version>
</dependency>
2、开启权限验证,注册失败
经过检查发现
windows启动 会把配置文件写到 C:\Users\Administrator\nacos 目录下
linux中启动第一行日志就会打印 c.a.n.c.c.impl.LocalConfigInfoProcessor : LOCAL_SNAPSHOT_PATH:/root/nacos/config
在nacos客户端修改配置后,这里面的文件也会实时更新,说明客户端这边没问题。
启动服务报错 3次get data from Nacos error,有报错 403,unknown user
NacosPropertySourceBuilder : get data from Nacos error,dataId:lanren312-order
com.alibaba.nacos.api.exception.NacosException: http error, code=403,dataId= lanren312-order,group=monkey,tenant=
......
NacosPropertySourceBuilder : get data from Nacos error,dataId:lanren312-order.yaml
com.alibaba.nacos.api.exception.NacosException: http error, code=403,dataId= lanren312-order.yaml ,group=monkey,tenant=
......
NacosPropertySourceBuilder : get data from Nacos error,dataId:lanren312-order-prod.yaml
com.alibaba.nacos.api.exception.NacosException: http error, code=403,dataId= lanren312-order-prod.yaml ,group=monkey,tenant=
......
***************************
APPLICATION FAILED TO START
***************************Description:
Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.
Reason: Failed to determine a suitable driver classAction:
Consider the following:If you want an embedded database (H2, HSQL or Derby), please put it on the classpath.If you have database settings to be loaded from a particular profile you may need to activate it (the profiles prod are currently active)
最终还指向了DataSource,可DataSource肯定不可能有错的,上面的3次报错也很可疑,于是去nacos的issues去碰碰运气
和我的问题一样,但没看到解决办法:https://github.com/alibaba/spring-cloud-alibaba/issues/2332
https://github.com/alibaba/spring-cloud-alibaba/issues/3210 里面说要在bootstrap.properties文件中添加 nacos账号密码。添加后启动服务控制台正常,nacos客户端可以看到服务已经注册上去。完美
期间有试过在nacos客户端中 lanren312-order-prod.yaml 里面配置nacos账户密码,启动还是报错,最终是将nacos账户密码配置在bootstrap.properties文件中解决了问题。
完!
相关文章:
nacos升级到2.0.3(单机模式)
前提:https://github.com/alibaba/spring-cloud-alibaba/wiki/版本说明 Spring Cloud AlibabaSpring CloudSpring BootNacos2.2.7.RELEASESpring Cloud Hoxton.SR122.3.12.RELEASE2.0.3 一、pom.xml文件 <parent><groupId>org.springframework.boot&…...
Koa学习3:用户添加、错误处理
模型 在src目录下创建model目录,用来存放模型 创建用户模型 user.model.js 注意: UUID类型是无法自增的,将id设置为UUID类型时只需要为其指定默认值即可 // 数据类型 const { DataTypes } require(sequelize); // 导入已经连接了数据库…...
网络安全入门学习第十五课——PHP基础
文章目录 一、WEB技术1、什么是web2、B/S架构3、C/S架构 二、PHP概述1、PHP是什么2、PHP受欢迎的原因3、基于MVC模式的PHP框架4、常用编译工具5、PHP环境搭建6、开发工具 三、PHP基本语法格式1、标记2、输出语句3、注释4、标识符 四、数据与运算1、常量1.1、常量定义1.2、预定义…...
电子科技大学 数学专业-功不唐捐,玉汝于成
电子科技大学 数学专业 功不唐捐,玉汝于成 1.本科背景 本科是坐落于湖南湘潭的湖南科技大学,专业为网络工程专业,因热爱数学专业,所以决定跨考数学专业。 本科专业课平均成绩85,排名10/104。CET 4 474分,…...
Android10.0 iptables用IOemNetd实现删除子链功能的实现
1.前言 在10.0的系统rom定制化开发中,在system中netd网络这块的产品需要中,会要求设置屏蔽ip地址之内的功能, liunx中iptables命令也是比较重要的,接下来就来在IOemNetd这块实现删除创建子链的相关功能 2. iptables用IOemNetd实现删除创建子链功能的实现的核心类 syste…...
OpenGL光照之光照贴图
文章目录 漫反射贴图镜面光贴图放射光贴图代码 每个物体都拥有自己独特的材质从而对光照做出不同的反应的方法。这样子能够很容易在一个光照的场景中给每个物体一个独特的外观,但是这仍不能对一个物体的视觉输出提供足够多的灵活性。 我们将整个物体的材质定义为一个…...
2018~2019 学年第二学期《信息安全》考试试题(B 卷)
北京信息科技大学 2018 ~2019 学年第 2 学期 《信息安全》课程期末考试试卷 B 课程所在学院:计算机学院 适用专业班级:计科 1601-06,重修 考试形式:(闭卷) 一. 选择题(本题满分 10 分,共含 10 道小题,每小题 1 分) 网络中存在的安全漏洞主…...
LeetCode-C#-0002.两数相加
0.声明 该题目来源于LeetCode 如有侵权,立马删除。 解法不唯一,如有新解法可一同讨论。 1.题目 0002两数相加 给你两个非空的链表,表示两个非负的整数,它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一…...
访问修饰符private,default,protected,public访问等级区别
private:private是最严格的访问修饰符,它将成员声明为私有的。私有成员只能在声明它们的类内部访问,其他类无法直接访问私有成员。这样可以确保数据的封装性和安全性。 default(默认):如果没有明确指定访问…...
阿里云(Linux)安装Docker教程
首先安装docker,需要找到帮助文档,那肯定是我们的官网: Install Docker Engine on CentOS | Docker Documentation 找到对应的位置,这里是安装在CentOS中,版本需要Ce…...
Linux C编程基础:获取时间
1.前言 对于linux下的编程,无论是用户态还是内核态,时间获取都是经常需要使用到的。以下分别从用户态和内核态整理了几个常用的时间获取接口,供编写代码时快速查阅。 2.用户态获取时间 2.1 clock_gettime() #include <time.h>int c…...
Spring核心注解
1、Bean注解 作用:用于把当前方法的返回值作为bean对象存入spring的ioc容器中位置: 一般出现在方法上面属性: name:用于指定bean的id。当不写时,默认值是当前方法的名称细节:当我们使用注解配置方法时,如果方法有参数,…...
哈希表原理,以及unordered_set/和unordered_map的封装和迭代器的实现
哈希表 unordered系列unordered_set和unordered_map的使用哈希哈希概念哈希冲突哈希函数闭散列开散列哈希表的扩容哈希表源码(开散列和闭散列) 封装unordered_set/和unordered_map,以及实现迭代器节点定义unordered_set定义unordered_map定义…...
如何把歌曲里的伴奏音乐提取出来,分享几个方法给大家!
对于一首歌,我们都知道,它有两部分组成:背景音乐人声。这两者合在一起,便是我们经常听的歌。部分用户想要直接获取歌曲伴奏,那么可以在UU伴奏网上下载。 操作方法比较简单,直接搜索想要的歌曲名称就可以了…...
区块链产业快速发展 和数集团开启区块链应用新时代
UTONMOS区块链游戏要来了。 就在5月底,UTONMOS品牌所属公司上海和数集团在泰国发布了【神念无界】系列的多款国际版链游,包括【神念无界-源起山海】、【北荒传奇】、【神宠岛】、【神农园】等区块链游戏。 以【神念无界-源起山海】为例,其是…...
初出茅庐的小李博客之常见字符串函数使用
C语言字符数组与字符串数组 在C语言中,字符数组和字符串数组实际上是同一种类型。字符串是由字符组成的字符数组,通常以空字符 ‘\0’ 结尾。C语言中的字符串是一种常见的数据类型。我们可以通过两种方式定义字符数组跟字符串数组 char charArray[10];…...
运筹学工程化流程和常见的运筹学算法分类以及常见软件
文章目录 前言运筹学工程化流程运筹学算法分类运筹学软件参考文献 前言 自2023年初新冠疫情管控放开后,各家公司各类岗位的人员都有被裁的消息传出,但用人市场上运筹学算法岗位却反其道行之,用工出现了激增。可以预见的是数据算法将从传统的…...
JAVA面向对象(三)
第三章 封装与继承 目录 第三章 封装与继承 1.1.封装 1.2.包 1.3.访问权限控制 1.4.static修饰符 1.4.1.成员变量 1.4.2.成员方法 1.4.3.代码块 总结 内容仅供学习交流,如有问题请留言或私信!!!!࿰…...
前端面试题---跨域处理和异常、错误处理
一.跨域处理 在前端开发中,当我们在浏览器中向不同域名或端口发起请求时,就会遇到跨域请求的限制。为了处理跨域请求,有几种常见的方法 1.JSONP(JSON with Padding) JSONP是一种利用 <script> 标签可以跨域加载…...
网络安全之反序列化漏洞分析
简介 FastJson 是 alibaba 的一款开源 JSON 解析库,可用于将 Java 对象转换为其 JSON 表示形式,也可以用于将 JSON 字符串转换为等效的 Java 对象分别通过toJSONString和parseObject/parse来实现序列化和反序列化。 使用 对于序列化的方法toJSONStrin…...
19 贝叶斯线性回归
文章目录 19 贝叶斯线性回归19.1 频率派线性回归19.2 Bayesian Method19.2.1 Inference问题19.2.2 Prediction问题 19 贝叶斯线性回归 19.1 频率派线性回归 数据与模型: 样本: { ( x i , y i ) } i 1 N , x i ∈ R p , y i ∈ R p {\lbrace (x_i, y_…...
第七十天学习记录:高等数学:微分(宋浩板书)
微分的定义 基本微分公式与法则 复合函数的微分 微分的几何意义 微分在近似计算中应用 sin(xy) sin(x)cos(y) cos(x)sin(y)可以用三角形的几何图形来进行证明。 假设在一个单位圆上,点A(x,y)的坐标为(x,y),点B(x’, y’)的坐标为(x’, y’)。则以两点…...
Jmeter
目录 一、jmeter 安装 二、jmeter 介绍 1、jmeter是什么? 2、jmeter 用来做什么? 3、优点 4、缺点 5、jmeter 目录介绍 ①_bin 目录介绍 ② docs 目录 — — 接口文档目录 ③ extras目录 — — 扩展插件目录 ④ lib 目录 — — 所用到的插件目录 ⑤ lic…...
Flutter 学习 之 时间转换工具类
Flutter 学习之时间转换工具类 在 Flutter 应用程序开发中,处理时间戳是非常常见的需求。我们通常需要将时间戳转换为人类可读的日期时间格式。为了实现这一点,我们可以创建一个时间转换工具类。 实现方法 以下是一个简单的时间转换工具类的示例&…...
docker consul
docker consul的容器服务更新与发现 服务注册与发现是微服务架构中不可或缺的重要组件,起始服务都是单节点的,不保障高可用性,也不考虑服务的承载压力,服务之间调用单纯的通过接口访问的,直到后来出现多个节点的分布式…...
全志V3S嵌入式驱动开发(开发环境再升级)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 前面我们陆陆续续开发了差不多有10个驱动,涉及到网口、串口、音频和视频等几个方面。但是整个开发的效率还是比较低的。每次开发调试的…...
ChatGPT:人工智能助手的新时代
ChatGPT:人工智能助手的新时代 文章目录 ChatGPT:人工智能助手的新时代引言ChatGPT的原理GPT-3.5架构概述预训练和微调过程生成式对话生成技术 ChatGPT的应用场景智能助理客服机器人虚拟角色教育辅助创意生成个性化推荐 ChatGPT的优势ChatGPT的使用技巧与…...
【面试】二、Java补充知识
JVM中的存储 JVM的五块存储区: 方法区(线程共享) 方法区用来存储类的各种信息(类名、方法信息等)、静态变量、常量和编译后的代码也存储在方法区中 方法区中也存在运行时常量池 常量池中会存放程序运行时生成的各种…...
LISTENER、TNSNAMES和SQLNET配置文件
LISTENER、TNSNAMES和SQLNET配置文件 用户连接验证listener.ora文件配置监听日志local_listener参数 tnsnames.ora文件配置 sqlnet.ora文件配置 用户连接验证 Oracle数据库中用户有三种常见的登录验证方式: 通过操作系统用户验证:必须是在数据库服务器…...
【Leetcode -225.用队列实现栈 -232.用栈实现队列】
Leetcode Leetcode -225.用队列实现栈Leetcode -232.用栈实现队列 Leetcode -225.用队列实现栈 题目:仅使用两个队列实现一个后入先出(LIFO)的栈,并支持普通栈的全部四种操作(push、top、pop 和 empty)。 …...
重庆所有做网站的公司/做微商怎么找客源加人
1、time.Sleep 可以直接sleep需要的时间之后,在执行,调度器会把当前协程置为GWaiting状态,放入定时器阻塞堆,是一个小顶堆,不断去堆顶元素 2、time.Timer 简单使用 fmt.Println("now time",time.Now().F…...
南京美容网站建设/全渠道营销案例
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。作者:张俊博链接:https://www.zhihu.com/question/22298352/answer/34267457来源:知乎有那么麻烦吗?不推荐用“反转/翻转/反褶/对称”等解释卷积…...
网站1688批发/自己怎么优化网站排名
传送门 Description \(windy\)定义了一种\(windy\)数。不含前导零且相邻两个数字之差至少为\(2\)的正整数被称为\(windy\)数。\(windy\)想知道, 在\(A\)和\(B\)之间,包括\(A\)和\(B\),总共有多少个\(windy\)数? Input 包含两个整数…...
网站兼容性测试怎么做/网络推广是啥
在Python中迭代序列(或者其他可迭代对象)时,有一些函数非常好用。有些函数位于itertools模块中,还有一些Python的内建函数也十分方便。 1. 并行迭代 程序可以同时迭代两个序列。比如有下面两个列表: names [anne, bet…...
上海头条新闻最新消息/山西seo基础教程
摘要:课程学习:零基础入门学习Python - 阿里云大学 上图中T恤上印着“人生苦短,我用Python”的大牛就是Python的创始人Guido van Rossum。其实这句话来自Bruce Ecke(C标准委员会成员,《Thinking in Java》作者…...
做试试彩网站人员/厦门网站的关键词自动排名
使用从 dcomcnfg 或点击“开始”-“控制面板”-“管理工具”-“组件服务”-“计算机”-“我的电脑”-“DCOM”选项,选择其下的“IIS ADMIN SERVICE”,右健选择“属性”,找到“安全”,在“启动和激活权限”中编辑“自定义”&#x…...