O que é o OpenVZ
O
OpenVZ é uma solução de virtualização em nível de sistema operacional. OpenVZ cria ambientes virtuais isolados, que funcionam como servidores standalone convencionais, porém utilizando um único hardware em comum. Estes ambientes virtuais seguros são conhecidos como VE ou como VPS (
virtual private server).
VPS's podem ser reinicializados independentes uns dos outros. Todos possuem hostname, acesso de root, endereço IP e tudo mais que um servidor pode ter, sendo assim uma solução extremamente confiável e funcional de virtualização.
OpenVZ é a base do sistema comercial chamado Virtuozzo, muito conhecido pelo pessoal que costuma alocar servidores em datacenters no exterior. Estas empresas costumam oferecer o VPS por um preço bem mais acessível que um servidor standalone.
Baixando os pacotes necessários
Neste artigo estarei partindo do pressuposto que o leitor já conheça o sistema operacional
Linux, bem como algumas funções avançadas, tais como:
- Compilação de programas;
- Compilação e atualização do kernel;
- Debug de possíveis erros.
Estarei utilizando o seguinte hardware para teste:
- P4 3.0;
- 4Gb Ram;
- HD 200 Gb SATA.
Sistema operacional: Debian Sarge 3.1.
Apesar de utilizar o Debian, também estarei ensinando passo-a-passo como compilar os componentes necessários, assim ninguém ficá sentindo-se abandonado, ehehe.
Uma coisa meio chata é que o OpenVZ está disponível apenas para o kernel 2.6.8-2, que já é um pouco velho, mas já que é assim, vamos ao kernel.
Primeiro vamos para /usr/src:
# cd /usr/src
Baixando o kernel necessário para nosso projeto:
# wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2
# tar xjf linux-2.6.8.tar.bz2
Agora precisamos baixar o patch para o OpenVZ:
# wget http://download.openvz.org/kernel/022stab064.1/\
stable/patches/patch-022stab064-combined.gz
Descompactando:
# gzip -d patch-022stab064-combined.gz
Aplicando o patch:
# patch -p1 < patch-022stab064-combined
Assim nosso kernel estará pronto para utilizar o OpenVZ. Para finalizar, vamos baixar o arquivo de configuração para o kernel:
# wget http://download.openvz.org/kernel/022stab064.1/configs/\
stable/kernel-2.6.8-022stab064-i686.config.ovz
Vamos entrar na configuração do kernel.
# make menuconfig
Vá à opção:
"Load an alternate configuration file"
Após isto, basta escolher o arquivo kernel-2.6.8-022stab064-i686.config.ovz.
Pode compilar o kernel agora:
# fakeroot make-kpkg --revision=OpenVZ.2.6.8 kernel_image
Com make-kpkg será gerado um arquivo.deb que só precisa ser instalado.
Nas outras distribuições, compile o kernel da forma que lhe for mais conveniente.
Instalando um kernel com OpenVZ
Para os usuários de Debian podemos acelerar um pouco as coisas utilizando um pacote de kernel pré-compilado e pronto para instalar, o que facilita muito a nossa vida.
Vale lembrar que este kernel não possui suporte ao sistema de arquivos XFS.
# wget http://downloads.howtoforge.com/debian_openvz_howto/\
kernel-image-2.6.8-022stab064-up_OpenVZ.2.6.8_i386.deb
Agora basta instalá-lo:
# dpkg -i /usr/src/kernel-image-2.6.8-022stab064-up_OpenVZ.2.6.8_i386.deb
Reinicie o servidor e pronto.
# shutdown -r now
Instalando o gerenciador OpenVZ
Vamos instalar a suíte de ferramentas que vai nos permitir gerar e gerenciar as máquinas virtuais. Para tanto, adicione o seguinte repositório em seu APT: