подскажите в какую сторону смотреть... Есть приложение в k8s, в котором при регистрации пользователей, им выдаются персональные домены вида vasya-1.example.com, vasya-2.example.com. Каким образом можно автоматизировать создание ingress'ов для зарегистрированных пользователей? Откинули идеи, что приложение будет само нарезать ingress'ы, также идею написания своего оператора. Возможно кто-нибудь имел дело с подобным кейсом? Поделитесь пожалуйста своими идеями. Заранее спасибо!
Ну все равно ж что-то должно ингрессы создавать. Контроллер, оператор, само приложение. У вас есть какие-то критерии что вы получить хотите или надо что-то эдакое?)
Можно через kubernetes api создать ресурс ingress с нужными вам параметрами
Хотим получить автоматизацию создания ресурсов ингресс, как и писал выше, при регистрации пользователей и выдачи ему доменов. Вот и стоит вопрос о автоматизации сего действия, тк регистрации не разовые и доменов будет много.
ну раз откинули идею про то, что приложение само должно слать запросы в k8s API для создания ингрессов, могу посоветовать начать верить в чудеса. если вера ваша будет крепкой - чудо случится. и вы найдете себе новую работу, когда ваши текущие работодатели разорятся или вас уволят.
поператор и crd же
они уже откинули
Сделать самим. На ровном месте не вырастет. Делов на сутки.
а какие причины по которым отмели - ходить в апи и создавать ingress'ы? Можно конечно молиться богам кубернетеса, чтобы все само создавалось, но что-то мне подсказывает, это не очень продуктивно будет
Откинули из соображений безопасности, не хотелось бы чтобы приложение что-то делало в kube api. Возможно мы и не правы.
Так вы именно и хотите чтобы производились действия в API
А создание ингреса это типо что?
можно вебхуки кидать в отдельный сервис, который ингресы нарезает. Таким образом у оригинального сервиса, только ручка - создай ingress без доступа к кубе api
А смысл? Ну переносится создание из одного места в другое, кардинально ничего не меняется
Да имелось ввиду непосредственно из приложения...
А какая сакральная разница? Но ладно, не хотите из приложения
Ну и какой в этом смысл? Типо думаешь там лучше запилят рбак/безопасность чем если кубом порезать
смысл в том, что с приложением взаимодействуют внешние пользователи, у него больше точек входа, а значит больше вектор атаки. Взломав приложение, злоумышленник будет иметь прямой доступ к k8s api, и там даже в случае с порезанными правами, мало ли, можно че нить поэксплуатировать, есть какие нибудь уязвимости нулевого дня, k8s то большой и сложный, и уязвимости уже бывали в нем. А в случае севриса, который одну ручку представляет, гораздо сложнее что-то сделать.
А почему не подходит wildcard домен на одном ингресе ?
Обсуждают сегодня