KVM inicializando o kernel fora da imagem e a partição existente

4

Eu estou mudando de Xen para qemu-kvm. Minha instalação atual do Xen tem um número de volumes LVM, cada um com uma partição (em vez de uma imagem de disco completa). No Xen, inicio cada VM com uma configuração assim:

kernel = "/boot/vmlinuz-2.6.18-128.4.1.el5xen"
ramdisk = "/boot/initrd-xen-2.6.18-128.4.1.el5xen"
disk   = [ 'phy:/dev/vmdata/vm-standalone,sda1,w' ]

Agora quero reutilizar essas VMs, mas iniciá-las com o kvm. Parece que virt-install --import me deixaria fazer isso, usando --boot kernel=<kernel>,initrd=<initrd> , mas não vejo como posso instruir o virt-install para anexar o volume existente como sistema de arquivos de inicialização / raiz. Isso é possível?

    
por Bittrance 20.07.2012 / 11:12

3 respostas

1

Respostas de dynasy e Jared estão apontando na direção certa, mas deixa um pouco inexplicável.

A resposta curta para a minha pergunta é que o virt-install é perfeitamente capaz de fornecer uma partição para o sistema de inicialização. Na verdade, para dispositivos de bloco, ele não liga e apenas passa para o qemu que o configura como um dispositivo de bloco. Então o kernel usa / dev / sda (ao invés de / dev / sda1) como sistema de arquivos raiz.

A linha de comando para conseguir isso é assim:

virt-install --name nic 
  --ram 512 
  --disk /dev/vg_ext/nic-standalone
  --disk /dev/vg_ext/nic-swap
  --network bridge=br0
  --boot kernel=/boot/vmlinuz,initrd=/boot/initramfs.img,kernel_args="console=ttyS0 root=/dev/sda" 
  --serial=pty

Para fazer isso funcionar, eu tive que modificar o / etc / fstab no nic-standalone para que ele apontasse para o sistema de arquivos raiz correto e a partição swap (/ dev / sda, / dev / sdb). Kernel e initrd acima são coisas padrão do CentOS 6. (Pode haver vários parâmetros de desempenho / ajustes desejados também, eu só não cheguei tão longe ainda.)

    
por 24.07.2012 / 14:41
2

Eu tenho pesquisado esse tópico também e acabei de postar uma pergunta um pouco semelhante, mas com um escopo diferente: KVM / qemu - use o LVM volumes diretamente sem arquivo de imagem?

Para sua pergunta em particular, isso funciona: link

Em particular, -append root=/dev/sda /dev/sda3 . Eu não tentei por mim mesmo, mas parece que deveria fazer o que você quer.

    
por 23.07.2012 / 10:24
1

Basta criar uma nova VM em virt-manager ou via virsh com parâmetros semelhantes ao Xen (memória, cpu etc) e, quando solicitado a criar discos virtuais, aponte para os discos Xen existentes.

você pode precisar ajustar um pouco o fstab, poind para / dev / vdX ao invés de xvdX (ou o que o Xen usa)

Se você quiser um procedimento de mudança muito legal que cuide de tudo para você, use virt-v2v

    
por 23.07.2012 / 10:31