VMware Cloud Community
HenrikElm
Contributor
Contributor

How can a cold migration succeed?

When a host can see both source and target storage itself, I can use SvMotion to move it live. Fine.

When I turn a VM off, I can move it from a host that sees the SAN to a host that has only local storage. How can such a move succeed? Does the host that sees the SAN funnel the disk data through the VMKernel interface when the order is given from vCenter, or what?

/Henrik

Reply
0 Kudos
15 Replies
dnetz
Hot Shot
Hot Shot

The short answer would be: yes

All a cold migration does is file copy and rewriting disk (vmdk file) pointers. The sending host would be the one the VM is currently registered with, you can see this happen in the host's realtime network performance graphs in vCenter.






===

If you find this information useful, please award points for "correct" or "helpful".

Reply
0 Kudos
AWo
Immortal
Immortal

When the disk is moved to the local storage of a host which doesn't run the guest, the host would loose access to the disk. That's why you only see the shared storage and the local storage of the host where the guest is actually hosted when you choose to move the datastore while the guest is offline. That ensures access from the host to the vmdk's.

If you want to move the vmdk's to a local storage of another host you must also move the guest itself. Otherwise no access to the vmdk would be possible after the move.


AWo

VCP 3 & 4

Author @ vmwire.net

\[:o]===\[o:]

=Would you like to have this posting as a ringtone on your cell phone?=

=Send "Posting" to 911 for only $999999,99!=

vExpert 2009/10/11 [:o]===[o:] [: ]o=o[ :] = Save forests! rent firewood! =
Reply
0 Kudos
HenrikElm
Contributor
Contributor

Ok! Thanks both of you!

But I guess the sending and receiving hosts must see eachothers VMKernel interfaces? Or is it enough that the vCenter see both hosts? Can it proxy this data? What VMKernel interface is used? The NIC selected for management traffic I would guess.

I know that it works, and I'm very happy it does. I'm now looking for the more technical stuff around how the move is done as customers want to know how this is actually done and I never got around to measuring the actual traffic flow.

Bet regards

Henrik

Reply
0 Kudos
dnetz
Hot Shot
Hot Shot

During svmotion, there's no exchange of data between hosts, just one host and the shared storage. vCenter does not proxy any data, it just initiates the commands on the host and monitors its progress. The NIC used is the one(s) connected to whatever vmkernel port your shared storage is using.

Hope that answers your questions!






===

If you find this information useful, please award points for "correct" or "helpful".

Reply
0 Kudos
HenrikElm
Contributor
Contributor

Yes I see. And the receiving host receives the disk data on its management nic from the management nic on the sending host? If so, the two must be tcp/ip routable to eachother yes?

Reply
0 Kudos
dnetz
Hot Shot
Hot Shot

There is no recieving ESX host. You can, to my knowledge, only svmotion a VM between shared storages so the reciever would in that case be the storage destination you've chosen. The management NIC should only be involved in recieving the commands from vCenter, not send or recieve the actual data.

This product presentation might explain better the purpose of svmotion: http://www.vmware.com/products/storage-vmotion/






===

If you find this information useful, please award points for "correct" or "helpful".

Reply
0 Kudos
HenrikElm
Contributor
Contributor

If you read my initial post and the thread heading, I'm interested in the technicalities in a cold disk migration when moving a VM from shared storage (SAN) from a clustered host to local storage in a single host outside the cluster without the receiving host seeing the SAN.

So.. Back to my actual question, how does data flow when doing such a move? It works, I know that much, but how is the data transferred?

/Henrik

Reply
0 Kudos
dnetz
Hot Shot
Hot Shot

Sorry if I missed your question previously, but AWo answered this question in his post below. You can only move a VM to local storage if the VM is registered on that particular host. Local storage is by definition only local to one host, thus you can't move a VM to another host's local storage.

Similar to shared-to-shared storage svmotion, the data flow of shared-to-local storage vmotion would be this: host where VM is registered reads data from shared storage and writes it to its local storage. The actual procedure would depend on your shared storage technology, whether it's FC, iSCSI or NFS.






===

If you find this information useful, please award points for "correct" or "helpful".

Reply
0 Kudos
HenrikElm
Contributor
Contributor

Ok.. Now I'm REALLY confused.. When I start such a move ( cold migrate disk/VM from a SAN connected host to a host with only local storage ) the disk activity goes way up on the receiving host, expected, but there is absolutely NO activity on any network interface when I measure it in the vSphere client performance tab. No network activity on sender or receiver. Is the VM and disk data telepathically transported onto the receiving host??

Surely the network would be the only way this data could travel, as the receiving host has NO connection to the SAN, only to the network where the hosts are located.

The move works.. But how?

/Henrik

Reply
0 Kudos
dnetz
Hot Shot
Hot Shot

It would help to know what kind of shared storage you're using, although I only have experience with NFS datastores and I imagine that FC SAN traffic would register on other performance graphs than the regular network ones.






===

If you find this information useful, please award points for "correct" or "helpful".

Reply
0 Kudos
HenrikElm
Contributor
Contributor

I cant see why that would be of importance, but this is an iSCSI SAN that one of the hosts is connected to. The traffic from that host to the SAN shows in the graphs as expected, but the receiving host that I move the VM to local storage at has no SAN connectivity and shows only idle NICs during the move.

Amazing that the move completes just fine..

/H

Reply
0 Kudos
AWo
Immortal
Immortal

I have virtual disks on an NFS data store, attached to host B via vmnic3. When I move a guest from host A to the local store of host B I see an increase of received packets via the vmnic3. Do I change this nic to vmnic0, for example, the traffic changes to this one. As expected.

That leads to the conclusion, that the host which is receiving the guest to its local disk, copies the data via its NFS vmnic to the local storage.

When I move a guest with its disk on a SAN volume from host B to the local store of host A I can't see an increase of any network traffic but both, an increase of received data via the FC and sending data on the local SCSI adapter.

That leads to the conclusion, that the receiving host (A) is doing the whole copy of the vmdk's of the guest.

When I move a guest with its disk on a SAN volume from host B to the local store of host A which has no connection to that SAN I can see a small increase of network traffic on the dedicated vmnic for the VMkernel console port on the receiving host A.

That leads to the conclusion, that the data is copied over the console port.


AWo

VCP 3 & 4

Author @ vmwire.net

\[:o]===\[o:]

=Would you like to have this posting as a ringtone on your cell phone?=

=Send "Posting" to 911 for only $999999,99!=

vExpert 2009/10/11 [:o]===[o:] [: ]o=o[ :] = Save forests! rent firewood! =
Reply
0 Kudos
HenrikElm
Contributor
Contributor

Ah! So you see the same behaviour as I see. Still, the increase in nic traffic nowhere near matches the disk writes on the target host. Very strange.. So san to host b, then console nic from host b to console nic of a and then to disk. As long as the console nics can talk, we should be fine then?


This is nice piece of software, more magic each day.. Heh


Henrik

Reply
0 Kudos
AWo
Immortal
Immortal

Is the VM and disk data telepathically transported onto the receiving host??

Hmmm, I guess you're right here. Seems to me the most logical answer to that question.


AWo

VCP 3 & 4

Author @ vmwire.net

\[:o]===\[o:]

=Would you like to have this posting as a ringtone on your cell phone?=

=Send "Posting" to 911 for only $999999,99!=

vExpert 2009/10/11 [:o]===[o:] [: ]o=o[ :] = Save forests! rent firewood! =
Reply
0 Kudos
HenrikElm
Contributor
Contributor

Haha! Yes.. Isn't it.. Smiley Happy

Well, I'm happy I'm not the only one a bit confused. As long as it works, I'm happy. But all the same I'd like to know what is going on.. For example, if only the vCenter server has connection to two hosts, but firewalls or routing prevents the involved hosts from communicating between themselves, I would guess the operation will fail?

That could influence a vCenter design for example..

/Henrik

Reply
0 Kudos