I'm planning to work on a contract with a nonprofit organization that supports low-income areas in the South-east Washington D.C. area with computers as a community service so that people can use the computers to look for jobs, work on homework, etc. They have computers in four different locations, ranging form five to thirty computers in each location, so I assume that there will be a total of around a hundred computers.
For the most part, the computers are mostly Pentium 4s, although there are a few i5s and i7s as well. The set up in most of the locations is like a computer lab/internet cafe, with one exception in the main office, where in addition to the lab/cafe environment, they do have computers for the staff.
After doing a quick assessment of two of the locations, this is what I've found out:
- They already have the computers set up, but they are mostly Pentium 4s.
- They will include educational software, training software, and job-related programs such as assessment tests, form fill-outs, resume builders, etc.
- The most CPU intensive event the general public would be doing is watching videos on YouTube, or probably playing online Flash/HTML5 games, so I already know that I'll need about 60-70 IOPS per desktop, and probably no more than 3 GB of data space.
- The locations are also used to teach computer classes. One of the classes will be on multimedia development, but I plan to have those computers not act like a terminal. For the most part, the classes will have the same requirements as a general public computer would.
- They also want to provide wireless access so that people can connect via tablet, laptops, netbooks, etc.
And this is what I want to do:
- Set it up so that the computers will act as a thin-client/dummy-terminal and connect to a server (most likely clustered)/cloud that's hosting a desktop environment.
- There needs to be one desktop environment for the staff and another for the general public.
- For the general public, there's no need for a personalize desktop, so a generic deskop that allows a lot of concurrent users would be good enough. I would like the option of allowing each user their own personal desktop, but it's unnecessary.
- However, that's not so for the staff. They need to have their own personalized desktop and set up so that they alone have access to it.
- There needs to be one desktop environment for the staff and another for the general public.
- The guest OS will be either Windows 8, or Windows 7. Windows XP is on it's way out.
The reason we want to have a centralized desktop is because it will allow us to utilize the hardware we already have in the areas, and we can replace them wihout worrying about reinstalling the operating system/software/etc, easily remove a desktop that's full of viruses, etc. Because of that, I was looking at two options: Virtual Desktop Infrastructure and Terminal Services
- VDI: I like this because it has linked clones ability, and pcoip, but it's probably too complex for what we need to get done. Plus there's that concurrent users license cost, which isn't so clear-cut when you factor in wireless access.
- If I choose to go VDI, should I use Citrix VDI-in-a-box, or VMWare Views/VSphere?
- TS: The only one I looked at so far is Microsoft's Remote Desktop Services, and it might get the job done, but it's not as flexible as VDI. I haven't looked at Linux Terminal Services.
Also, I need to find the best way to have the desktops stored. Should I?:
- Have it stored in-house, using clustered servers (2-3 of them) and vSphere Storage Application?
- If so, would HDD setup be enough speed? Or should I go for an SSD/HDD hybrid?
- what's the recommended CPU, RAM, and Hard Drive speed? I do have a few old 2-CPU Quad-core Xeon servers lying around (2 Dell Poweredge 2950 III servers).
- Purchase a cloud account and store it there? (Like Amazon's)
- These are if I go the VDI route, I don't know what to do about storage if I go the TS route.
Also, there are some other considerations.
- Is a Gigabit Ethernet router/switch good enough, or should I look into 10-gigabit?
- Printing and scanning is important. How well can VDI and/or TS support printing and scanning?
Money is not too much of a problem, since we are going to present this to the DC government, but we don't want to break the bank either. I need to come up with some estimates by March.
So to sum it up, this is what I'm looking for:
- A way to use existing hardware for a centralized desktop, without depending on them too much, since they're old PCs.
- Also allow other devices (with restricted access), that probably have different OSes to connect to the centralized desktop.
- A way to manage the virtual desktops in the easiest and most flexible way possible, taking in account wireless access, individual staff's desktops, the general public/community's desktop, and desktop storage.
Any help would be greatly appreciated in approaching this.