Showing posts with label virtual desktop. Show all posts
Showing posts with label virtual desktop. Show all posts

Thursday, March 22, 2007

Terminal Services: The good, the bad and the ugly

I am hearing a lot about terminal services lately. I am also seeing a lot of excitement about it. About two years ago, I was also really excited about it but time, experience and experimentation has cooled my excitement. Terminal Services offers a great deal of additional access at a much lower cost but ultimately alienates today's youth who have become accustomed to personalized technology.

First, let me offer a brief definition. Terminal Services is effectively offering multiple users access to a single computer from multiple locations simultaneously. Microsoft offers terminal services and various products offer add-on functionality, such as Citrix. At Whitfield, we use Citrix. We have four servers which have up to about 75 users a piece running either a full desktop environment or specific applications. Thus, 75 people are using the same computer at the same time. Now, this is a pretty strong server but that's still pretty efficient. Terminal services have also gotten a lot of attention through the K-12 Linux Terminal Service Project and Linux Terminal Services through Novell's Suse Linux.

The Good
The good side of terminal services is that it can drastically cut costs. Instead of buying beefy desktops who's CPU remains idle most of the day, you can place low cost desktops or thin terminal devices (or hold onto really old, crappy computers) and run state of the art software on the relatively few beefy terminal servers. Because you can hold onto (or resurrect) old computers, it is very possible to improve your student to computer ratio. Lower costs and more access is a good thing!

The Bad
Whenever you have multiple users simultaneously using the same computer, you need to be careful about one user destroying the experience of all the others. In a desktop environment, if one kids messes things up, he or she will usually walk away and find another computer. Though that one computer is down, everyone else remains largely unaffected. The necessary result of this is that you have to lock down your terminal servers pretty tightly. You also need to watch them pretty closely, though, when things are not right, you will hear about it as it affects so many people! Also, one of the greatest limitations of terminal services is that resources are only available when people are connected to the network. Though many terminal services can be made available through the Internet, you still have to be connected. How lost did you feel the last time you forgot your cell phone? Magnify that times ten for today's digital kids.

The Ugly
Because the computing environment has to be locked down so tightly, terminal services turn technology into a pure utility. Now, some companies are very excited about this. They don't want people doing anything on computers other than that which they explicitly allow. Shamefully, some schools are that way. At best, this limits innovation and at worst, kills a spirit of exploration, which is absolutely counter-intuitive to education. What happens is that student use of technology is limited to the creativity of the IT staff and administration (most all of whom are NOT digital natives, unlike our students). Our students have become accustomed to slapping different colors on their iPod, changing desktop backgrounds daily, setting up digital environments which allow for the intersection of their work, personal lives, and interests. Kids will meet their needs someway and it simply can not be met through terminal services.

Our Experience
At Whitfield, we worked extremely hard to create a robust, fast and slick terminal services environment. We redirected many of the personal settings to other servers so students could have as much control as possible. They obviously could not install software or change any of the configurations of the terminal servers themselves.

We were also aware that the major limitation of terminal services is that the resources are unavailable if not connected to the Internet. Thus, we provided them access to Novell Linux Desktop 9 (the vastly inferior predecessor to SUSE Linux Desktop 10). Our Citrix environment offered most of the best Microsoft had to offer. Our Linux laptop offered most of the standard set of tools available on Linux. The only major modification we made was to give normal users a lot of rights over the Linux laptop.

Even though SUSE 9 was pretty inferior compared to Windows 2003, students reported spending half of their connected time in Linux. With SLED10, students now report spending 80-90 percent of their time in Linux. Though some of that relates to the new features of SLED10, people are reporting that the real reason they spend time in Linux versus Citrix is because they can "make it look the way they want to." Personalization is the key and terminal services can't offer that.

Terminal services still has a place in our environment. Teacher's frequently use Citrix for a Windows desktop environment and we also have some applications that simply can not be run from a Linux workstation. However, our mission calls for us to be a student centered environment. I can't honestly claim to be supporting the mission of my school and limit the needs of my students.

A Compromise
One of the latest innovations that seems to offer the savings of terminal services and the personalization of personal desktops is the virtual desktop initiative (Please see my post on virtualization). This allows people to use a low cost device (or actually any device able to connect to the Internet) to access a remote session to a virtual desktop. That desktop is, functionally, a complete and personal machine. However, that machine is virtual and actually exists on disk. That machine is made available through a virtual machine server, like VMWare or Xen.

In this scenario, users can personalize a machine to their liking without really affecting other users. Also, because these systems or easy to restore from frequent "snapshots," you can give users a little more freedoms on the box, encouraging innovation and technical literacy.

Now, this environment requires a lot more disk space than terminal services and still REQUIRES Internet connection, which is still a MAJOR limitation in most towns (NOTE: I would argue that kids need access beyond home and school in order to gain full fluency but equity issues also would require home connection for all users). Those limitations keep this from being a viable option in the St. Louis area today. However, if I were the CIO of Philadelphia Public Schools or Milwaukee Public Schools (where I actually started my teaching career) I would be ALL OVER this solution.

Friday, March 16, 2007

Virtualization in Education

I've had the opportunity to talk about virtualization in a few different contexts lately and so I thought I'd put together a post on it.

What is Virtualization?
Well, that depends a little on who you are talking to. The most popular notion of virtualization is virtual machines. This means running another computer as a software instance on top of another operating system. An example would be VMWare Workstation. In this instance you may have a Windows XP computer running a "virtualized SLED 10" system. Thus, you could be running programs for both operating systems at the same time on the same hardware.

Taking that to another level, many people (such as Whitfield) use virtualization for server consolidation. We had about 8 servers coming to the end of their lease life. Thus, rather than replace them with 8 new pieces of server hardware, we bought two beefy blade servers for our IBM BladeCenter and bought VMWare ESX virtual server software. We then used a utility to automatically migrate our physical servers to virtual servers. Now, we have two pretty beefy physical servers which are running about 16 different virtual servers. Each of these servers is configured pretty much as they were before. We use Remote Desktop to access and control the servers and they function just as they would if they were on physical pieces of server hardware. However, in addition to all of the tools offered by the server operating systems themselves, VMWare offers additional tools to diagnose and control the system resources being used by these servers, helping us to tune them to a higher degree.

Another form of virtualization is application virtualization. This allows you to run applications on a system as though they are on another system. Mac does this with OS9 application being run on OSX systems. Linux does this when running Windows programs with WINE. Also, some people refer to hosted applications, such as Citrix as virtualized applications. In this case, programs such as Microsoft Word, actually run on a Windows server but appear to the user as though they are running on his or her Linux laptop. This is how we run Windows programs in our Linux Laptop Program.

What's the hullabaloo about Virtualization?
(Thank goodness blogs don't have editors that make me cut out words like hullabaloo)
People are excited about virtualization and there are reasons for this. Virtualization can save a lot of money. Effectively, you only need disk, rather than hardware, to run applications and operating systems. Disk space costs a lot less and you probably already have disk space you're not using! Another reason people are happy about virtualization is that it removes many of the traditional obstacles of IT. Now you can run Windows on Mac hardware, without buying and carrying two computers. You can run Windows applications from a Mac or Windows machine. You can also manage virtual systems quite easily with management tools. Many of these management tools give you low or no cost management of systems that would be unavailable or cost prohibitive on physical machines.

Virtual Desktop Initiative
This is perhaps the coolest combination of virtualization technologies. Though I have seen a few different applications of virtual desktop initiatives, I will describe one I've seen being done by a major financial services company.

When a new employee joins the company, they go to the "request a workstation" web page from the low cost thin terminal sitting at their desk. They are prompted to answer a series of questions through a webified wizard. It asks questions such as what operating system do you want, what department are you in, etc. Then, based off the user's department and request, the user is provisioned a virtual desktop that appears on their screen as though it is installed locally. This system is created in about 5 minutes from templates that already exist. They also are provisioned all of their applications via Citrix right on the machine.

Users have lots of control over these machines, depending on their role in the organization. Many are allowed to install software, change desktop settings, etc. The reason this organization offers these increased powers is because they can easily restore the computers back the a previous snapshot which is grabbed by default. What's more is that users can go home and use a web browser on their personal home computer to access the entire virtual computer and work just as though they were sitting at their desk.

OK. This post is getting long so I will stop here. I will post again soon on the up-sides and downsides of virtual desktops in education, particularly when compared to terminal services.