Разделите свой опыт по уровням: использование готового pipeline, изменение job, настройка окружений и ответственность за эксплуатацию. Приведите конкретный пример задачи, которую сделали самостоятельно.
Контейнер использует изоляцию namespaces и ограничения cgroups, а также права, capabilities и дополнительные политики безопасности. Он разделяет ядро с хостом, поэтому не равен отдельной виртуальной машине.
Сначала разделите ожидание соединения, сеть, блокировки и собственно выполнение SQL. Низкий CPU не исключает задержки из-за пула, диска или locks; откат без локализации может не помочь.
Сначала прекращайте приём новой работы и организуйте контролируемое завершение зарегистрированных задач до закрытия пула БД. Для гарантии восстановления после убийства Pod нужна сохранённая очередь или запись задания.
Назовите реально использованные системы и свою роль в pipeline: разработка конфигурации, сопровождение или только запуск готовых job. Затем опишите путь изменения от коммита до выкладки.
Не выпускайте образ с невоспроизводимой готовностью зависимостей. Добавьте ограниченное ожидание/повторы подключения, корректные probes и интеграционную проверку в окружении, похожем на Kubernetes.
Опишите реальный опыт Docker: какие приложения контейнеризировали, как собирали образы и запускали сервисы. Отделите локальное использование от ответственности за production-окружение.
Модуль Ansible выполняет конкретную операцию, например управляет файлом или пакетом. Python-модули часто передаются как обёртка Ansiballz с модулем и необходимыми зависимостями.
Для типичного Linux-хоста нужны сетевой доступ по SSH, учётная запись с подходящими правами и поддерживаемый Python для большинства модулей. Устанавливать агент Ansible на каждый хост обычно не требуется.
Docker сделал упаковку и запуск приложений более лёгкими и воспроизводимыми: контейнеры разделяют ядро хоста, тогда как виртуальная машина обычно запускает отдельную гостевую ОС.
Используйте expand–migrate–contract: сначала совместимое расширение схемы, затем перенос данных и переключение кода, в конце удаление старых структур. Старый и новый код должны переживать период совместной работы.