A "experiência"
Tags: ledscommunity
Published: 2024-06-11 18:32:36

Quando você começa a programar, acha que a coisa mais difícil do mundo é criar códigos, mas quando você começa a ver algo de DevOps, você chega a rápida conclusão de que a pior coisa do mundo é mexer com coisas que outras pessoas desenvolveram.

Estava precisando de alguma forma de manejar várias instâncias de máquinas virtuais em um server (para rodar aplicações e testes). Algo como o OpenStack, mas ele é uma ferramenta poderosa e complexa em proporções iguais, foi desenvolvida em conjunto com a NASA, afinal. Ou seja, é matar uma mosca com um canhão e ficava fora do escopo do projeto. Precisava de algo simples, uma infraestrutura de cloud interna que fosse simples, fácil de instalar e fácil de manter. Enfim, uma escolha legal seria um software chamado de OpenNebula, oferta uma infraestrutura de cloud simples e parecia bem fácil de se instalar (sempre parece, não?). 

Primeiro, montar fisicamente um server, é pesado. Leva um dia. Vou instalar os softwares no dia seguinte.

Instalei o clássico Ubuntu Server, mas decidimos por trocar para o AlmaLinux (distro que é baseada em RHEL). Instalamos o AlmaLinux, muito promissor. Vamos instalar o OpenNebu-... Ops! O servidor quebrou, metade das rams deixaram de ser reconhecidas. _"What a shame!"_. Um dia foi perdido tentando resolver esse problema. Enfim, no fim do dia decidi apenas ignorá-lo. Isso dá pra resolver depois, não tenho tempo de ficar reiniciando o server (que leva uns 7 minutos para dar boot). Ao fim do dia, para não dizer que não havia feito nada, terminei a instalação do Alma.

Agora já era o terceiro dia. Com os problemas de hardware ignorados, vamos focar no que importa de verdade: software! 
Isso não me daria qualquer dor de cabeça, estava seguindo o guia oficial do OpenNebula, a distro era recomendada, tudo nos conformes. Entrei os comandos no BASH. Opa, um erro de lib,... aparentemente eles pedem uma lib que já foi deprecada... vamos pesquisar na Internet... Ah, é um erro comum. É só adicionar outro repo. Tudo bem, vamos! Opa, o repo que eu adicionei tem outro erro de lib... E assim começa um grande ciclo de corrigir uma lib e ela pedir outra lib que já foi deprecada, e assim por diante. Enfim, desistimos. Um software que usa tantas libs deprecadas não pode ser muito bom para a produção. Aí foi mais um dia.

Quarto dia: Proxmox. SIM! Esse é bom, não é exatamente para Cloud, sim, com certeza. Mas dá para dar deploy em docker e em máquinas virtuais, serve perfeitamente para o escopo do nosso projeto. Ele é antigo, _reliable_, tem uma grande comunidade. Esse sim é o "du bão" (como minha família mineira costuma falar). Vai dar certo! (não deu). 
Pen drive bootável criado, instalação começada... ué... travou? Deu erro? Deu. Hm... erro de escrita, acho que foi meu pen drive que está ruim, vou trocar ele.
Pen drive bootável criado, instalação começada... travou novamente.
Eu não sei contra qual deus pequei, mas ele veio me punindo a semana toda. Dessa vez ele decidiu que quebraria dois HDs do servidor. 
Eu me sinto burro. Será que sou eu? Eu normalmente instalaria isso tudo em 15 minutos, literalmente. Mas já estava nessa simples tarefa fazia uma semana, sim! Uma semana. Enfim... um dia foi perdido resolvendo esse problema.

Era o quinto dia agora, iríamos trocar de servidor na segunda-feira. É isto, só esperar. Espero que acabe logo. Tentei resolver o problema do HD e da RAM sem sucesso.

Segunda-feira: Trocamos o servidor, instalamos tudo em menos de 15 minutos, testamos, todos saíram felizes. FIM.

No final, faria tudo novamente. Aprendi muitas coisas legais que vão me ajudar no futuro.