У меня есть этот вызов. Я инженер DevOps и инженер-программист в команде, где несколько месяцев назад разработчики перешли от использования центральной БД Oracle к БД на виртуальной машине CentOS на своих индивидуальных ноутбуках. Переход от центральной базы данных должен был уменьшить зависимость от администраторов баз данных, а также устранить проблемы, возникающие из-за несогласованности данных.
План совместного использования и обеспечения синхронизации базы данных со всеми в команде заключался в том, что каждый человек будет делиться сценариями изменений со всеми. Проблема в том, что мы используем Skype для общения (мы только настроили slack, но еще не начали его использовать в полной мере), и хотя люди иногда выкладывают текст сценариев изменения БД, некоторые могут его пропустить. Другая проблема заключается в том, что некоторые разработчики пропускают публикацию изменений. Кроме того, новые выпуски развертываются в рабочей среде без развертывания в тестовой и демонстрационной средах.
Это стало серьезной проблемой для нас, особенно для меня, который недавно взял на себя ответственность за синхронизацию наших демонстрационных развертываний с производственными развертываниями. Большинство проблем с синхронизацией граничит с отсутствием синхронизации базы данных из-за отсутствия скриптов изменений или объектов БД. Oracle — наша предпочитаемая БД.
Типичное развертывание в демо-среде — это очень болезненный процесс, который включает в себя тестирование приложения, и поскольку возникают проблемы из-за отсутствия столбцов таблицы БД, функций, хранимых процессов, нам приходится искать отсутствующие объекты БД, применять их к БД, а затем продолжать до тех пор, пока все вопросы не будут решены.
Как я могу решить эту проблему, чтобы обеспечить плавное, безболезненное и менее трудоемкое развертывание? Может ли миграция наших приложений в Docker помочь с проблемами синхронизации БД и связанной с этим недисциплинированностью разработчиков? Какой процесс мы можем внедрить для улучшения в этой области?
Заранее большое спасибо за вашу помощь.