get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
clickhouse NodePort 10.105.37.111 <none> 8123:30004/TCP,9000:30005/TCP 5h
gateway NodePort 10.105.120.107 <none> 8081:30009/TCP,8899:30010/TCP 79m
keycloak NodePort 10.98.150.78 <pending> 8080:30008/TCP 5h
как заставить отрабатывать вот такой сценарий:
1. пользователь открывает какую-то страницу gateway http://localhost:30009/my/page
2. т.к. пользователь еще не авторизован, gateway попытается его перенаправить на страницу входа
3. gateway выполняется запрос http://keycloak:8080/... для получения адреса страницы входа
4. адрес логина конечно же выглядит вот так http://keycloak:8080/loing/.... т.к. keycloak работает в k8s и его hostname=keycloak
5. после чего пользоваля пытаются перенаправить на http://keycloak:8080/loing что конечно же невозможно, т.к. такой хост не существует в его сети.
keycloak это self-hosted решение позволяющее делать sso/oauth и тд, вообщем облегчает user management.
gateway это spring boot + spring-boot-keycloak-starter
как можно выпутаться из этой ситации?
а кубер здесь причём?
вобщем, тебе keycloak надо наружу выставлять, судя по тому, что я в доке вижу
Обсуждают сегодня