bladex如何支持https协议nacos,是否能增加Nacos登录验证

Blade 已结 2 1020
E-ER
E-ER 剑圣 2021-08-05 18:05

一、该问题的重现步骤是什么?

1. 域名为https协议时,nacos无法转为https协议,依旧使用http请求

2. 

3.此处判断一直是false,如何增加配置启用当前配置为httpsimage.png


二、你期待的结果是什么?实际看到的又是什么?

希望能够支持https协议域名nacos,实际上无法转换协议。如果支持,如何增加登录验证?

三、你正在使用的是什么产品,什么版本?在什么操作系统上?

bladex 2.0.5 windows以及linux均无法正常连接到nacos

四、请提供详细的错误堆栈信息,这很重要。

2021-08-05 17:41:29.949  INFO 21352 --- [)-192.168.0.101] io.undertow.servlet                      : Initializing Spring DispatcherServlet 'dispatcherServlet'

2021-08-05 17:41:29.949  INFO 21352 --- [)-192.168.0.101] o.s.web.servlet.DispatcherServlet        : Initializing Servlet 'dispatcherServlet'

2021-08-05 17:41:29.960  INFO 21352 --- [)-192.168.0.101] o.s.web.servlet.DispatcherServlet        : Completed initialization in 11 ms

2021-08-05 17:42:46.680 ERROR 21352 --- [)-192.168.0.101] o.s.c.a.n.d.NacosDiscoveryClient         : get service name from nacos server fail,


java.lang.IllegalStateException: failed to req API:/nacos/v1/ns/service/list after all servers([xxxxxxxx此处为域名]) tried: failed to req API:http://xxxxxxxx此处为域名:8848/nacos/v1/ns/service/list. code:500 msg: java.net.SocketTimeoutException: connect timed out

at com.alibaba.nacos.client.naming.net.NamingProxy.reqAPI(NamingProxy.java:380) ~[nacos-client-1.0.0.jar:na]

at com.alibaba.nacos.client.naming.net.NamingProxy.reqAPI(NamingProxy.java:346) ~[nacos-client-1.0.0.jar:na]

at com.alibaba.nacos.client.naming.net.NamingProxy.reqAPI(NamingProxy.java:294) ~[nacos-client-1.0.0.jar:na]

at com.alibaba.nacos.client.naming.net.NamingProxy.getServiceList(NamingProxy.java:276) ~[nacos-client-1.0.0.jar:na]

at com.alibaba.nacos.client.naming.net.NamingProxy.getServiceList(NamingProxy.java:252) ~[nacos-client-1.0.0.jar:na]

at com.alibaba.nacos.client.naming.NacosNamingService.getServicesOfServer(NacosNamingService.java:525) ~[nacos-client-1.0.0.jar:na]

at org.springframework.cloud.alibaba.nacos.discovery.NacosDiscoveryClient.getServices(NacosDiscoveryClient.java:99) ~[spring-cloud-alibaba-nacos-discovery-0.9.0.RELEASE.jar:0.9.0.RELEASE]

at org.springframework.cloud.client.discovery.composite.CompositeDiscoveryClient.getServices(CompositeDiscoveryClient.java:67) [spring-cloud-commons-2.1.2.RELEASE.jar:2.1.2.RELEASE]

at org.springframework.cloud.client.discovery.health.DiscoveryClientHealthIndicator.health(DiscoveryClientHealthIndicator.java:69) [spring-cloud-commons-2.1.2.RELEASE.jar:2.1.2.RELEASE]

at org.springframework.cloud.client.discovery.health.DiscoveryCompositeHealthIndicator$Holder.health(DiscoveryCompositeHealthIndicator.java:67) [spring-cloud-commons-2.1.2.RELEASE.jar:2.1.2.RELEASE]

at org.springframework.boot.actuate.health.CompositeHealthIndicator.health(CompositeHealthIndicator.java:95) [spring-boot-actuator-2.1.6.RELEASE.jar:2.1.6.RELEASE]

at org.springframework.boot.actuate.health.CompositeHealthIndicator.health(CompositeHealthIndicator.java:95) [spring-boot-actuator-2.1.6.RELEASE.jar:2.1.6.RELEASE]

at org.springframework.boot.actuate.health.HealthEndpoint.health(HealthEndpoint.java:50) [spring-boot-actuator-2.1.6.RELEASE.jar:2.1.6.RELEASE]

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_242]

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_242]

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_242]

at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_242]

at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282) [spring-core-5.1.8.RELEASE.jar:5.1.8.RELEASE]

at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:76) [spring-boot-actuator-2.1.6.RELEASE.jar:2.1.6.RELEASE]

at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60) [spring-boot-actuator-2.1.6.RELEASE.jar:2.1.6.RELEASE]

at org.springframework.boot.actuate.endpoint.jmx.EndpointMBean.invoke(EndpointMBean.java:121) [spring-boot-actuator-2.1.6.RELEASE.jar:2.1.6.RELEASE]

at org.springframework.boot.actuate.endpoint.jmx.EndpointMBean.invoke(EndpointMBean.java:96) [spring-boot-actuator-2.1.6.RELEASE.jar:2.1.6.RELEASE]

at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819) [na:1.8.0_242]

at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801) [na:1.8.0_242]

at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1468) [na:1.8.0_242]

at javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:76) [na:1.8.0_242]

at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1309) [na:1.8.0_242]

at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1401) [na:1.8.0_242]

at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:829) [na:1.8.0_242]

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_242]

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_242]

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_242]

at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_242]

at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:357) [na:1.8.0_242]

at sun.rmi.transport.Transport$1.run(Transport.java:200) [na:1.8.0_242]

at sun.rmi.transport.Transport$1.run(Transport.java:197) [na:1.8.0_242]

at java.security.AccessController.doPrivileged(Native Method) [na:1.8.0_242]

at sun.rmi.transport.Transport.serviceCall(Transport.java:196) [na:1.8.0_242]

at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:573) [na:1.8.0_242]

at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:834) [na:1.8.0_242]

at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:688) [na:1.8.0_242]

at java.security.AccessController.doPrivileged(Native Method) [na:1.8.0_242]

at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:687) [na:1.8.0_242]

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[na:1.8.0_242]

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[na:1.8.0_242]

at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_242]


2021-08-05 17:42:46.802  INFO 21352 --- [     parallel-1] io.lettuce.core.EpollProvider            : Starting without optional epoll library

2021-08-05 17:42:46.803  INFO 21352 --- [     parallel-1] io.lettuce.core.KqueueProvider           : Starting without optional kqueue library

2021-08-05 17:44:38.667 ERROR 21352 --- [TaskScheduler-1] o.s.c.a.nacos.discovery.NacosWatch       : Error watching Nacos Service change


java.lang.IllegalStateException: failed to req API:/nacos/v1/ns/service/list after all servers([xxxxx此处为域名]) tried: failed to req API:http://XXXX此处为域名:8848/nacos/v1/ns/service/list. code:500 msg: java.net.SocketTimeoutException: connect timed out

at com.alibaba.nacos.client.naming.net.NamingProxy.reqAPI(NamingProxy.java:380) ~[nacos-client-1.0.0.jar:na]

at com.alibaba.nacos.client.naming.net.NamingProxy.reqAPI(NamingProxy.java:346) ~[nacos-client-1.0.0.jar:na]

at com.alibaba.nacos.client.naming.net.NamingProxy.reqAPI(NamingProxy.java:294) ~[nacos-client-1.0.0.jar:na]

at com.alibaba.nacos.client.naming.net.NamingProxy.getServiceList(NamingProxy.java:276) ~[nacos-client-1.0.0.jar:na]

at com.alibaba.nacos.client.naming.net.NamingProxy.getServiceList(NamingProxy.java:252) ~[nacos-client-1.0.0.jar:na]

at com.alibaba.nacos.client.naming.NacosNamingService.getServicesOfServer(NacosNamingService.java:525) ~[nacos-client-1.0.0.jar:na]

at org.springframework.cloud.alibaba.nacos.discovery.NacosWatch.nacosServicesWatch(NacosWatch.java:127) ~[spring-cloud-alibaba-nacos-discovery-0.9.0.RELEASE.jar:0.9.0.RELEASE]

at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54) ~[spring-context-5.1.8.RELEASE.jar:5.1.8.RELEASE]

at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[na:1.8.0_242]

at java.util.concurrent.FutureTask.runAndReset$$$capture(FutureTask.java:308) ~[na:1.8.0_242]

at java.util.concurrent.FutureTask.runAndReset(FutureTask.java) ~[na:1.8.0_242]

at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) ~[na:1.8.0_242]

at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) ~[na:1.8.0_242]

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[na:1.8.0_242]

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[na:1.8.0_242]

at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_242]

五、若有更多详细信息,请在下面提供。




2条回答
  •  admin
    admin (最佳回答者)
    2021-08-06 11:49

    用下面的三段配置尝试下,如果不行,说明nacos还有bug,这一块一直做的不是很好

    nacos.core.auth.enabled=true
    nacos.config.password=nacos
    nacos.config.username=nacos


    0 讨论(2)
  • 2021-08-05 18:13

    https问题解决了,在Launch文件下增加配置image.png
    剩下的就是如何做身份认证呢,怎么才能想服务器传递用户名和密码

    2 讨论(0)
提交回复