Automação de Data Center · 3 min read · Dec 10, 2025
Genesis, Uma Nova Ferramenta de Automação de Data Center da Tumblr
Tumblr lança uma Nova Ferramenta de Automação de Data Center - “GENESIS”
Genesis, uma ferramenta para automação de data center, foi lançada pela Tumblr, que irá simplificar o processo de descoberta de novas máquinas e reporte de detalhes de hardware para Collins, uma parte do sistema de gerenciamento de inventário da Tumblr. A ferramenta é muito conveniente para fazer configuração de hardware, como alterar configurações de BIOS e configurar placas RAID antes de provisionar um sistema operacional no host.
Genesis foi desenvolvido pelas equipes de Engenharia de Confiabilidade do Site e Data Center da Tumblr e agora Genesis é um projeto de código aberto sob a Licença Apache e está disponível no Github.
Também Leia - Melhores Alternativas ao Tumblr
A ferramenta inclui uma imagem Linux reduzida adequada para inicializar via PXE e uma linguagem específica de domínio (DSL) baseada em Ruby para descrever tarefas a serem executadas no host. A DSL do Genesis cria a tarefa com base nos pacotes instalados e comandos são executados facilmente. Exemplos de tarefas são a tarefa TimedBurnin, que realiza um teste de estresse no sistema para descartar erros de hardware antes de colocá-lo em produção, e BiosConfigrR720, que configura o BIOS em Dell R720s exatamente como queremos.
Existem poucos sistemas além do Genesis que precisam estar em vigor para um deployment bem-sucedido. Estes são:
- um servidor DHCP,
- um servidor TFTP,
- um servidor HTTP,
O projeto Genesis no Github INSTALL.md fornece mais instruções e também inclui as opções de configuração de servidor necessárias.
Quando uma máquina inicializa, o servidor DHCP informa ao firmware PXE para inicializar no iPXE. O iPXE é então usado para apresentar uma lista de opções de menu, buscadas de um servidor remoto. Quando o usuário faz uma escolha, o kernel do Genesis é carregado e initrd (do servidor de arquivos) junto com parâmetros na linha de comando do kernel. Uma vez que o sistema operacional Genesis foi carregado, o genesis-bootloader busca e executa um script Ruby descrevendo uma segunda fase onde instalamos gems, alguns RPMs básicos e buscamos nossas tarefas de um servidor remoto. Finalmente, executamos as tarefas relevantes.
Vamos tomar um exemplo; considere um servidor novinho que inicializa. Ele faz uma solicitação DHCP e carrega o menu iPXE. Neste caso, tivemos que lembrar que não conhecemos o endereço MAC de antes, então deve ser uma nova máquina. Em seguida, inicializamos o Genesis em modo de descoberta, onde as tarefas que ele executa são escritas para buscar todas as informações de hardware que precisamos e reportá-las de volta ao Collins. Em nossa configuração, isso inclui informações como discos rígidos e sua capacidade e o número de CPUs, mas se você quiser obter informações detalhadas sobre tags de serviço, os bancos de memória em uso, o nome das portas do switch, temos que seguir isso com 48 horas de teste de estresse de hardware usando a tarefa TimedBurnin.
A página do projeto Collins no Github afirma que este aplicativo é muito vital, pois fornece uma fonte de verdade e conhecimento para toda a infraestrutura da Tumblr. Todos os dados relacionados aos ambientes de produção da Tumblr são armazenados e codificados no Collins, e esses dados são usados para impulsionar toda a automação do data center da Tumblr.
A ferramenta foi criada como um sistema que cuidará de todos os servidores físicos, switches e racks nos ambientes de produção da Tumblr, e evoluiu para também suportar o inventário de hardware, endereços IP e software. A demonstração mostra que a API do Collins e os dados são um excelente mecanismo para impulsionar processos de automação. O Collins recém fornece implantação de cluster com um botão, gera configuração quando as topologias de cluster de hardware mudam, impulsiona atualizações de infraestrutura quando as configurações de software mudam e ajuda a gerenciar implantações de software.
“Genesis ainda está nas fases iniciais de desenvolvimento e, embora tenhamos alcançado muitos dos objetivos que estabelecemos, ainda há muito a ser feito”, diz o blog da Tumblr. A Tumblr acrescentou ainda que “Se você encontrar um bug ou tiver uma ideia legal, nos avise e envolva-se contribuindo com código e documentação ou participando com perguntas e sugestões.”
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.