Desenvolvimento de Kit de Ferramentas de Operações Automatizadas

Neste projeto prático, você desenvolverá um conjunto de ferramentas de automação como parte de uma equipe de Eficiência de Plataforma. Você praticará fluxos de trabalho profissionais com Git, scripting Bash para monitoramento de sistema, processamento avançado de logs com Awk e Sed, e agendamento de tarefas com Cron.

DevOps EngineerDevOpsLinux

💡 Este tutorial foi traduzido do inglês com assistência de IA. Para ver o original, você pode mudar para a versão em inglês

Introdução

Automação operacional útil é mais do que um script executado uma vez: deve ser versionada, executável, produzir saída controlada e seguir um cronograma previsível. Neste projeto baseado em desafios, você reúne essas peças em um pequeno kit local de operações.

Você estabelecerá um fluxo Git, escreverá um monitor em Bash, transformará um log preparado com sed e awk e instalará duas entradas Cron. Cada fase valida arquivos, permissões, estado do repositório, relatório ou sintaxe do crontab, sem fornecer solução comando a comando.

O que você aprenderá

  • Inicializar um repositório Git local, definir exclusões, trabalhar em develop e registrar uma base
  • Escrever um Bash executável que informa uso do sistema raiz e estado do Nginx com timestamps
  • Extrair uso de disco com df e testar serviço com systemctl, service ou pgrep
  • Remover registros DEBUG, mascarar IPv4 e reorganizar campos com sed e awk
  • Produzir processador executável e relatório limpo no formato exigido de data, marcador e mensagem
  • Agendar o monitor a cada cinco minutos e o processamento diariamente às 02:00, redirecionando erros do monitor

Para quem é este curso

Este projeto é indicado para estudantes de Linux e DevOps prontos para combinar Git, Bash, texto e Cron sem comandos passo a passo.

Pré-requisitos: Familiaridade com scripts shell, permissões executáveis, Git básico, pipelines, sed, awk, verificações de processo ou serviço e sintaxe crontab; projeto de avaliação.

Ambiente de aprendizagem: Host Linux no navegador com Bash, Git, Cron, estado de Nginx, ferramentas GNU/Linux e arquivos preparados; não requer Git remoto nem nuvem.

Perguntas frequentes

A fase Git envia código ao GitHub ou outro remoto?

Não. Ela cria apenas o repositório local /home/labex/ops-toolkit, regras *.tmp e logs/, a branch develop e ao menos um commit base.

O monitor é um sistema completo de alertas?

Não. monitor.sh imprime com timestamp o uso do disco raiz e o estado do Nginx. Não há limites, notificações, retenção de métricas ou painel.

Que formato o processador espera?

Registros preparados com data, hora, nível, IPv4 e mensagem separados por espaços. Remove DEBUG, troca IP por [REDACTED] e gera YYYY-MM-DD HH:MM:SS [REDACTED] Message....

O desafio Cron espera os jobs realmente executarem?

Não. Verifica exatamente duas entradas: monitor.sh a cada cinco minutos com stderr em monitor.err, e process_logs.sh diariamente às 02:00.

Professor

labby
Labby
Labby is the LabEx teacher.