Questions to ask before designing a VDI environment
These are facts you should think about before to into detailed planing a VDI environment. I will add new questions that occurred to me.
Sizing
- How many Connection server do you need? Just for scalability just one is most often enough, so use two of them for redundancy. How to load balance the sesstion? (round robin, balancer)
- Number of Security server? How many users will need them?
Performance
- Not a question, but a fact: storage performance is a key to VDI success!
- Is the current storage “good enough” to add virtual desktops?
- Did you scale storage for VDI for capacity? Scale storage for performance first!
- Number of power/office/task user?
- Think about expected IOps for these kind of users. There are guidelines like task:7, office:15, power:30. For many environments these values are higher than real world.
- Think of flash to store replicas.
How many pools will you need? what size is used for a fully installed master? Size of pools, to estimate the time you need to recompose the whole pool. - Do you want to need Content Based Read Cache (CBRC)? Think about adding more memory into hosts.
- Heard about host-side read-AND-write-caching (PernixData)? Think about it!
- How to avoid boot/patch/AV-storms?
Do not shut desktops down? Booting desktops by use of scripts? Options within AV-software? When to patch OS? - What kind of applications are installed on desktops? If there are important single-threaded applications, a CPU with higher clock rates could be necessary.
Networking
- Branch offices?
- What kind of connections are between the office and the data center? Bandwidth? Quality? Is there any redundancy?
- How many users and type of users work in branch offices? It can make sense to enroll independent Connection servers at the branch office too.
- What kind of network is in place? Do users need Security servers to login?
- WAN
- Round-Trip latency should be < 250 ms
- PCoIP uses UDP not TCP. Therefore you should use Security Server instead of VPN when connecting remote users. And think of using QoS to prioritize PCoIP. Maybe: VoIP > PCoIP > TCP.
- Think of Load Balancer (Citrix, F5, …) for Security servers.
- How to handle profiles? Windows roaming profiles? persona management? Just persistent disks (do not!)?
Security
- What kind of authentication do you need? SmartCard, Token, passwords, …
- Are there ready to use usergroups? Do you need usergroups for firewall access, so should a user be able to access a Security server?
- Do you want to allow HTML5 access?
- What AV software do you use? Is it suitable for VDI?