Всем привет!
Когда заходит речь о разделении обязанностей между разработчиками и DevOps инженерами, споры обычно возникают в двух моментах - манифесты k8s\Openshift и CI джобы - они же джобы сборки. Поговорим про первые.
Мое мнение - за манифесты k8s\Openshift должны отвечать разработчики. Почему? А вот почему:
liveness\readiness probes - только разработчики знают, по каким url они находятся. Конечно в мире Spring Boot и Actuator есть некая стандартизация, но не везде и не всегда. И не всегда actuator подходит для healthcheck, но это отдельная тема
liveness\readiness timeouts - разработчики точно знают сколько времени старт пода. DevOps-ы могут это время эмпирически определить, но это требует времени)
timeouts, circuit breaker, retry - опять же только разработчики могут сказать, реализовали они их на прикладном уровне или требуется настройка на уровне Service Mesh. Могут быть требования корпоративной архитектуры\сопровождения ПРОМ, их определяющие, но опять же не везде и не всегда.
куда пишутся логи, какие существуют метрики, где их можно взять. Снова можно повториться, что где-то это стандартизировано, где-то нет.
любые другие тонкие облачные настройки - переменные среды, значение параметров в ConfigMap, поддержка graceful shutdown .... Наверняка DevOps или сопровождение со всем этим разберется. Но будет ли это эффективно?