Rundeck na prática
Por: Denis Santos, Luciano Beja e Renzo Petri
Motivadores que nos levaram a escolher essa ferramenta de automação na Natura:
Por que pensar em uma ferramenta de automação de tarefas?
Em muitas empresas de grande porte, o processo de implantação da infraestrutura é fragmentado e acaba gerando incômodo e retrabalho. Implementações sempre com muita intervenção manual e procedimentos variados, como scripts e ferramentas executadas por pessoas repetidas vezes. Tudo isso faz com que o trabalho feito entre as equipes seja mais difícil, afetando a velocidade de entrega dos produtos, onerando o tempo do time de infra nessas atividades operacionais.
Porque Rundeck?
Dado esse cenário, nos sentimos desafiados com a tarefa de melhorar o rendimento e a qualidade do processo de implantação e housekeeping da infraestrutura da Natura em Cloud.
Escolhemos o Rundeck por ser uma ferramenta open-source além de fornecer uma interface consistente para as equipes, seja Dev ou Ops, para implantar e gerenciar a nossa infraestrutura e também as aplicações. O Rundeck tem a capacidade de prover opções de automação, seja uma operação programada ou disponibilizada por uma Interface Web, API ou Command-line Interface e na facilidade de integração com ferramentas que já possuímos em nosso processo de CI/CD (Jenkins, Terraform, Kubernetes, Plugins Multi-Cloud).
Qual o poder do Rundeck?
O Rundeck permite uma pessoa ou uma equipe conduza uma tarefa, seja ela uma implantação ou uma rotina de troubleshooting de forma automatizada e controlada e composta por um FLOW de tarefas.
O grande poder esta associada ao conceito de Release Management, seja para Dev ou Ops.
Por exemplo, em um caso onde queremos aplicar de forma massiva e controlada aumentar as instâncias de EC2, basta selecionar qual ambiente ou grupo de servidores queira executar e ele orquestrará as atividades:
- Criar novo servidor
- Rodar terraform
- Aplicar regras de SEC
- Notificar time no Slack
Aonde queremos chegar?
Com isso, o time de Cloud & Plataforma deu o primeiro passo para criar o conceito de autoatendimento entre os times na Natura, fornecendo controle de acesso e a transparência necessária para atender às políticas de segurança e governança.
O que já fizemos:
- Implantamos o Rundeck com automação, criando uma receita de Terraform que permite a implantação total com Recurso Computacional, Database, Backup, Load Balancer, Regras de Segurança, Integração com AD e controle por ACL.
Já temos automatizações de:
- Backup de ambientes nas Clouds;
- Start/Stop de servidores em horários não utilizados (ambientes não produtivos);
- Setup de ferramentas e plataformas, seja em recurso computacional ou em cluster de container.
Já estamos colhendo os resultados, otimizando o uso dos serviços na Cloud
- Além de oferecer uma ferramenta que permita com que o time tenha mais tempo para atuar em housekeeping e inovação, reduzindo o tempo de tasks executadas apenas pelo time DevOps, compartilhando essa responsabilidade com os times de desenvolvimento.
Empresas que utilizam o Rundeck:
- Santander
- Carrefour
- Ticket Master
- Techne
- Salesforce
- Disney
- Data.com
- Grande adoção da comunidade
- Nós da Natura
A implantação do Rundeck foi feita de forma democrática no nosso time, e rapidamente tem tido adoção de todos para gerar mais automações de tarefas do dia a dia, Go Go NoOps!