OpenVZ - Instalando no Debian Squeeze AMD64

Neste artigo, vou descrever como preparar um Servidor Debian Squeeze (64 bits) para OpenVZ. Com o OpenVZ, você
pode criar várias máquinas virtuais VPS (Virtual Private Servers) no mesmo Hardware. Este artigo pretende ser um guia
prático, e não cobre as origens teóricas. Apenas documentei minha experiência e espero que seja útil também para vocês.

[ Hits: 19.917 ]

Por: Ciro em 27/03/2012


OpenVZ, Comandos e WebAdmin



Usando o OpenVZ

Antes de podermos criar as máquinas virtuais com OpenVZ, é necessário termos um modelo de arquivo da distribuição que pretendemos utilizar nas máquinas virtuais, na pasta “/var/lib/vz/template/cache”.

As máquinas virtuais serão criadas a partir deste modelo.

Podemos encontrar uma lista de modelos em: http://wiki.openvz.org - Download

No meu caso, baixei estes:

# cd /var/lib/vz/template/cache
# wget
http://download.openvz.org/template/precreated/centos-5-x86_64.tar.gz
# wget http://download.openvz.org/template/precreated/centos-5-x86.tar.gz
# wget http://download.openvz.org/template/precreated/centos-6-x86.tar.gz
# wget http://download.openvz.org/template/precreated/centos-6-x86_64.tar.gz
# wget http://download.openvz.org/template/precreated/debian-5.0-x86.tar.gz
# wget http://download.openvz.org/template/precreated/debian-6.0-x86_64.tar.gz
# wget http://download.openvz.org/template/precreated/debian-6.0-x86.tar.gz
# wget http://download.openvz.org/template/precreated/debian-6.0-x86_64.tar.gz

Após feito o download dos Templates, podemos enfim, criar nossas VPS.

Vamos criar então nossa primeira VPS usando o Debian 6 AMD64:

# vzctl create 101 --ostemplate debian-6.0-amd64-minimal --config basic
Por exemplo: O '101' deve ser um ID único, cada máquina virtual deve ter seu próprio ID único.

Você pode usar a última parte do endereço IP da máquina virtual para isso. Por exemplo, se o endereço IP da máquina virtual é 192.168.254.101, você usa 101 como o ID.

O critério para escolha e uso do ID, fica a seu dispor. Porém, por padrão, o OpenVZ aceita apenas IDs acima de 100 ... Então, de 101 em diante, você pode usar estas numerações como melhor preferir.

Configurando o VPS para iniciar junto com o sistema/Boot:

# vzctl set 101 --onboot yes --save

Definindo IP e Hostname para VPS:

# vzctl set 101 --hostname vps.cirinho.com.br --save
# vzctl set 101 --ipadd 192.168.254.101 --save
# vzctl set 101 --ipadd 192.168.254.102 --save


Limitando o número máximo de sockets para 120, e definindo os servidores DNS:

# vzctl set 101 --numothersock 120 --save
# vzctl set 101 --nameserver 4.4.4.4 --nameserver 8.8.8.8 --save


Para iniciar a VPS:

# vzctl start 101

Para definir uma senha de Root para a VPS:

# vzctl exec 101 passwd (Escolha a senha)

Para entrar na VPS, você pode fazer de duas maneiras:

- A primeira é conectar-se via SSH no IP da mesma, como se a máquina virtual fosse uma máquina física.

- A segunda maneira e menos aconselhável, é a partir da máquina principal/dedicada/host entrar na VPS.

Obs.: Note que pode não ser seguro, pois a VPS não reconhecerá que você está conectado, nem mesmo como Root (embora sua autoridade/acessos seja de Root na VPS), e não salvará Logs do que você fez no History...

Entrando na VPS:

# vzctl enter 101

Para sair, basta digitar:

# exit (Retorna para a máquina principal)

Para desligar a VPS:

# vzctl stop 101

Para reiniciar a VPS:

# vzctl restart 101

Para destruir e remover a VPS:

# vzctl destroy 101

Para obter uma lista de todas as VPS e o seu status, digite:

# vzlist -a

      CTID      NPROC STATUS    IP_ADDR         HOSTNAME
       101         45 running   199.19.106.136  mp3x.vircio.org
       102         63 running   199.19.106.236  cpanel.vircio.org


Este é o meu exemplo. Note que as VPS possuem IPs públicos e válidos, mas pode ser IPs de rede locais, tipo: 10.0.0.1, ou: 192.168.254.1.

Para saber mais sobre o comando VZCTL, digite:

# man vzctl (Está todo em inglês)

Outros comandos

Esqueci alguns comandos básicos para limitar os recursos das VPS, tais como HD, Memória, Swap e outros. Vou por apenas os mais importantes/interessantes.

Limitando o uso de memória:

# vzctl set 101 --privvmpages 512M:1024M --save

- O primeiro valor é a quantidade de memória garantida para a VPS.

- O segundo valor é a quantidade de memória que a VPS; independentemente da situação, pode utilizar.

Observe então, o limite máximo de memória do sistema principal e quantas VPS você tem instalada e as configurações de cada VPS para não ter problemas.

Diferente do XEN, que faz um controle rígido e rigoroso, não só limitando como principalmente RESERVANDO a memória o OpenVZ apenas limita.

Se você, por valores maiores do que o realmente tem, e tiver várias VPS e colocar valores que possam ultrapassar, poderá ter problemas. Então, fica por sua conta e risco, use o bom senso em cada caso e faça você mesmo o controle/divisão de acordo com a quantidade de memória que você tem disponível e a quantidade de VPS.

Limitando o tempo de CPU (em porcentagem):

# vzctl set 101 --cpulimit 25% --save

Limitando o uso do disco:

# vzctl set 101 --diskspace 10G:12G --save

Note que o primeiro e segundo parâmetro, seguem a mesma lógica do uso da memória.

Limitando/Configurando o Swap:

# vzctl set 101 --swappages 0:1024M --save

Instalando o WebAdmin

# wget -O - http://ovz-web-panel.googlecode.com/svn/installer/ai.sh | sh

Acesse no seu navegador: http://192.168.254.1:3000/

Login: admin

Senha: admin

Mude a senha, se quiser, crie outros usuários e vincule cada VPS a um usuário/administrador. Note que o IP 192.168.254.1, digamos que seja o IP de sua máquina principal/dedicada.

Não abordarei o uso do WebAdmin, até por quê eu achei na Internet e apenas instalei. Ainda estou explorando, porém, ele tem a opção da linguagem em português e dá muitas opções de configuração de modo intuitivo, no clica-clica.

Divirta-se!

Referências


Espero que tenha agradado e ajude a todos.

Caso desejem alugar minhas VPS, entrem em contato: cirinho[at]canalbahia.net

Abraços,
Ciro Roberto
Página anterior    

Páginas do artigo
   1. Instalação e preparação do Debian
   2. OpenVZ, Comandos e WebAdmin
Outros artigos deste autor

Rodando um servidor de IRC (ircd)

Montando sua Web Rádio no Linux com DJ Automático

Dhcp3-server e Bind9 no Debian 5 Lenny Linux

Dhcp3-server e Bind9 no Debian 4 Etch Linux

Leitura recomendada

Compilação de Kernel baseado na versão 2.6 para o LTSP 4.2

Compilação do kernel passo-a-passo

Compilação do kernel v3.x no CentOS e Debian

Slackware com kernel 2.6.10 - passo a passo

Kernel Hacking (RootKits)

  
Comentários
[1] Comentário enviado por altairmsouza em 30/03/2012 - 15:11h

Ciro, Parabéns pelo artigo, irei implementar num servidor de testes.

Dúvida: pelo que pesquisei sobre OpenVZ, ele permite virtualizar somente linux, esta correto ?

Caso seja possível virtualizar windows, como poderei faze-lo ?


Abraço, e continue escrevendo.

[2] Comentário enviado por cirinho em 30/03/2012 - 16:54h

Sim somente o linux.

Se você deseja virtualizar windows ou outros so deve utilizar outros software virtualizadores, tais como virtuabox, vmware.

Se eu não estou errado/engando (não posso afirmar com certeza) o vmware e virtualbox usam códigos do openvz como base (talvez eu esteja errado, mas tenho quase certeza que eles usam), porém o openvz só permite por padrão virtualizar linux.

[3] Comentário enviado por darkevil em 10/08/2012 - 14:58h

Pessoal consegui fazer rodar o OpenVZ com essas aulas.

http://www.pbsys.com.br/products.php?product=Video-Tutorial-OpenVZ-%252d-Cria%E7%E3o-de-VPS-Pr%F3pri...

Abraços

[4] Comentário enviado por digicontrol em 04/09/2012 - 14:37h

Alguém sabe onde encontro os endereço de repositórios para tentar instalar o openvz no ubuntu server 12.04???

[5] Comentário enviado por rodrigoadachi em 12/10/2012 - 08:51h

No CentOS (10.0.0.100) eu consigo pingar o VS 101 com o ip 10.0.0.101 de fora consigo pingar o CentOS + ñ consigo pingar o 101, tenho que configurar algo no CentOS ainda?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts