Apparatus comprising: a centralized control processor communicating with a plurality of servers each executing at least one virtual machine, VM, at least a first server executing first and second VMs and a second server executing a third VM, with a first virtual switch being associated with the first server and a second virtual switch being associated with the second server, the respective virtual switches connecting the VMs executed on the respective server to a network, wherein the centralized control processor is configured to: conduct a central snoop of upstream switches and monitor for join messages, from hosts, that are received by the VMs to determine which VMs belong to which multicast groups; establish, for each server, a multicast interface distribution list containing interfaces from the VMs at that server and the multicast group to which they belong; render a view on a user interface that reflects the VMs being controlled by the centralized control processor, based on the multicast interface distribution list; using join/exit reports to enroll and disenroll servers and the VMs into the multicast groups; coordinate multicast messaging between the servers and the network, wherein incoming multicast messages received by the servers are forwarded only on links leading to the VMs that are members of a multicast group to which the multicast messages are addressed, based on the multicast interface distribution list; and cause a third server to which the first VM is to be migrated from the first server to send a join report to join a multicast group to which the first VM belongs if the third server is not already a member of the multicast group, based on the multicast interface distribution list, prior to migrating the first VM to the third server. a centralized control processor communicating with a plurality of servers each executing at least one virtual machine, VM, at least a first server executing first and second VMs and a second server executing a third VM, with a first virtual switch being associated with the first server and a second virtual switch being associated with the second server, the respective virtual switches connecting the VMs executed on the respective server to a network, wherein the centralized control processor is configured to: conduct a central snoop of upstream switches and monitor for join messages, from hosts, that are received by the VMs to determine which VMs belong to which multicast groups; establish, for each server, a multicast interface distribution list containing interfaces from the VMs at that server and the multicast group to which they belong; render a view on a user interface that reflects the VMs being controlled by the centralized control processor, based on the multicast interface distribution list; using join/exit reports to enroll and disenroll servers and the VMs into the multicast groups; coordinate multicast messaging between the servers and the network, wherein incoming multicast messages received by the servers are forwarded only on links leading to the VMs that are members of a multicast group to which the multicast messages are addressed, based on the multicast interface distribution list; and cause a third server to which the first VM is to be migrated from the first server to send a join report to join a multicast group to which the first VM belongs if the third server is not already a member of the multicast group, based on the multicast interface distribution list, prior to migrating the first VM to the third server. conduct a central snoop of upstream switches and monitor for join messages, from hosts, that are received by the VMs to determine which VMs belong to which multicast groups; establish, for each server, a multicast interface distribution list containing interfaces from the VMs at that server and the multicast group to which they belong; render a view on a user interface that reflects the VMs being controlled by the centralized control processor, based on the multicast interface distribution list; using join/exit reports to enroll and disenroll servers and the VMs into the multicast groups; coordinate multicast messaging between the servers and the network, wherein incoming multicast messages received by the servers are forwarded only on links leading to the VMs that are members of a multicast group to which the multicast messages are addressed, based on the multicast interface distribution list; and cause a third server to which the first VM is to be migrated from the first server to send a join report to join a multicast group to which the first VM belongs if the third server is not already a member of the multicast group, based on the multicast interface distribution list, prior to migrating the first VM to the third server.