6. Virtualization
This section contains information about updates made to Red Hat Enterprise Linux suite of Virtualization tools.
6.1. Feature Updates
- O kit de ferramentas do espaço do usuário do blktap (blocktap) foi atualizado, fornecendo o recurso de monitorar as estatísticas de transferência de convidados virtualizados do blktap salvo.
- Foi adicionado suporte para o recurso Extended Page Table (EPT), aprimorando o desempenho dos convidados totalmente virtualizados em hardwares que suportam EPT.
- emulação de dispositivo de rede
e1000
para convidados foi adicionada nesta atualização, suportando somente convidados Windows 2003 na arquitetura ie64. Para usar emulação e1000, deve-se usar o comando xm. - Os drivers para
virtio
, a plataforma para a virtualização de E/S em KVM foi retornada ao Red Hat Enterprise LInux 5.3 a partir do LInux Kernel 2.6.27. Estes drivers ativarão os convidados do KVM para alcançar níveis mais altos de desempenho de E/S. Diversos componentes de userspace como o:anaconda
,kudzu
,lvm
,selinux
emkinitrd
também foram atualizados para suportar os dispositivos do virtio. - O kernel LInux nativo suporta o
vmcoreinfo
automaticamente, mas para configurar o kdump em domínios dom0, o pacotekernel-xen-debuginfo
era necessário. Com esta versão, o kernel e hypervisor foram modificados e agora suportam o vmcoreinfo lendo e gravando o kdump originalmente. Os usuários que precisam usar o kdump para depurar ou para outras investigações nos domínios dom0, podem agora fazê-lo sem instalar os pacotesdebuginfo
oudebuginfo-common
- Os convidados do Red Hat Enterprise Linux 5 virtualizados encontraram um desempenho suboptimal ao usar discos emulados e dispositivos de rede. Nesta atualização, o pacote do kmod-xenpv foi incluído para simplificar o uso dos discos paravirtualizados e redes em convidados totalmente virtualizados.O uso destes drivers em convidados totalmente virtualizados pode aprimorar de forma significante o desempenho e funcionalidade de convidados totalmente virtualizados. Os reparos de erros feitos para drivers de netfront e bloco front são imediatamente realizados e sincronizados com o pacote do kernel.
- Os convidados possuem agora a habilidade de usar as tabelas de memória de página de back up de 2MB, o qual aprimora o desempenho de sistema.
6.2. Resolved Issues
6.2.1. All Architectures
- Fechar um convidado paravirtualizado pode fazer com que dom0 pare de responder por um tempo. Convidados com um volume muito grande de memória (ex.: 12GB e acima), experienciam atrasos de alguns segundos. Nesta atualização, o kernel virtualizado permite o fechamento de um convidado paravirtualizado grande, a ser pré-esvaziável, o qual resolve este problema.
crash
was unable to read the relocation address of the hypervisor from a vmcore file. Consequently, opening a Virtualized kernel vmcore file with crash would fail, resulting in the error:crash: cannot resolve "idle_pg_table_4"
In this update, the hypervisor now saves the address correctly, which resolves this issue.- Anteriormente, os convidados paravirtualizados podiam somente ter um máximo de 16 dispositivos de disco. Nesta atualização, este limite foi aumentado para um máximo de dispositivos de disco de 256.
- A memória reservado para o kernel do kdump estava incorreta, resultando em
- Anexar um disco com um nome específico (ex.:
/dev/xvdaa
,/dev/xvdab
,/dev/xvdbc
etc.) à um convidado paravirtualizado resultava em um dispositivo corrompido do/dev
dentro do convidado. Esta atualização resolve o problema para que anexar discos com estes nomes à um convidado paravirtualizado cria o dispositivo adequado do/dev
dentro do convidado. - Anteriormente, o número de dispositivos de loopback era limitado a 4. Consequentemente, isto limitava a habilidade de criar pontes em sistemas com mais de 4 interfaces de rede. Nesta atualização, o driver
netloop
agora cria dispositivos de loopback adicionais como requerido. - Uma condição de concorrência pode ocorrer ao criar e destruir dispositivos de rede virtual. Em algumas circunstâncias, especialmente em situações de carga alta, isto pode fazer com que o dispositivo virtual não responda. Nesta atualização, o estado do dispositivo virtual é checado para evitar que a condição de concorrência ocorra.
- um vazamento de memória no
virt-manager
era encontrado se o aplicativo ficasse aberto. Consequentemente, o aplicativo consumiria mais recursos constantemente, o que levaria à falta de memória. Nesta atualização, o vazamento foi reparado, o que resolve este problema. - the
crash
utility could not analyzex86_64
vmcores from systems runningkernel-xen
because the Red Hat Enterprise Linux hypervisor was relocatable and the relocated physical base address is not passed in the vmcore file's ELF header. The new--xen_phys_start
command line option for the crash utility allows the user to pass crash the relocated base physical address. - Nem todas as atividades de mouse eram capturadas e processadas pelo
Paravirtual Frame Buffer (PVFB)
. Consequentemente, a barra de rolamento não funcionava quando interagia com o convidado paravirtualizado com oVirtual Machine Console
. Nesta atualização as atividades do mouse da barra de rolamento são agora manuseadas corretamente, o qual resolve este problema. - O uso da tecnologia de Virtualização em uma máquina com muitas CPUs pode ter travado o hypervisor durante a instalação de convidado. Nesta atualização, este problema foi resolvido.
- Nos processadores Intel que retornam um valor 6 da família CPUID, somente um registro de contador de desempenho era ativado em
kernel-xen
. Consequentemente, somente o contador 0 fornecia amostras. Nesta atualização, este problema foi resolvido.
6.2.2. x86 Architectures
- On systems with newer CPU's, the CPU APIC ID differs from the CPU ID. Consequently, the virtualized kernel was unable to initialize CPU frequency scaling. In this update, the virtualized kernel now retrieves CPU APIC ID from the hypervisor, allowing CPU frequency scaling to be initialized properly.
- Ao executar um convidado x86 paravirtualizado, se um processo acessasse memória inválida, ele executaria um loop ao invés de obter um sinal de SEGV. Isto causava uma falha na forma as verificações que execshield eram realizadas sob o hypervisor. Nesta atualização, este problema foi resolvido.
6.2.3. ia64 Architecture
- A
xend
bug that previously caused guest installation failures is now fixed. - o dispositivo de canal de evento
evtchn
não possuía bloqueios e barreiras de memória suficientes. Isto fez com que o xenstore se tornasse irresponsável. Nesta atualização, este problema foi resolvido. - Informações de Acesso de Memória Não Uniforme (NUMA) não estava sendo exibido pelo comando
xm info
. Consequentemente, o valornode_to_cpu
para cada nó era retornado de forma incorreta comono cpus
. Nesta atualização, este problema foi resolvido. - Anteriormente, criar um convidado em uma Máquina Virtual de Hardware (HVM) falharia em processadores que incluem a tecnologia VT-i2. Nesta atualização, este problema foi resolvido.
6.2.4. x86_64 Architectures
- Quando o IRQs Dinâmico disponível para máquinas virtuais de convidados estiverem cheios, o kernel do
dom0
travava. Nesta atualização, a condição de travamento foi reparada, e o número de IRQs disponíveis foram aumentados, o qual resolve este problema. - On systems with newer CPU's, the CPU APIC ID differs from the CPU ID. Consequently, the virtualized kernel was unable to initialize CPU frequency scaling. In this update, the virtualized kernel now retrieves CPU APIC ID from the hypervisor, allowing CPU frequency scaling to be initialized properly.
6.3. Known Issues
6.3.1. All Architectures
- A mídia de drive de diskette, não estará acessível ao usar um kernel virtualizado. Para resolver este problema, use o drive de diskette de USB em anexo.Observe que a mídia de drive de diskette funciona bem com outros kernels não virtualizado.
- In live migrations of paravirtualized guests, time-dependent guest processes may function improperly if the corresponding hosts' (dom0) times are not synchronized. Use NTP to synchronize system times for all corresponding hosts before migration.
- Se você migrar um convidado paravirtualizado entre duas máquinas repetidas vezes, pode ocorrer uma pane na máquina. Se a máquina for reinicializada após migrar um convidado para fora do sistema e antes de retornar o mesmo convidado, a pane não ocorrerá.
- Se você formatar um disco quando executar o Windows 2008 ou Windows Vista como um convidado, ele poderá trabar quando convidado for inicializado com CPUs virtuais múltiplas. Para resolver este problema, inicialize o convidado com uma CPU virtual única ao formatar.
- Convidados totalmente virtualizados criados pelo
virt-manager
podem travar o mouse. Para resolver este problema, use ovirt-manager
para configurar um dispositivo de tablete USB para o convidado. - Deve-se restringir um máximo de CPUs em menos de 128 quando estiver em um sistema de CPU maior do que 128. O máximo de suporte nesta vez é 126. Use o argumento de hypervisor
maxcpus=126
para limitar o Hypervisor em 126. - Convidados totalmente virtualizados não conseguem recuperar o tempo perdido pois o domínio é pausado e iniciado novamente. Ser capaz de rastrear corretamente o tempo durante eventos de pausa e início é uma das vantagens dos kernels paravirtualizados. Este problema está recebendo upstream com timers substituíveis, assim os convidados totalmente virtualizados terão timer paravirtualizados. Atualmente, este código está em desenvolvimento e deve estar disponível em versões posteriores do Red Hat Enterprise Linux.
- Migração repetida de convidados paravirtualizados pode resultar em mensagens de
bad mpa
no consoledom0
. Em alguns casos, o hypervisor pode também travar.Para evitar que o kernel do hypervisor trave, reinicie os convidados migrados quando as mensagens do bad mpa aparecerem. - Ao configurar o link de interface em
dom0
, o script donetwork-bridge
padrão, pode fazer com que interfaces de rede vinculadas alternarem alternativamente entreunavailable
eavailable
. Isto é geralmente conhecido como flapping.Para evitar isto, substitua o a linhanetwork-script
padrão em/etc/xen/xend-config.sxp
pela seguinte linha:(network-script network-bridge-bonding netdev=bond0)
Ao fazer isto, o dispositivo netloop será desabilitado, o qual evita o monitoramente do Address Resolution Protocol (ARP) de falhar durante o processo de transferência de endereço. - When running multiple guest domains, guest networking may temporarily stop working, resulting in the following error being reported in the dom0 logs:
Memory squeeze in netback driver
To work around this, raise the amount of memory available to the dom0 with thedom0_mem
hypervisor command line option.
6.3.2. x86 Architectures
- Migrating paravirtualized guests through
xm migrate [domain] [dom0 IP address]
does not work. - When installing Red Hat Enterprise Linux 5 on a fully virtualized SMP guest, the installation may freeze. This can occur when the host (
dom0
) is running Red Hat Enterprise Linux 5.2.Para evitar que isto aconteça, configure o convidado para usar um processador único, usando o instalador. Você pode fazer isto usando a opção--vcpus=1
emvirt-install
. Depois de concluída a instalação, você poderá configurar o convidado para SMP, modificando ovcpus
alocado em virt-manager.
6.3.3. x86_64 Architectures
- Migrating paravirtualized guests through
xm migrate [domain] [dom0 IP address]
does not work. - Installing the Virtualization feature may cause a
time went backwards
warning on HP systems with model numbers xw9300 and xw9400.Para contornar este problema em máquinas xw9400, configure o BIOS para habilitar o timer HPET. Note que esta opção não está disponível em máquinas xw9300. - Installing Red Hat Enterprise Linux 3.9 on a fully virtualized guest may be extremely slow. In addition, booting up the guest after installation may result in
hda: lost interrupt
errors.Para evitar este erro de inicialização, configure o convidado para usar o kernel SMP. - Upgrading a host (
dom0
) system to Red Hat Enterprise Linux 5.2 may render existing Red Hat Enterprise Linux 4.5 SMP paravirtualized guests unbootable. This is more likely to occur when the host system has more than 4GB of RAM.Para resolver este problema, inicialize cada convidado Red Hat Enterprise Linux 4.5 em um módulo da CPU único e atualize seu kernel para a versão mais recente (para Red Hat Enterprise Linux 4.5z).
6.3.4. ia64 Architecture
- Migrating paravirtualized guests through
xm migrate [domain] [dom0 IP address]
does not work. - On some Itanium systems configured for console output to VGA, the
dom0
virtualized kernel may fail to boot. This is because the virtualized kernel failed to properly detect the default console device from the Extensible Firmware Interface (EFI) settings.Quando isto acontecer, você pode contornar este problema adicionando o parâmetro de inicializaçãoconsole=tty
às opções de inicialização do kernel em/boot/efi/elilo.conf
. - On some Itanium systems (such as the Hitachi Cold Fusion 3e), the serial port cannot be detected in
dom0
when VGA is enabled by the EFI Maintenance Manager. As such, you need to supply the following serial port information to thedom0
kernel:- Velocidade em bits/segundos.
- Número de bits de dados
- Paridade
- endereço
io_base
Estes detalhes devem ser especificados na linha doappend=
do kernel dodom0
no/boot/efi/elilo.conf
. Por exemplo:append="com1=19200,8n1,0x3f8 -- quiet rhgb console=tty0 console=ttyS0,19200n8"
Neste exemplo ocom1
é a porta em série,19200
é a velocidade (em bits/segundos),8n1
especifica o número de configurações de paridade/bits de dados, e o0x3f8
é oio_base
- Virtualization does not work on some architectures that use Non-Uniform Memory Access (NUMA). As such, installing the virtualized kernel on systems that use NUMA will result in a boot failure.Alguns números de instalação, já instalam por padrão o kernel virtualizado. Se você possuir tal número e seu sistema usar o NUMA (ou não puder desabilitar o NUMA), desmarque a opção Virtualização durante a instalação.
- Currently, live migration of fully virtualized guests is not supported on this architecture. In addition,
kexec
andkdump
are also not supported for virtualization on this architecture.