Мы переключаем нашу микросервисную экосистему с http на https. Я смог загрузить службу Eureka Gateway через https, подключить нашу службу настройки и зарегистрироваться через https.
Однако, когда я загружаю третий сервис, который требует конфигурации, я не могу получить сервис для загрузки настроек через https:
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.0.0.RELEASE)
2018-09-06 15:03:21.260 INFO 2800 --- [ main] c.c.c.ConfigServicePropertySourceLocator : Fetching config from server at: http://blah
Я исследовал несколько руководств по Spring Boot Https и перепробовал множество различных комбинаций конфигураций. Я вставлю бутстрапы для соответствующих служб. Может быть какая-то избыточная информация, потому что я пробовал так много разных вещей.
bootstrap.yml для службы шлюза:
server:
port: 8761
transport: https
ssl:
enabled: true
key-store: serverkeystore.p12
key-store-password: changeit
key-store-type: PKCS12
key-alias: serverkey
spring:
application:
name: gateway
cloud:
config:
enabled: false
eureka:
client:
register-with-eureka: false
fetch-registry: false
healthcheck:
enabled: true
service-url:
defaultZone: https://localhost:8761/eureka
server:
enableSelfPreservation: false
instance:
hostname: localhost
nonSecurePortEnabled: false
securePortEnabled: true
statusPageUrl: "https://${eureka.instance.hostname}:${server.port}/info"
healthCheckUrl: "https://${eureka.instance.hostname}:${server.port}/health"
homePageUrl: "https://${eureka.instance.hostname}:${server.port}/"
security:
require-ssl: true
bootstrap.yml для службы конфигурации:
server:
port: 8085
transport: https
ssl:
enabled: true
key-store: serverkeystore.p12
key-store-password: changeit
key-store-type: PKCS12
key-alias: serverkey
spring:
application:
name: config
eureka:
client:
serviceUrl:
defaultZone: https://localhost:8761/eureka
security:
require-ssl: true
bootstrap.yml для третьей службы:
server:
port: 1111
transport: https
ssl:
enabled: true
key-store: serverkeystore.p12
key-store-password: changeit
key-store-type: PKCS12
key-alias: serverkey
spring:
application:
name: service
cloud:
config:
failFast: true
discovery:
enabled: true
serviceId: config
eureka:
client:
serviceUrl:
defaultZone: https://localhost:8761/eureka
security:
require-ssl: true
Если у кого-то была такая же проблема, пожалуйста, сообщите!