Разработчикам вход воспрещён: 7 кейсов автоматизации задач эксплуатации на Python

Разработчикам вход воспрещён: 7 кейсов автоматизации задач эксплуатации на Python

Прежде чем создать курс, продакт оунеры Слёрм вооружаются улыбкой и проводят кастдевы с опытными специалистами, потенциальными спикерами, корпоративными заказчиками.

С кастдевов по курсу Слёрм «Python для инженеров» получилась интересная подборка практических кейсов автоматизации задач эксплуатации на Python в зарубежных и наших компаниях.

Кейс первый: облачный.

Компания активно пользуется облаком и тратит 2 миллиона рублей в месяц на инфраструктуру в AWS. Можно написать инструмент на Python, который будет анализировать и отключать «холостые ресурсы». Это позволит сократить расходы на 40-50% или около 12 миллионов рублей в год.

Кейс второй: экзотический.

У компании много экзотических сервисов, которые необходимо мониторить. Можно написать несколько Prometheus-exporter’ов на Python, что позволит эффективнее мониторить приложения и свести к минимуму простой платформы. Актуально для Fintech, ADtech, крупных медийных, социальных и сервисных площадок.

Кейс третий: Ansible.

Часто документация о серверах ведётся в Jira. Иметь единый источник информации хорошо, но переносить серверы из Jira куда-либо — неудобно. Пример с Ansible. Можно держать честный инвентори в Ansible-репозитории и по завершении деплоя обновлять страницу в Jira, записывая какие сервера для каких целей используются. Или можно с помощью Python генерировать status page — писать, какие версии каких сервисов сейчас задеплоены в каждом environment.

Кейс четвёртый: Chef.

У меня был случай, когда я писал сводную систему chef-opscode + AWS + [webazilla.com](http://webazilla.com/), чтобы понимать за что и сколько мы платим. Chef в качестве глобального инвентори + базовая статистика по загрузке системы + провайдерские API.

Кейс пятый: lint-тесты.

В практике был опыт написания на Python lint-тестов для ansible и kubernetes. Они позволяли проверять на наличие обязательных параметров, которые были стандартными в рамках компании. Без автоматизации проверяли руками и глазами, что конечно же намного дольше и неэффективней.

Кейс шестой: zabbix.

Была написана прослойка между системой мониторинга и внутренним таск-менеджером. Скрипт получает сырые алерты от zabbix, обрабатывает их в соответствии с определенной логикой и создает конкретную задачу в трекере. Дежурные специалисты оперативно получают точную информацию и не тратят время на выяснение «очага возгорания» среди сотен клиентских серверов.

Кейс седьмой: саппорт.

Автоматизация рутинных задачи для саппорта. Раньше приходил клиент и писал запрос на изменение конфигурации (напр., увеличить диска на гипервизоре и/или диск внутри виртуальной машины), специалист техподдержки шел и руками менял конфигурацию, после этого вносил изменения в биллинг.

Это занимало в среднем 5 минут на одного клиента, аналогичных задач было 7-10 штук в день. После автоматизации процесса с помощью Python затраты на задачу сократились до 15 секунд. Экономия в месяц — примерно 23 часа. В качестве бонуса увеличилась лояльность клиентов, ведь теперь их запросы обрабатывались в считанные секунды.

88
Начать дискуссию