remizov.org
4 subscribers
5 links
Трансляция в Telegram блога https://remizov.org/
Download Telegram
Использование OAuth2 с Nginx Ingress Controller

Постоянно в хозяйстве появляются интерфейсы, у которых своей аутентификации нет, а доступ нужно выдать ограниченной группе доверенных товарищей. Например, к интерфейсу шибко популярного Prometheus. Или часто к какому-то самопису.

Как мы решаем эту проблему? Бывает, никак. Закрываем доступ из внешней сети, а во внутренней, понятно, все свои. Следующий пункт -- собираем все админки за nginx, кладем htpasswd типа admin:<хеш страшно длинного пароля> и настраиваем basic auth через него в серверах всех своих админок. Ну и, наконец, выдаём каждому по паролю, и раскладываем htpasswd побольше. На этом этапе уже ропщет и команда, которая прилежно копипастит пароли от сервиса к сервису, и поддерживающий конфигурацию админ. До вершины эволюции этого подхода -- раздачи каждому разных паролей для разных сервисов -- на практике доходят редко, потому что настроения в коллективе уже на предыдущей стадии приближаются к революционным.

Что можно предложить для снятия боли от поддержки настройки доступа к зоопарку админок?..

#kubernetes #nginx #ingress #oauth2 #authentication
Включение внешних сервисов в контекст Kubernetes

Речь о создании объекта Service, за которым стоит не под, а внешний по отношению к кластеру Kubernetes сервер.

Приём позволяет сделать по крайней мере две полезные вещи:

подключить внешний сервис к Prometheus с использованием Kubernetes SD;

создать для внешнего сервиса запись во внутреннем DNS Kubernetes.

Собственно приём заключается в создании headless сервиса без селектора и соответствующего объекта Endpoints...

#kubernetes #prometheus #redis #servicediscovery