еще один #длиннопост на тему "Дженкинс - это дев-опс".
Почти год назад я публиковал заметку про "девопс-инженеров", где среди прочего давал ссылку на The twelve-factor App - подход к производству приложений таким образом, чтобы не было мучительно больно в последствии их сопровождать и развивать.
От коллег по цеху регулярно слышу что-то вроде: "Это вот в <technology name> можно сделать и деплой, и мониторинг, и конфигурирование серверов автоматом, а у нас, в 1с, все плохо и вообще не так". Конечно же, это все отмазки и/или упрощение в пользу херак-херак-и-в-продакшен-девелопмент. И апач/иис/балансировщики можно конфигурировать автоматом, и платформу/конфигурацию деплоить по одной кнопке, и мониторинг оборудования и продуктовые метрики выводить в дашборд. Было бы желание. А главное - потребность.
Когда вы осознаете потребность и примите необходимость перемен, перед вами встанет вопрос выбора инструментов, решающих каждую из типов задач. И вот тут я бы хотел остановиться.
Известных success-story с красиво настроенной IT-инфраструктурой продукта/проекта немного. Ещё меньше выложенных готовых к использованию скриптов и конфигов. Тем не менее уже выработаны некоторые подходы по решению тех или иных задач. Можно не думая взять, например, GitLab + Jenkins + Ansible + Prometheus + Grafana, потому что так "писали вон те ребята на Инфостарте и выложили готовые конфиги и кейсы". А можно попробовать окинуть взглядом другие популярные инструменты, применяемые в мире, вне зависимости от языка, взвесить их плюсы и минусы, выбрать что-то, наиболее подходящее именно вам.
Как узнать, какие инструменты рассматривать?
Есть множество различных подборок вида "Топ 10 инструментов для тестирования", но чаще всего, это будет личное мнение какого-то конкретного парня в блоге. А если еще нужен список для развертывания? Для управления конфигурацией инфраструктуры? Для контейнеризации?
Вашему вниманию хочу предложить сайт, который я впервые увидел в докладе "Война и мир" или DevOps в большом Enterprise Марата Биккина на Infostart Event 2019 - Периодическую таблицу devops-инструментов, относительно недавно обновленную под 2020 год. Это сводная таблица множества имеющихся инструментов, разбитая по категориям (включая, например, артифкатори и мониторинг, а не только пресловутый CI/CD), собранная путем опроса огромного количества разработчиков со всего мира. Если не "лучшее из лучшего", то уж точно "самое популярное". Просмотр категорий этих инструментов в паре с пунктами из The twelve-factor App, надеюсь, поможет с одной стороны получить равновесный список применяемых инструментов, а с другой - понять, в какую сторону следует дополнительно направить усилия по автоматизации производственного процесса. Знаете, что вам нужен гит-сервер, но не знаете из чего вообще можно выбирать? Пожалуйста, вот список с кратким описанием. Видите категорию, о которой даже не задумывались? Например, ServerLess? Попробуйте понять, сможет ли ваш производственный процесс или бизнес выиграть от применения инструментов данной категории. Или просто расширите кругозор.
Еще раз ссылочка на таблицу - https://digital.ai/periodic-table-of-devops-tools
Post #127
2.15K