Как инженер DevOps, пришедший из опыта эксплуатации, вы перешли от создания и развертывания серверов и программного обеспечения вручную к созданию сценариев установки программного обеспечения на свои серверы с помощью BASH, PowerShell, Python и т. Д. Через некоторое время вы поймете, как Крутые сценарии есть и начинайте изучать более сложные способы автоматизации развертывания .
В конце концов, вы бы выбрали Chef, Puppet, Ansible или другой инструмент управления конфигурацией , который поможет вам управлять состоянием систем вашего парка. По мере того, как ваши навыки в области автоматизации развертывания приложений и управления системой развивались вместе с вашими инструментами, вы совсем недавно перешли в сферу « Инфраструктура как код » и используете ее не только для автоматизации развертывания программного обеспечения, но и для инфраструктуры и необходимых сред. управлять программным обеспечением во время перехода бизнеса в облако.
Теперь вы готовите с газом. Со временем вы познакомились с преимуществами использования инструментов, ориентированных на разработчиков, таких как управление исходным кодом, для управления модулями, рецептами и шаблонами, составляющими ваш арсенал средств развертывания и управления.
Когда вы перешли в команду DevOps, вы познакомились с жизненным циклом разработки программного обеспечения и концепцией непрерывной интеграции . Парни, эти разработчики быстро выпускали изменения, и чтобы быть в курсе, вы обнаружили, что работаете более тесно с разработчиками! Вы испытали настоятельную необходимость в команде разработчиков постоянно менять вещи, которые противоречат старой операционной парадигме « если она не сломана, не исправляйте ее ». Больше не нужно хвастаться о работоспособности системы, вы в одноразовой инфраструктуре.
Вы заметили, что переход на DevOps был больше, чем работа с разработчиками или использование новых инструментов и методов , но в команде произошел отчетливый культурный сдвиг, который пронизал всю организацию. Вы работали как сплоченная команда с общими обязанностями , общими инструментами и общими целями .
Вы взяли свои навыки в автоматическом развертывании и ввели их в конвейер « CICD », организованный « сервером непрерывной интеграции », таким как Jenkins , Bamboo или Code Pipeline . Теперь, когда разработчики внедряют новый код, ваши скрипты, инструменты и шаблоны поддерживают новые среды по требованию, запускают среды тестирования, чтобы выполнить свою задачу, и разрушают подготовительные среды после того, как в выпуске горят зеленые индикаторы, придерживаясь идеи " непрерывной доставки ".
По мере того, как новый код будет проходить через этапы CICD, вы, разработчики и весь бизнес обретаете уверенность в том, что обновление не прекратится после выпуска в производство. Прежде чем команда перейдет к « непрерывному развертыванию », нужно еще кое-что сделать , но вам все же нужно остановиться на более тонких моментах автоматизации возможности сине-зеленого развертывания, и решение по большей части является деловым. На данный момент вы довольны тем, что количество звонков в 3 часа ночи уменьшилось, а количество sev-1 и sev-2 сократилось.
Даже если вы получите sev-1, вы больше не будете тянуть всю ночь, пока менеджеры дышат вам в спину - вы можете легко выпустить предыдущую версию через конвейер CICD и снова запустить систему в оперативном режиме. Бизнес заметил, что стабильность ИТ-систем улучшилась, несмотря на скорость изменений .
Вы поражаетесь тому, как вы управляете ресурсами, необходимыми для управления программным обеспечением в вашем бизнесе, особенно когда вспоминаете, как оно было раньше, и сколько крови вы оставили на рельсах в центре обработки данных ...