Configurar uma imagem de servidor
Antes de criar um servidor em nuvem a partir de uma imagem personalizada, é necessário configurá-la corretamente para garantir a instalação adequada e o funcionamento completo do painel de controle.
Abaixo estão as verificações e configurações que você deve realizar para criar o servidor com sucesso.
Configuração básica Copiar link
Tabela de partições Copiar link
Verifique o esquema de particionamento do disco. Recomendamos usar MBR ou GPT; ambos são suportados pela maioria das distribuições Linux usando ferramentas como fdisk, gdisk, etc.
Exemplo de comando:
gdisk -l /dev/vdaExemplo de saída:
GPT fdisk (gdisk) version 1.0.5
Partition table scan:
MBR: MBR only
BSD: not present
APM: not present
GPT: not presentSe outro esquema de particionamento estiver sendo usado, será necessário recriar a imagem com o formato correto.
Layout do disco Copiar link
Se o disco contiver uma única partição root usando o sistema de arquivos ext3 ou ext4, o sistema redimensionará automaticamente o sistema de arquivos durante a criação do servidor para corresponder ao tamanho configurado do disco.
Por exemplo, se o dispositivo da imagem tiver 10 GB e o servidor for criado com um disco de 15 GB, o dispositivo e o sistema de arquivos serão expandidos para 15 GB.
Bootloader Copiar link
As máquinas virtuais utilizam SeaBIOS, portanto o sistema operacional deve ter um bootloader compatível com BIOS instalado.
Se um bootloader UEFI estiver instalado, ele deve ser removido e substituído por um compatível com BIOS.
Se estiver usando o GRUB2, consulte este guia de instalação.
Configuração do /etc/fstab Copiar link
Para garantir uma inicialização estável, utilize montagem baseada em UUID no /etc/fstab para a partição root.
Exemplo:
UUID=f19002a1-6e7a-45ac-91cd-24b7cc0e4cd9 / ext4 defaults 0 1Para obter o UUID de uma partição:
blkidExemplo de saída:
/dev/vda1: UUID="f19002a1-6e7a-45ac-91cd-24b7cc0e4cd9" TYPE="ext4" PARTUUID="f7a1fae1-01"
/dev/loop0: TYPE="squashfs"
/dev/loop1: TYPE="squashfs"
/dev/loop2: TYPE="squashfs"Usuário Root Copiar link
Uma senha para o usuário root será gerada ao criar o servidor. Certifique-se de que o usuário root exista (ou seja, não tenha sido removido manualmente).
qemu-guest-agent Copiar link
Certifique-se de que o qemu-guest-agent esteja instalado e em execução. Ele é necessário para operações como backups pelo painel de controle.
Verificar status:
- Systemd
systemctl status qemu-guest-agent.service- OpenRC / init.d
/etc/init.d/qemu-guest-agent statusOu:
service qemu-guest-agent statusInstalar se estiver ausente:
- Debian/Ubuntu
apt-get install qemu-guest-agent- CentOS / RHEL
yum install qemu-guest-agent- Alpine Linux
apk add qemu-guest-agentAtivar na inicialização:
- Systemd
systemctl enable qemu-guest-agent.service- init.d
chkconfig --add qemu-guest-agent- OpenRC
rc-update add qemu-guest-agentEssas configurações são suficientes para criar um servidor em nuvem a partir da imagem.
As configurações abaixo são recomendadas para maior praticidade e usabilidade.
Configurações adicionais Copiar link
Instalação do Zabbix Copiar link
Para coletar estatísticas do servidor, utilizamos o agente Zabbix.
Instale usando o seguinte script:
wget -O - http://repo.hostman.com/zabbix-install.sh | bashConfigurações de rede Copiar link
Garanta conectividade de rede após a inicialização do servidor.
Configure um cliente DHCP para obter automaticamente um endereço IP.
A maioria dos sistemas já possui clientes DHCP instalados. Recomendamos usar dhclient com a seguinte configuração:
option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;
send host-name = gethostname();
request subnet-mask, broadcast-address, time-offset, routers,
domain-name, domain-name-servers, domain-search, host-name,
netbios-name-servers, netbios-scope, interface-mtu,
rfc3442-classless-static-routes, ntp-servers;
timeout 300;Acesso SSH Copiar link
O SSH é usado para acessar o servidor. Certifique-se de que esteja instalado e habilitado na inicialização.
Verificar status:
- Systemd
systemctl status ssh.service- OpenRC / init.d
/etc/init.d/ssh statusOu:
service ssh statusInstalar se estiver ausente:
- Debian/Ubuntu
apt-get install openssh-server- CentOS / RHEL
yum -y install openssh-server openssh-clients- Alpine Linux
apk add opensshAtivar na inicialização:
- Systemd
systemctl enable ssh.service- init.d
chkconfig --add ssh- OpenRC
rc-update add sshdTambém verifique se o firewall permite acesso à porta 22 (porta padrão do SSH).
Desativar swap Copiar link
Recomenda-se desativar o swap.
Verificar se o swap está ativo:
swapon --showExemplo de saída:
NAME TYPE SIZE USED PRIO
/swap.img file 685M 0B -2Desativar swap:
swapoff -a