初次搭建微服务报错java.Net.UnknownHostException

按照教程一步一步往下走,感觉走的挺顺利的:
(1)先搭建好集群版的两台服务中心:首先引入Eureka-server的相关的依赖,其次yml文件中添加以下配置:
注册中心1:
server:
port: 6001
eureka:
instance:
hostname: eureka6001.com #服务端的实例名称
server:
enable-self-preservation: false #在开发过程中,我们禁用自我保护模式
client:
fetch-registry: false #服务发现,表示不从Eureka服务中中获取注册信息
register-with-eureka: false #服务注册,不将自己注册到Eureka服务中
service-url: #服务端与客户端交互的地址:集群版这里应该写上对方Server的地址,单机版配置的是自己的地址,如果不配置,默认本机8761端口
#defalutZone: http:// e u r e k a . i n s t a n c e . h o s t n a m e : {eureka.instance.hostname}: {server.port}/eureka/
defaultZone: http://eureka6002.com:6002/eureka/
注册中心2
server:
port: 6002
eureka:
server:
enable-self-preservation: false #在实际开发中,关闭自我保护能力
instance:
hostname: eureka6002.com #服务器端的实例名称
client:
fetch-registry: false #服务发现:因为我们配置的是服务注册中心,不需要被其他服务发现
register-with-eureka: false #同理:服务注册中心可以不用被注册
service-url: #服务器与客户端交互的地址:集群版写上的是两台服务器互相的地址
defaultZone: http://eureka6001.com:6001/eureka/
然后再启动类上添加注解@EnableEurekaServer,走到这里我们算是完成了集群的搭建;
接下来我们开始配置微服务:需要将其注册到我们两台服务器上;
1、同理。添加相应eureka-client的依赖
2、其次,修改yml配置文件:
server:
port: 8000
mybatis:
config-location: classpath:mybatis/mybatis.cfg.xml
spring:
application:
name: microservice-product #这个很重要,服务与服务之间调用一般使用的是这个name

eureka: #这里我们将服务注册到注册中心,故配置好我们的yml文件
client:
register-with-eureka: true #服务注册:将自己注册到服务中心
fetch-registry: true #服务发现:开启
service-url: #这里将服务提供者注册到两个注册中心中
defaultZone: http://eureka6001.com:6001/eureka,http://eureka6002.com:6002/eureka #将自己注册到哪一个服务注册中心,如果有多个的话需要用,隔开
instance:
instance-id: s p r i n g . a p p l i c a t i o n . n a m e : {spring.application.name}: {server.port} #这里指定实例ID,就不会显示主机名了
prefer-ip-address: true #访问路径可以显示IP地址
3、然后我们在其启动类上添加相应的注解@EnableEurekaClient
至此,我们所有的配置工作已经全部做完,接下来我们按照先**“注册中心”再微服务**的顺序依次启动“启动类”;结果发现报错了:java.Net.UnknownHostException,说是找不到对应的名字的注册中心;

4、百度才得知我们在配置好注册中心后需要在本地进行IP与域名绑定的一个配置;故我们找到相应的目录:C:\Windows\System32\drivers\etc下的hosts文件,将IP与域名绑定进hosts文件;Eureka Server组成高可用,两个Eureka Server互相对方注册,这里需要通过域名访问,Eureka server的域名分别为“eureka6001.com”“eureka6002.com”,故直接在127.0.0.0 后面添加上eureka6001.com的字样,如下图:
host里面修改例图
5、在进行IP与域名进行绑定的过程中,我们又碰到了新的问题:也就是无法直接修改host文件,修改之后也保存不了!然而强大的百度、万能的网友还是为我们提供了方法,贴个传送门,按照这个方法可以很容易的通过管理员的权限修改hosts文件!
6、最后我们再去重启两个注册中心以及我们的服务,发现成功运行!

发布了26 篇原创文章 · 获赞 9 · 访问量 755

猜你喜欢

转载自blog.csdn.net/z19950712/article/details/103975104