Migração VM

14 views
Skip to first unread message

Fernando Scain

unread,
Oct 19, 2009, 11:12:55 AM10/19/09
to xen-br
Boa tarde a todos,

Gostaria de auxílo na migração de maquins vituais com o Xen:

- Xen versão Xen 3.2.1-rc1-pre instalado no Ubunto 8.04 em duas
máquinas;
- Migração de uma máquina virtual com opção de Live Migration;
- Migração de uma outra máquina virtual sem a opção de Live Migration;

Ocorre que:

- Ambas as VMs estão em execuçlão na máquina física A e estão
habilitadas no gerenciador;
- O comando para migração é executado (um com opção para Live
Migration e o outro não);
- As VMs habilitadas no monitor da máquina física A passam a ser
habilitadas no gerenciador da máquina física B;
- O processo de migração já está sendo executado a mais de 72 horas,
sendo que não é exibida nenhuma mensagem de erro, mas as máquinas não
são habilitadas para serem utilizadas na máquina física B;

Há algo que possa ser verificado para saber o que está ocorrendo?

Caso exista mais alguma informação relevante a ser enviada, por favor
solicitem.

Muito obrigado

Fernando A. Scain


Abaixo estou enviado o tamanho das máquinas e o comando xentop na
máquina de destino (máquina física B):

MÁQUINA TESTE2
-----------------------------
root@xensrv1:/vms/domains/teste2# ls -l
total 870660
-rw-r--r-- 1 root root 2147483648 2009-10-06 19:19 disk.img
-rw-r--r-- 1 root root 268435456 2009-10-01 21:18 swap.img
root@xensrv1:/vms/domains/teste2#

MÁQUINA TESTE4
----------------------------
root@xensrv1:/vms/domains/teste4# ls -l
total 725884
-rw-r--r-- 1 root root 838860800 2009-10-07 20:06 disk.img
-rw-r--r-- 1 root root 268435456 2009-10-07 19:28 swap.img
root@xensrv1:/vms/domains/teste4#

XENTOP
-------------
xentop - 18:27:38 Xen 3.2.1-rc1-pre
3 domains: 1 running, 1 blocked, 0 paused, 0 crashed, 0 dying, 0
shutdown
Mem: 981564k total, 981240k used, 324k free CPUs: 1 @ 2193MHz
NAME STATE CPU(sec) CPU(%) MEM(k) MEM(%) MAXMEM(k) MAXMEM
(%) VCPUS NETS NETTX(k) NETRX(k) VBDS VBD_OO VBD_RD VBD_WR SSID
Domain-0 -----r 24746 21.0 830464 84.6 no limit
n/a 1 4 0 0 0 0 0 0 32
Net0 RX: 0bytes 0pkts 0err 0drop
TX: 0bytes 0pkts 0err 0drop
Net1 RX: 0bytes 0pkts 0err 0drop
TX: 0bytes 0pkts 0err 0drop
Net2 RX: 0bytes 0pkts 0err 0drop
TX: 0bytes 0pkts 0err 0drop
Net3 RX: 0bytes 0pkts 0err 0drop
TX: 0bytes 0pkts 0err 0drop
NAME STATE CPU(sec) CPU(%) MEM(k) MEM(%) MAXMEM(k) MAXMEM
(%) VCPUS NETS NETTX(k) NETRX(k) VBDS VBD_OO VBD_RD VBD_WR SSID
teste2 --b--- 1549 0.7 65536 6.7 65536
6.7 1 1 947 3121824 0 0 0 0 32
Net0 RX: 3196748276bytes 31400335pkts 0err 22956drop TX:
970696bytes 2961pkts 0err 0drop
NAME STATE CPU(sec) CPU(%) MEM(k) MEM(%) MAXMEM(k) MAXMEM
(%) VCPUS NETS NETTX(k) NETRX(k) VBDS VBD_OO VBD_RD VBD_WR SSID
teste4 ------ 1189 0.7 65536 6.7 65536
6.7 1 1 0 1914478 0 0 0 0 32
Net0 RX: 1960426184bytes 18078907pkts 0err 23679drop
TX: 0bytes 0pkts 0err 0drop

Reinaldo de Carvalho

unread,
Oct 19, 2009, 11:20:36 AM10/19/09
to xen...@googlegroups.com
2009/10/19 Fernando Scain <fernand...@gmail.com>:

>
> Boa tarde a todos,
>
> Gostaria de auxílo na migração de maquins vituais com o Xen:
>
> - Xen versão Xen 3.2.1-rc1-pre instalado no Ubunto 8.04 em duas
> máquinas;
> - Migração de uma máquina virtual com opção de Live Migration;
> - Migração de uma outra máquina virtual sem a opção de Live Migration;
>
[...]

> - O processo de migração já está sendo executado a mais de 72 horas,
> sendo que não é exibida nenhuma mensagem de erro, mas as máquinas não
> são habilitadas para serem utilizadas na máquina física B;
>
> Há algo que possa ser verificado para saber o que está ocorrendo?
>
> Caso exista mais alguma informação relevante a ser enviada, por favor
> solicitem.
>
[...]

>
> Abaixo estou enviado o tamanho das máquinas e o comando xentop na
> máquina de destino (máquina física B):
>
> MÁQUINA TESTE2
> -----------------------------
> root@xensrv1:/vms/domains/teste2# ls -l
> total 870660
> -rw-r--r-- 1 root root 2147483648 2009-10-06 19:19 disk.img
> -rw-r--r-- 1 root root  268435456 2009-10-01 21:18 swap.img
> root@xensrv1:/vms/domains/teste2#
>
> MÁQUINA TESTE4
> ----------------------------
> root@xensrv1:/vms/domains/teste4# ls -l
> total 725884
> -rw-r--r-- 1 root root 838860800 2009-10-07 20:06 disk.img
> -rw-r--r-- 1 root root 268435456 2009-10-07 19:28 swap.img
> root@xensrv1:/vms/domains/teste4#
>

- Como você esta sincronizando estes arquivos entre as máquinas? Para
fazer livre-migration recomenda-se uso de storage ou caso não seja
possível, uso de ATA-over-ethernet com as imagens centralizadas em uma
máquina na rede.

- Existe firewall que impeça conexão nas portas do xend (de controle e
relocation) da máquina de origem do Guest para a máquina de destino?

--
Reinaldo de Carvalho
http://korreio.sf.net
http://python-cyrus.sf.net

"Don't try to adapt the software to the way you work, but rather
yourself to the way the software works" (myself)

Fernando Scain

unread,
Oct 19, 2009, 9:33:34 PM10/19/09
to xen-br
Boa noite Reinaldo,

Obrigado por sua atenção.

- No caso da migração da VM com live migration estou sincronizando de
uma máquina para a outra diretamente, não estou utilizando storage;

- O detalhe é que na migração da outra VM na qual não estou utilizando
live migration a VM também não migrou, sendo que estava em execução
normalmente na máquina A e estou migrando para a máquina B;

- Não existe firewall ativado em nenhuma das duas máquinas origem e
destino.

Se puder me ajudar lhe agradeço.

Muito obrigado

Fernando A. Scain

On 19 out, 12:20, Reinaldo de Carvalho <reinal...@gmail.com> wrote:
> 2009/10/19 Fernando Scain <fernando.sc...@gmail.com>:
> Reinaldo de Carvalhohttp://korreio.sf.nethttp://python-cyrus.sf.net

Reinaldo de Carvalho

unread,
Oct 19, 2009, 9:41:43 PM10/19/09
to xen...@googlegroups.com
2009/10/19 Fernando Scain <fernand...@gmail.com>:

>
> Boa noite Reinaldo,
>
> Obrigado por sua atenção.
>
> - No caso da migração da VM com live migration estou sincronizando de
> uma máquina para a outra diretamente, não estou utilizando storage;
>

Como? qual comando?

Se você copiou com a máquina no ar, o arquivo deve corromper.

> - O detalhe é que na migração da outra VM na qual não estou utilizando
> live migration a VM também não migrou, sendo que estava em execução
> normalmente na máquina A e estou migrando para a máquina B;
>
> - Não existe firewall ativado em nenhuma das duas máquinas origem e
> destino.
>

As máquinas estão na mesma rede? existe firewall entre as redes? Teste
a conectividade:

# telnet maquina2 8006

A versão do Hypervisor e do xend são a mesma?

--
Reinaldo de Carvalho
http://korreio.sf.net

Fernando Scain

unread,
Oct 21, 2009, 7:44:18 AM10/21/09
to xen-br
Bom dia Ronaldo,

Para a opção com live migration estou executando ocomando na máquina
de origem:
xm migrate -live <ID_DOMINIO_ORIGEM> <IP_MAQUINA_DESTINO>

Para a opção sem o live migration na máquina de origem:
xm migrate <ID_DOMINIO_ORIGEM> <IP_MAQUINA_DESTINO>

Você mencinou: "Se você copiou com a máquina no ar, o arquivo deve
corromper."
- Mas para live migration a máquina pode estar em execução
- E se você não utilizar a opção de live migration caso a máquina
esteja no ar ela é parada e a migração iniciada.

As máquinas estão na mesma rede e não tem firewaal ativo, nas duas
máquinas foi instalada as mesmas versões e ambas estão se
"enchergando".

O que mais eu poderia verificar por favor?

Você teria um arquivo de configuração para ser utilizado com live
migration, para me enviar?

Obrigado

Fernando A. Scain



On 19 out, 22:41, Reinaldo de Carvalho <reinal...@gmail.com> wrote:
> 2009/10/19 Fernando Scain <fernando.sc...@gmail.com>:
>
>
>
> > Boa noite Reinaldo,
>
> > Obrigado por sua atenção.
>
> > - No caso da migração da VM com live migration estou sincronizando de
> > uma máquina para a outra diretamente, não estou utilizando storage;
>
> Como? qual comando?
>
> Se você copiou com a máquina no ar, o arquivo deve corromper.
>
> > - O detalhe é que na migração da outra VM na qual não estou utilizando
> > live migration a VM também não migrou, sendo que estava em execução
> > normalmente na máquina A e estou migrando para a máquina B;
>
> > - Não existe firewall ativado em nenhuma das duas máquinas origem e
> > destino.
>
> As máquinas estão na mesma rede? existe firewall entre as redes? Teste
> a conectividade:
>
> # telnet maquina2 8006
>
> A versão do Hypervisor e do xend são a mesma?
>
> --
> Reinaldo de Carvalhohttp://korreio.sf.nethttp://python-cyrus.sf.net

Reinaldo de Carvalho

unread,
Oct 21, 2009, 7:52:31 AM10/21/09
to xen...@googlegroups.com
2009/10/21 Fernando Scain <fernand...@gmail.com>:

>
> Bom dia Ronaldo,
>
> Para a opção com live migration estou executando ocomando na máquina
> de origem:
> xm migrate -live <ID_DOMINIO_ORIGEM> <IP_MAQUINA_DESTINO>
>
> Para a opção sem o live migration na máquina de origem:
> xm migrate <ID_DOMINIO_ORIGEM> <IP_MAQUINA_DESTINO>
>
> Você mencinou: "Se você copiou com a máquina no ar, o arquivo deve
> corromper."
> - Mas para live migration a máquina pode estar em execução
> - E se você não utilizar a opção de live migration caso a máquina
> esteja no ar ela é parada e a migração iniciada.
>

O migrate não migra conteudo do disco do guest.

Como você duplicou as imagens nas duas máquinas?

--
Reinaldo de Carvalho
http://korreio.sf.net

Fernando Scain

unread,
Oct 21, 2009, 8:50:44 AM10/21/09
to xen-br
Ronaldo,

Desculpe, não sei se entendi seu questionamento, mas:

- Tenho as duas máquinas instaladas com o xen, máquina ORIGEM e
DESTINO;
- Criei duas VM´s na máquina de ORIGEM;
- Estou tentando migrar estas VM´s da máquina de ORIGEM para a máquina
de DESTINO com os comandos conforme leh falei.

Obrigado

Fernando

On 21 out, 08:52, Reinaldo de Carvalho <reinal...@gmail.com> wrote:
> 2009/10/21 Fernando Scain <fernando.sc...@gmail.com>:
>
>
>
>
>
> > Bom dia Ronaldo,
>
> > Para a opção com live migration estou executando ocomando na máquina
> > de origem:
> > xm migrate -live <ID_DOMINIO_ORIGEM> <IP_MAQUINA_DESTINO>
>
> > Para a opção sem o live migration na máquina de origem:
> > xm migrate <ID_DOMINIO_ORIGEM> <IP_MAQUINA_DESTINO>
>
> > Você mencinou: "Se você copiou com a máquina no ar, o arquivo deve
> > corromper."
> > - Mas para live migration a máquina pode estar em execução
> > - E se você não utilizar a opção de live migration caso a máquina
> > esteja no ar ela é parada e a migração iniciada.
>
> O migrate não migra conteudo do disco do guest.
>
> Como você duplicou as imagens nas duas máquinas?
>
> --
> Reinaldo de Carvalhohttp://korreio.sf.nethttp://python-cyrus.sf.net

gunther boeckmann

unread,
Oct 21, 2009, 8:56:49 AM10/21/09
to xen...@googlegroups.com
Acho que ele quer saber se você possui algum tipo de Storage (SAN,iSCSI, AoE, DRBD,NFS etc.) que compartilhe os Discos Virtuais entre os Hosts para que o Live Migration possa funcionar.

Gunther


2009/10/21 Fernando Scain <fernand...@gmail.com>

Reinaldo de Carvalho

unread,
Oct 21, 2009, 9:11:06 AM10/21/09
to xen...@googlegroups.com
2009/10/21 Fernando Scain <fernand...@gmail.com>:
>
> Ronaldo,
>

Quem é Ronaldo?

> Desculpe, não sei se entendi seu questionamento, mas:
>
> - Tenho as duas máquinas instaladas com o xen, máquina ORIGEM e
> DESTINO;
> - Criei duas VM´s na máquina de ORIGEM;
> - Estou tentando migrar estas VM´s da máquina de ORIGEM para a máquina
> de DESTINO com os comandos conforme leh falei.
>

A área de disco (armazenamento) utilizada pela máquina virtual deve
ser acessível a partir das duas máquinas (origem e destino) através do
mesmo caminho (seja para arquivos de imagem ou devices).

Por isso o mais recomendado é utilizar storages, AoE (ATA over
ethernet), iSCSI, DRBD, etc. Vale lembrar que AoE e o iSCSI não
depende de equipamento (hardware) é só instalar o servidor (apt) em
uma máquina que armazenará os dados e o cliente nos dom0 (apt). É algo
mais interessante que o NFS.


--
Reinaldo de Carvalho
http://korreio.sf.net

Fernando Scain

unread,
Oct 21, 2009, 9:14:25 AM10/21/09
to xen-br

Não estou utilizando Storage.

Mas eu fiz dois testes um com live migration e outro não, ocorre que
as VM´s não são migradas nos dois casos, elas aparecem no gerenciador
e pelo comando xentop na máquina DESTINO, mas não são habilitadas (eu
inicio elas mas o prompt não é liberado.)

A live migration SÓ IRÁ FUNCIONAR COM STORAGE?

Se eu tiver dois servidores com xem instalado e uma VM sendo executada
em um deles e quiser migrar ela para outro servidor com live migration
NÂO IRÀ FUNCIONAR?

Obrigado

Fernando

On 21 out, 09:56, gunther boeckmann <guntherboeckm...@gmail.com>
wrote:
> Acho que ele quer saber se você possui algum tipo de Storage (SAN,iSCSI,
> AoE, DRBD,NFS etc.) que compartilhe os Discos Virtuais entre os Hosts para
> que o Live Migration possa funcionar.
>
> Gunther
>
> 2009/10/21 Fernando Scain <fernando.sc...@gmail.com>

Marco Sinhoreli

unread,
Oct 21, 2009, 9:20:47 AM10/21/09
to xen...@googlegroups.com
Existem diversos aspectos que te impedem de fazer a migração live na
sua abordagem:

1- O VBD do SO da VM está em constante mudança
2- O VBD da swap tb é bastante dinamico

Teoricamente não haveria problemas se vc fizesse algumas gambiarras
como deixar o VBD do SO read-only e sem swap e mapear todo os
diretórios dinâmicos do SO como /tmp /var/tmp por exemplo em ramfs.
Não sei se funcionaria e não deixaria de ser gambiarra.

Como todos os colegas estão aconselhando, a utilização de discos
remotos seria o caminho natural, mais adequado e enterprise para o que
vc deseja fazer.

abs

2009/10/21 Reinaldo de Carvalho <rein...@gmail.com>:
--
Marco Sinhoreli

Edson Marquezani Filho

unread,
Oct 21, 2009, 9:21:05 AM10/21/09
to xen...@googlegroups.com
2009/10/21 Fernando Scain <fernand...@gmail.com>:

>
>
> Não estou utilizando Storage.
>
> Mas eu fiz dois testes um com live migration e outro não, ocorre que
> as VM´s não são migradas nos dois casos, elas aparecem no gerenciador
> e pelo comando xentop na máquina DESTINO, mas não são habilitadas (eu
> inicio elas mas o prompt não é liberado.)
>
> A live migration SÓ IRÁ FUNCIONAR COM STORAGE?
>
> Se eu tiver dois servidores com xem instalado e uma VM sendo executada
> em um deles e quiser migrar ela para outro servidor com live migration
> NÂO IRÀ FUNCIONAR?
>
> Obrigado
>

Como você espera que sua máquina virtual possa ser migrada se o "disco
virtual" dela não estiver também disponível no outro host? O Xen não
transfere o(s) disco(s), mas apenas o conteúdo de memória da máquina,
a grosso modo.
Pode ser que até migre na marra, mas não vai funcionar. (Acho que já
vi isso acontecendo, migrar sem ter o disco, e funcionando por alguns
segundos, depois quebrando a máquina.)

É por isso que o pessoal falou em shared storage, ou outras
tecnologias que provem essa funcionalidade em nível de software.

Você precisaria pelo menos replicar o disco com DRBD, ou usar algumas
dos outros software mencionados pra ter esse disco disponível em ambos
os hosts.

Reinaldo de Carvalho

unread,
Oct 21, 2009, 9:22:09 AM10/21/09
to xen...@googlegroups.com
2009/10/21 Fernando Scain <fernand...@gmail.com>:

>
> Não estou utilizando Storage.
>
> Mas eu fiz dois testes um com live migration e outro não, ocorre que
> as VM´s não são migradas nos dois casos, elas aparecem no gerenciador
> e pelo comando xentop na máquina DESTINO, mas não são habilitadas (eu
> inicio elas mas o prompt não é liberado.)
>
> A live migration SÓ IRÁ FUNCIONAR COM STORAGE?
>
> Se eu tiver dois servidores com xem instalado e uma VM sendo executada
> em um deles e quiser migrar ela para outro servidor com live migration
> NÂO IRÀ FUNCIONAR?
>

"Pira paz, não quero mais".

Você tem alguma dúvida sobre a frase: "A área de disco (armazenamento)


utilizada pela máquina virtual deve ser acessível a partir das duas
máquinas (origem e destino) através do mesmo caminho (seja para

arquivos de imagem ou devices)." ?

--
Reinaldo de Carvalho
http://korreio.sf.net

Edson Marquezani Filho

unread,
Oct 21, 2009, 9:22:26 AM10/21/09
to xen...@googlegroups.com
>
> Como você espera que sua máquina virtual possa ser migrada se o "disco
> virtual" dela não estiver também disponível no outro host? O Xen não
> transfere o(s) disco(s), mas apenas o conteúdo de memória da máquina,
> a grosso modo.

Explicação: dizendo a grosso modo, não que a transferência seja a
grosso modo. =)

Marco Sinhoreli

unread,
Oct 21, 2009, 9:22:55 AM10/21/09
to xen...@googlegroups.com
2009/10/21 Fernando Scain <fernand...@gmail.com>:
>
>
> Não estou utilizando Storage.
Então vc faça um drbd! Não tem como fazer sem blocos identicos! O
checksum irá falhar e a VM nunca será migrada.

>
> Mas eu fiz dois testes um com live migration e outro não, ocorre que
> as VM´s não são migradas nos dois casos, elas aparecem no gerenciador
> e pelo comando xentop na máquina DESTINO, mas não são habilitadas (eu
> inicio elas mas o prompt não é liberado.)
>
> A live migration SÓ IRÁ FUNCIONAR COM STORAGE?
Não...

>
> Se eu tiver dois servidores com xem instalado e uma VM sendo executada
> em um deles e quiser migrar ela para outro servidor com live migration
> NÂO IRÀ FUNCIONAR?

Não, com nenhuma solução irá funcionar. Pode utilizar qq hypervisor
que não irá funcionar.
--
Marco Sinhoreli

Fernando Scain

unread,
Oct 21, 2009, 3:00:14 PM10/21/09
to xen-br
Poderia ser configurado da seguinte forma:

Utilizando NFS mantendo a mesma estrutura de diretórios (montando a
partição no servidor destino e iniciar a migração)

no server1 = /vms/disk1.img
no server2 = /vms/disk1.img (montado do /server1/vms)

Obrigado

Fernando

Fernando Scain

unread,
Oct 24, 2009, 1:52:28 PM10/24/09
to xen-br
Boa tarde,

Sei que todos são muito ocupados e tem conhecimento suficiente quando
ao assunto, estou iniciando com o xen e migração, talvez alguma
pergunta que pareça lógica para muitos possa ser essenvial para mim.

Por favor, seria possível alguém continuar me ajudando?

Desculpe Reinaldo quanto ao erro de grafia (Ronaldo).

No teste que fiz para migração (0sem live) ocorreu a mensagem:
--------------------------------------------------------------
root@xensrv1:/etc/xen# xm migrate 2 200.233.17.192
Error: /usr/lib/xen/bin/xc_save 30 2 0 0 0 failed
Usage: xm migrate <Domain> <Host>

Migrate a domain to another machine.

Options:

-h, --help Print this help.
-l, --live Use live migration.
-p=portnum, --port=portnum
Use specified port for migration.
-r=MBIT, --resource=MBIT
Set level of resource usage for migration.

root@xensrv1:/etc/xen#
----------------------------------------------------------------

Muito obrigado a todos.

Fernando A . Scain
Reply all
Reply to author
Forward
0 new messages