Configurando o FOG Project


09 - 2021

1. O Desafio:

Nos laboratórios de Engenharia de Computação do Insper, contamos com mais de 300 computadores🤯, com hardware e necessidades de software específicos para cada um dos laboratórios.

Como conseguir gerenciar todas essas maquinas, de forma rápida, eficiente e sem enlouquecer🤪🤪🤪?

Ai que entra o Fog Project, um sistema em rede para gerenciamento imagens de Sistemas operacionais.

2. O Setup

Utilizamos um setup, não convencional, quando falamos de configuração do FOG, não estamos, nesse primeiro momento, utilizando a infra de redes do Instituto para que possamos ter uma maior controle sobre a rede, e evitar possíveis colisões de de configurações.

O Computador que utilizamos é uma Intel NUC, um mini computador bastante potente para seu tamanho, rodando Ubuntu 20.8, mas pode ser qualquer ambiente *Nix.

Para nossa rede utilizamos um roteador Asus AC750, mas pode ser qualquer roteador que seja possível desligar seu Servidor DHCP interno, pois o configuraremos em nossa maquina para maior controle.

Opcionalmente utilizamos um Hub/Switch para que possamos fazer uma rede com maior número de nos.

3. Mão na massa

Server DHCP e Netplan

Com uma nova instalação do Ubuntu, e feito os updates e upgrades de praxe, instalamos o servidor DHCP que iremos utilizar

apt install isc-dhcp-server

Feito isso precisamos alterar o arquivo de configurações, que se encontra em /etc/dhcp/dhcpd.conf

default-lease-time 600;
max-lease-time 7200;

authoritative;

subnet 192.168.50.0 netmask 255.255.255.0 {
  interface eno1;
  range 192.168.50.11 192.168.50.250;
  option routers 192.168.50.1;
  option bootfile-name "ipxe.efi"; 
}

Nesse arquivos, já estão previstas algumas coisas, que eu como técnico de jogos, e não redes, demorei para entender. ~Obrigado Demay~.

Tudo muito bonito, mas ainda precisamos também configurar o netplan para apontar para a própria maquina o servidor DHCP.

Para isso precisamos modificar o arquivo de gerenciamento de redes que se encontra em /etc/netplan/01-network-manager-all.yaml

network:
  version: 2
  renderer: NetworkManager
  ethernets:
    eno1:
      dhcp4: no
      addresses: [192.168.50.10/24]
      gateway4: 192.168.50.1
      nameservers:
        addresses: [8.8.8.8,8.8.4.4]

Feito isso, enfim podemos aplicar as alterações.

Primeiro executamos:

sudo netplan apply

Para atualizar com as configurações que acabamos de inserir. Seguido de

sudo systemctl restart isc-dhcp-server

Isso fará com que o serviço do servidor DHCP recarregue com as configurações que definimos no arquivo dhcpd.conf. Para verificarmos se está tudo bem podemos executar

sudo systemctl status isc-dhcp-server

Se tudo deu certo você dever ver algo como na imagem abaixo 🙌🙌

Podemos então ir ao próximo passo.

Desabilitar o DHCP Server do roteador

Com certeza um dos passo que mais vai variar, mas acesse seu roteador, no nosso caso em 192.168.50.1, procure pelas opções avançadas de rede, e desabilite o servidor dhcp que vem embarcado no roteador.

Até que foi rápido esse passo hein!

Instalação do FOG

Com tudo configurado, a instalação do Fog deve ser bastante tranquila, já afastamos as pedras 🪨🪨 do caminho.

Baixe o instalador referente ao seu OS no site deles, ou

wget https://github.com/FOGProject/fogproject/archive/1.5.9.tar.gz

Feito o download fazemos o untar

tar -xzvf 1.5.9.tar.gz

Navegue para a pasta que acabou de ser criada, e execute o instalador

sudo .bin/installfog.sh

A partir de agora o instalador irá fazer uma serie de verificações para salvar nas configurações depois.

Nossas opções foram:

2 — Debian Install
n — Normal Install
n — mantendo eno1 (192.168.50.10) como interface padrão
Router Address: 192.168.50.1
n — Handle DNS, o roteador que se encarregará dessa parte
n — Fog as DHCP Server
n — https
O instalador pede para que você verifique suas opções antes de prosseguir

Nesse ponto da instalação, será pedido para que você acesse pelo browser uma pagina de configuração para que seja instalado o Banco de Dados. ANTES de prosseguir com o enter então, acesse a URL fornecida e clique no botão Install & Configure Database

Assim que terminar a configuração do banco de dados, podemos voltar ao terminal para prosseguir com o resto da instalação. Podemos manter todas as opções padrão nessa parte.

Quando tudo tiver finalizado será possível enfim acessar o sistema com o usuário e senha ~super seguros~ que foi configurado. Provavelmente user fog e senha password

Se você está vendo algo como na imagem a seguir parabéns! Tem um servidor de imagens Fog Up-and-running.