I'm learning about virtual desktops and I was wondering; suppose you have 1500 people in your company, almost all using virtual desktops, and they would have to start up their computers all at the same time more or less.
How will this affect the network and what would the solution be? It would congest the network, right?
The only thing I could think off is maybe using multicast to spread the golden images, or a pool per level (building level) that caches images in the morning and sees to it that it always has the newest one cached.
But I can't find any articles about it.
Does anyone have some good reading or examples of how they solved this?
There'll be an enormous load, not just on the network but on the VDI hosts too, and the only solution is to design your infrastructure to manage the load. There isn't a single-line one-size-fits-all solution to this as it's dependent on your physical environment, user profiles, available hardware, budgets etc. and why VDI consulting is a very hot area right now.
Ultimately you have to carry out a major design review of your systems to handle the load and there's an almost infinite number of ways forward following that review, in the meantime I'm not sure there's an answer to this question that's universally valid sorry.
Design the system for the expected load. To do that you have to actually know what kind of load you should design for. To know that it's best to gather data from a smaller-size implementation and extrapolate from it.
To handle the stampede of users in the morning you can have the virtual desktop machines pre-created, waiting for the users to appear, so the load on storage systems will be manageable. You modify things on Friday afternoon, tell the infrastructure to re-deploy and by Monday morning you have 1 500 new images waiting eagerly for the users.
Consider putting the golden images and their linked clones on SSD disks. SSDs love random read access and are a good investment here.
Consider 10 Gbps networking infrastructure. Remember, that a saturated 10 Gbps pipe can eat a core of a CPU just for networking processing.
Use a sufficiently performing filer (e.g. NetApp or Storwize V7k) to serve network shares and profiles to the users over CIFS.
I am not sure if you are interested in designing SAN or LAN for the load, but there are documents addressing both cases, e.g.:
http://www.vmware.com/files/pdf/view_storage_considerations.pdf
http://www.vmware.com/files/pdf/VMware-View-50kSeatDeployment-WP-EN.pdf
http://www.vmware.com/files/pdf/VMware-View-PCoIP-Network-Sizing-Guide-IG-EN.pdf
Read the vendor documentation, from the reference architecture to design and planing, to installation guides.
Monday morning effect is a known issue, and not only in VDI. For the VM use case though, there's the extra load on the hypervisors, when too many VMs try to start at once.
There are different workarounds, either scriptable, or built into various VDI products: