Virtualização · 4 min read · Jan 31, 2026

Virtualização Com KVM Em Um Servidor CentOS 5.2

Virtualização Com KVM Em Um Servidor CentOS 5.2

Versão 1.0
Autor: Falko Timme

Este guia explica como você pode instalar e usar o KVM para criar e executar máquinas virtuais em um servidor CentOS 5.2. Eu vou mostrar como criar máquinas virtuais baseadas em imagem e também máquinas virtuais que usam um volume lógico (LVM). KVM é a sigla para Máquina Virtual Baseada em Kernel e faz uso de virtualização de hardware, ou seja, você precisa de um CPU que suporte virtualização de hardware, por exemplo, Intel VT ou AMD-V.

Eu não dou nenhuma garantia de que isso funcionará para você!

1 Nota Preliminar

Estou usando um servidor CentOS 5.2 com o nome do host server1.example.com e o endereço IP 192.168.0.100 aqui como meu host KVM.

Nós também precisamos de um sistema desktop onde instalamos o virt-manager para que possamos nos conectar ao console gráfico das máquinas virtuais que instalamos. Estou usando um desktop Ubuntu 8.10 aqui.

2 Instalando KVM

Host KVM CentOS 5.2:

Execute

system-config-securitylevel

e defina o SELinux como Permissivo (virt-install não funcionará se você definir o SELinux como Desativado).

Então verifique se seu CPU suporta virtualização de hardware - se este for o caso, o comando

egrep '(vmx|svm)' --color=always /proc/cpuinfo

deve exibir algo, por exemplo, assim:

[root@server1 ~]# egrep '(vmx|svm)' --color=always /proc/cpuinfo  
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall  
 nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy misalignsse  
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall  
 nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy misalignsse  
[root@server1 ~]#

Se nada for exibido, então seu processador não suporta virtualização de hardware, e você deve parar aqui.

Agora importamos as chaves GPG para pacotes de software:

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*

Para instalar KVM e virtinst (uma ferramenta para criar máquinas virtuais), executamos

yum install kvm kmod-kvm qemu libvirt python-virtinst

Então reinicie o sistema:

reboot

Após o reinício, o módulo do kernel KVM deve ser carregado:

lsmod | grep kvm
[root@server1 ~]# lsmod | grep kvm  
kvm_amd                50452  0  
kvm                    109264  1 kvm_amd  
[root@server1 ~]#

(Esta saída é de um sistema com um processador AMD-V. Se seu sistema usar um CPU Intel VT, deve exibir algo como kvm_intel.)

Para verificar se o KVM foi instalado com sucesso, execute

virsh -c qemu:///system list

Deve exibir algo como isto:

[root@server1 ~]# virsh -c qemu:///system list  
 Id Name                 State  
----------------------------------  
  
[root@server1 ~]#

Se exibir um erro em vez disso, então algo deu errado.

Em seguida, precisamos configurar uma ponte de rede em nosso servidor para que nossas máquinas virtuais possam ser acessadas de outros hosts como se fossem sistemas físicos na rede.

Para fazer isso, instalamos o pacote bridge-utils…

yum install bridge-utils

… e configuramos uma ponte. Crie o arquivo /etc/sysconfig/network-scripts/ifcfg-br0 (por favor, use os valores BOOTPROTO, BROADCAST, IPADDR, NETMASK e NETWORK do arquivo /etc/sysconfig/network-scripts/ifcfg-eth0):

vi /etc/sysconfig/network-scripts/ifcfg-br0

| DEVICE=br0 TYPE=Bridge BOOTPROTO=static BROADCAST=192.168.0.255 IPADDR=192.168.0.100 NETMASK=255.255.255.0 NETWORK=192.168.0.0 ONBOOT=yes |

Modifique /etc/sysconfig/network-scripts/ifcfg-eth0 da seguinte forma (comente BOOTPROTO, BROADCAST, IPADDR, NETMASK e NETWORK e adicione BRIDGE=br0):

vi /etc/sysconfig/network-scripts/ifcfg-eth0

| # Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ DEVICE=eth0 #BOOTPROTO=static #BROADCAST=192.168.0.255 HWADDR=00:10:A7:05:AF:EB #IPADDR=192.168.0.100 #NETMASK=255.255.255.0 #NETWORK=192.168.0.0 ONBOOT=yes BRIDGE=br0 |

Reinicie a rede…

/etc/init.d/network restart

… e execute

ifconfig

Agora deve mostrar a ponte de rede (br0):

[root@server1 ~]# ifconfig  
br0       Link encap:Ethernet  HWaddr 00:10:A7:05:AF:EB  
          inet addr:192.168.0.100  Bcast:192.168.0.255  Mask:255.255.255.0  
          inet6 addr: fe80::210:a7ff:fe05:afeb/64 Scope:Link  
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1  
          RX packets:17 errors:0 dropped:0 overruns:0 frame:0  
          TX packets:53 errors:0 dropped:0 overruns:0 carrier:0  
          collisions:0 txqueuelen:0  
          RX bytes:1160 (1.1 KiB)  TX bytes:14875 (14.5 KiB)  
  
eth0      Link encap:Ethernet  HWaddr 00:10:A7:05:AF:EB  
          inet6 addr: fe80::210:a7ff:fe05:afeb/64 Scope:Link  
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1  
          RX packets:13662 errors:7 dropped:160 overruns:4 frame:0  
          TX packets:11646 errors:0 dropped:0 overruns:0 carrier:0  
          collisions:0 txqueuelen:1000  
          RX bytes:15144608 (14.4 MiB)  TX bytes:1379942 (1.3 MiB)  
          Interrupt:74 Base address:0xcc00  
  
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0  
          inet6 addr: ::1/128 Scope:Host  
          UP LOOPBACK RUNNING  MTU:16436  Metric:1  
          RX packets:38 errors:0 dropped:0 overruns:0 frame:0  
          TX packets:38 errors:0 dropped:0 overruns:0 carrier:0  
          collisions:0 txqueuelen:0  
          RX bytes:4308 (4.2 KiB)  TX bytes:4308 (4.2 KiB)  
  
virbr0    Link encap:Ethernet  HWaddr 00:00:00:00:00:00  
          inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0  
          inet6 addr: fe80::200:ff:fe00:0/64 Scope:Link  
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1  
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0  
          TX packets:35 errors:0 dropped:0 overruns:0 carrier:0  
          collisions:0 txqueuelen:0  
          RX bytes:0 (0.0 b)  TX bytes:9987 (9.7 KiB)  
  
[root@server1 ~]#

3 Instalando virt-viewer Ou virt-manager Em Seu Desktop Ubuntu 8.10

Desktop Ubuntu 8.10:

Precisamos de um meio de conectar ao console gráfico de nossos convidados - podemos usar o virt-manager (veja Gerenciamento de Convidados KVM Com Virt-Manager No Ubuntu 8.10) para isso. Estou assumindo que você está usando um desktop Ubuntu 8.10.

Execute

sudo aptitude install virt-manager

para instalar o virt-manager.

(Se você estiver usando um desktop Fedora 10, pode instalar o virt-manager da seguinte forma:

Torne-se root…

su

… e execute

yum install virt-manager

)

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.