Разработка набора инструментов для автоматизированных операций (Automated Ops Toolkit)

В этом практическом проекте вы разработаете набор инструментов автоматизации в рамках команды по повышению эффективности платформы (Platform Efficiency team). Вы отработаете профессиональные рабочие процессы Git, написание сценариев Bash для мониторинга системы, продвинутую обработку логов с помощью Awk и Sed, а также планирование задач с помощью Cron.

DevOps EngineerDevOpsLinux

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

Полезная операционная автоматизация — это не просто однократно запущенный скрипт: она должна версионироваться, быть исполняемой, формировать контролируемый вывод и работать по расписанию. В этом проекте вы соберете эти элементы в небольшой локальный набор инструментов.

Вы настроите Git-процесс, напишете монитор на Bash, преобразуете подготовленный журнал через sed и awk и установите две задачи Cron. Этапы проверяют файлы, права, состояние репозитория, отчет и синтаксис crontab, не выдавая команды пошагово.

Чему вы научитесь

  • Инициализировать локальный Git, задавать исключения, работать в develop и фиксировать базовую версию
  • Писать исполняемый Bash-скрипт с временными метками для использования корневого диска и состояния Nginx
  • Извлекать использование диска через df и проверять службу через systemctl, service или pgrep
  • Удалять DEBUG, скрывать IPv4 и перестраивать поля журнала с помощью sed и awk
  • Создавать исполняемый обработчик и чистый отчет с заданными временем, меткой и сообщением
  • Планировать монитор каждые пять минут и обработку ежедневно в 02:00, направляя ошибки монитора в файл

Для кого этот курс

Проект предназначен для изучающих Linux и DevOps, готовых объединить Git, Bash, обработку текста и Cron без пошаговых команд.

Предварительные требования: Shell-скрипты, исполняемые права, основы Git, конвейеры, sed, awk, проверки процессов или служб и синтаксис crontab; это проверочный проект.

Учебная среда: Linux в браузере с Bash, Git, Cron, состоянием Nginx, GNU/Linux-утилитами и подготовленными файлами; удаленный Git и облако не нужны.

Часто задаваемые вопросы

Отправляется ли код в GitHub или другой удаленный репозиторий?

Нет. Создается только локальный репозиторий /home/labex/ops-toolkit, правила *.tmp и logs/, ветка develop и хотя бы один базовый коммит.

Монитор является полноценной системой оповещения?

Нет. monitor.sh выводит с временем использование корневого диска и состояние Nginx. Порогов, уведомлений, хранения метрик и панели нет.

Какой формат журналов ожидается?

Подготовленные строки с датой, временем, уровнем, IPv4 и сообщением. DEBUG удаляется, IP заменяется на [REDACTED], результат имеет вид YYYY-MM-DD HH:MM:SS [REDACTED] Message....

Ожидает ли задание Cron фактического запуска задач?

Нет. Проверяются ровно две записи: monitor.sh каждые пять минут с stderr в monitor.err и process_logs.sh ежедневно в 02:00.

Преподаватель

labby
Labby
Labby is the LabEx teacher.