При просмотре кубернетес ресурсов за изменениями, что именно происходит под капотом? Неужели http
внезапно изменится на wss
соединение?
Чтобы решить проблему слишком большого числа запросов к kube-apiserver, я переписываю некоторый код, который, я думаю, является скорее шаблоном оператора.
В нашей мультитенантной микросервисной архитектуре все службы используют одну и ту же библиотеку для просмотра сведений о подключении к конкретным арендаторам c БД. Сведения о соединении сохраняются в секретах в том же пространстве имен, что и приложение. У каждой арендаторской БД есть свой собственный секрет.
Таким образом, при каждом вызове все секреты с правильной меткой считываются и анализируются для получения необходимой информации о подключении к БД. У нас около 400 сервисов / модулей ...
Моя идея: вместо чтения всех секретов при каждом вызове создайте кэш и обновляйте кэш каждый раз, когда соответствующий секретный ключ изменялся с помощью наблюдателя.
Мои проблемы: я просто заменяю запросы http одинаково дорогими веб-сокетами? Как я понимаю, теперь у меня будет открытое соединение через веб-сокет для каждой службы / модуля, которое по-прежнему равно 400 открытым соединениям.
Было бы лучше иметь прокси-службу для наблюдения за секретами (запросы kube-apiserver) и затем все службы запрашивают эту службу для получения сведений о соединении (intr anet запросов, kube-apiserver не связан)?