天天看点

spring cloud学习填坑笔记

最近在学习spring cloud,由于学习资料具有普遍性,部分应个人原因导致的小细节问题,往往很难找到解决的办法。这特别记录一下自己遇到的一些问题。

一、eureka-server加入security做基础访问控制报错batch update failure with http status code 401; discarding 1 replication tasks

详细错误如下:

spring cloud学习填坑笔记

场景交代:

eureka-server程序加入security后,启动程序日志是ok的,在没有其他eureka客户端访问的情况下会定时打印出“running the evict task with compensationtime 0ms”这样的提示。当启动一个客户端连接eureka-server后,eureka-server日志中就多出了截图中的错误,而且会在每次eureka的定时任务线程中都会抛出错误提示日志。

看错误log,http的状态码是401,虽然明显是权限问题导致的,我检查eureka-client程序的配置

spring cloud学习填坑笔记

可以看到是配置了访问eureka-server的用户名和密码的,由于客户端功能和配置都相当简单,检查几遍后,并未看出任何问题,说明eureka客户端权限是正常的。于是怀疑在eureka-server端出了问题。

检查了一下服务端配置,发现在eureka-server中eureka.client.serviceurl.defaultzone配置的是这样的

spring cloud学习填坑笔记

是不是这里少了访问用户名和密码导致的呢,于是我们在连接中增加了用户名和密码,如下

spring cloud学习填坑笔记

重新启动eureka-server和eureka-client,问题解决,不在报401的错误了。