Thin Client, Or Fat Client? That Is the Question
theodp writes "If virtual desktops are so great, asks Jonathan Eunice, then why isn't everyone using them? However encouraged folks are by the progress virtual desktop infrastructure (VDI) has made, and however enthused they may be about extending the wins of server virtualization over into the desktop realm, you don't see analysts and developers eating the virtual desktop dog food. And even the folks you meet from Citrix, Microsoft, Quest, VMware, and Wyse — the people selling VDI — use traditional 'fat' notebooks. So, are you using virtual desktops? Why, or why not?" I wonder how long the abbreviation VDI will stick around.
So I moved to Europe. Now all my clients are thin and as a side-effect my sex-life improved greatly.
Videographic performance is one sticking point.
Developers won't generally use them ... as with so may computer related things these days, VDI is not about usefulness, it's about control. It makes it easy to lock employees down to a standard desktop, and provision or restore them with minimal effort. It's not necessarily a bad thing, but it's not really aimed at developers.
Employers love thin clients because they give more control over the information moved in and out of the organisation. You don't have to worry about blocking Lady Gaga CD-RW disks if the user only gets a picture of the data anyway.
But then the same limitations create a constant demand for new solutions to work around problems which should be simple. How can the PHB work on the plane? What is a switch dies and takes out sixteen users?
I have seen thin clients used successfully in a doctors office, where the integration requirements are simple. I can't see it satisfying every requirement in the engineering environment where I work.
http://michaelsmith.id.au
I've yet to meet a salesman who will claim with a straight face that the thin-client solution works well when one is traveling and working out of hotel rooms and client sites on a regular basis.
At work we all have latest generation laptops that end up working as dumb terminals through VNC. A bunch of servers and a load balance connection hub to always route you to the least used one make sure no work is lost if the laptop drops or is stolen, and with current network speeds, it's pretty much like working locally, with the added benefit of an 8-core beast compiling for you, and little to no maintenance on my side. If anything, I'd love for things to go thinner. I lug my laptop, which is heavy enough, from home to work and back every day. Then at work I dock it to use the 25" screen and full keyboard on my desk. If I could just have a small device that acts as a real dumb terminal with some processing power and minimal storage, I'd be happy.
To do list for Windows
> If VDI (virtual desktop infrastructure) is so great, then why aren't you using it?
Eunice isn't saying that, he's quoting Brian Madden as saying so and then gives his opinion on why he thinks they sooner or later will.
You can tell because of the sentence directly before the one quoted above:
>Virtualization analyst Brian Madden asks an excellent question:
But hey, fuck accurate summaries, right?
Actually, if it happens it will be fairly gradual, the result of ever-improving infrastucture and improved technology at many levels. Just as the Pocket Computer / Smartphone has evolved gradually. For example, the Apple Newton failed, whereas the iPhone was later a blockbuster. Why? Lots and lots of reasons. Some of them, such as faster/cheaper/smaller processors and networking, apply directly to virtualization as well.
I'm not sure what you worked on and when, but with native virtualization instructions in modern processors, there is no noticable speed difference, the biggest place where people see issues is with disk contention with a badly designed storage platform behind the virtualization solution.
Curiosity was framed; ignorance killed the cat. -- Author unknown
My development environment is a Xen VM or two.
My client is not thin though. I run the window manager, browser, mail client, IM application, SQL application, and a few other programs on the desktop, and use ssh -X and sshfs to do my development work on the VM.
I have tried running everything on the VM via XDMCP, VNC, and NX, but it is just too slow anywhere but on the LAN. Until I have a 100Mb connection to my house (instead of the 2Mb/384Kb connection with 50ms ping times to google.com I currently shell out $55/mo for) the thin client does not work.
Go green: turn off your refrigerator.
It's all a matter of connectivity. If you're using a traditional "fat" desktop (or notebook), you're self-contained. All your software's there, you aren't dependent on any connectivity to the outside world to get your work done. A "thin" virtual desktop client, by comparison, is completely dependent on having a network connection to it's host server to operate. Without that connectivity, it's a doorstop (and a light-weight one at that, so it doesn't even do very good at blocking a door open). And in a world of corporate firewalls and filters there may not be any connectivity that the VDI client can use. Anything other than HTTP/HTTPS may be blocked completely, and HTTP/HTTPS traffic will usually be forced through a proxy server that, even if it allows the kind of streaming connection a VDI client needs, introduces so much delay that the desktop becomes useless. And that's when the network's working correctly. Add in random network outages and traffic congestion at the wrong times and corporate systems that require non-corporate machines to VPN to the corporate network (and to have specific anti-virus and management software installed before the VPN's allowed to connect) and it makes a VDI client distinctly unreliable and hard to deal with. Meanwhile, the guy with the "fat" notebook may have more system management headaches and software synchronization issues than the VDI system, but he's still getting his work done while the VDI guy's sitting twiddling his thumbs while the techs try to sort out all the problems.
I have to differ, i do as i preach and have been using VDI in some form or another since i started 'pushing' virtual machines at the office.
If *I* cant run it, how can i tell others to?
---- Booth was a patriot ----
Really, I'm not interested in controlling a remote desktop. What I really wanted was my own private cloud to store and sync all my data to/from my various "clients".
I looked around and didn't find a solution that let me stream my media, control all of my home systems, have encrypted backups of my data distributed among the PCs of my friends and family, along with a native app & a web interface to rule it all.
Just s/friends and family/other offices/ to apply these needs to business.
VDI is not the solution I was looking for. A turn-key "local cloud" where I control all of the data is what I want. I've glued several FOSS solutions to achieve this, and am testing a new cross platform system of my own... Remote Desktop can kiss my ass, all I need is the data (processor speed & RAM are cheap; The "thin client" of today is a behemoth in yesterday's standards).
People just want to use all their data on all of their hardware. Ultimately we must either run our own servers or trust a 3rd party to "host" it for us. I opted for the former because the latter gives me the willies.
I've seen thin client networks done badly, and I think if you factor in the cost of having a large part of your business unable to work due to a single router flaking out, or your citrix server farm doing something wierd and eating everyones work, you might have eaten up any savings from purchasing and servicing traditional fat clients on desks.
An occasional one-time saving on cost is eaten up by [sometimes massively] amplified on-going cost in any downtime you inevitably face.
Suggested addendum to the powerpoint presentations I know that drive these bussiness decisions: Your network infrastructure better be damn good. You also better not think it's a great cost saving strategy deploy your thin client infrastructure to remote sites with dodgy WAN links.
Laptops as hybrid thin clients make a lot more sense - your business could get up and move. Now, I've seen that done well.
After logging in slashdot still does not take you back to the page you were on. It's been that way for 20 years.
I've been using vitual desktops since FVWM in the mid 90s, and it has nothing to do with what this guy is talking about. I'd think Slashdot would know better, but of course times have changed. Am I going to have to start calling it Spaces now?
For banks, I think that probably ought to be required. Industries like that and places that need to tighten control of the data love VDI, as it makes it a lot harder for somebody to gain access or more worryingly leave secure data on an insecure machine.
I'm going to call BS partly on this. Most of the business world is using basic productivity software, probably Microsoft Office, with some users needing access to an accounting package or CRM. Thin clients aren't so much about up front cost as they are about reducing long term support costs. Using thin clients in an enterprise or small to medium business environment gives you a lot of benefits to the long term bottom line. From a security perspective, you cut the "attack surface" of your network very sharply - from dozens if not hundreds or even thousands of desktops that each need antivirus, security updates, administration, and security monitoring, down to a handful of servers that you can lock down pretty tightly. From a support perspective, you are no longer managing all those desktops, you are now managing a handful of servers. You have all the data for your organization where you can make sure backups are happening, and where you can keep tabs on what data is being stored and where it's stored, so you no longer have to worry about that file with a million customer social security numbers or credit card numbers sitting on someone's desktop, where you won't find out about it until after it walks out the door. Also, with a good setup, you ease the pain of patch days a fair bit, since you don't have to chase breakage across all those desktops, just across the app servers. You remove the expectation of user control because a thin client is clearly not a desktop (the "but I can do it at home, why can't I do it here" syndrome). These are damn good reasons to go to thin clients on the desktop, even if the up front costs are the same or even slightly more, and they apply to most desktop users. Only "high-performance" application demands, like CAD, and software development need fat desktops. Now, on the laptop side of things, internet connections in the field aren't something you can count on, even with mobile broadband and wifi penetration, it's not always there, and it's not always good enough. so thin clients aren't going to make much headway there for a long, long time.
I keep a few Linux instances running on some VMWare and KVM based servers on my home network. The desktop systems run vncserver and I can access the sessions remotely from any system in the house. Though I run some of the same apps locally, there are enough reasons to run them on the central server.
1) The types of apps I need are not available easily on the client. For example, I use some photography related apps under Ubuntu. These are free and easily available via the Software Manager. The same quality of apps are not available under Win7. For example, there are some HDR utilities I use in Ubuntu that work quite well. Similar software under Win7 or MacOSX costs $40 or so.
2) The netbooks I've started to use don't have the power needed to run some of the larger apps. Though my main laptop (CentOS 5.5) can handle it, I have some Atom based systems that have issues running a JDE or full blown dev environment.
3) I have *many* client devices. At last count I have 10 laptops in the house. These run CentOS, Ubuntu, MacOSX, Win7, WinXP and Fedora. This is unusual for most households, but reflects the type of environment I'm seeing in smaller businesses. No matter what client I use I can run my set of apps.
Using a modern thin client is pretty much like using 50s era time-sharing systems, with the exception that the modern variation slaves inferrior microprocessors to a more powerful cluster of devices, instead of slaving pure IO devices to said systems. The question then becomes if you are carrying a device that is in itself more powerful then the systems in use even 5 or 10 years ago, what advantage does connecting to 'the cloud' holds over the advancements in computing technology that originally allowed us to move away from this computing model?
Fundamentally the issue is data security and usage control. There is no advantage to the end user, only the content providers who maintain the system.
Dungeon Tactics : Free Open Source SRPG
The promise of thin clients has never been on upfront costs. The advantages have to do with maintaining the clients once they have been deployed. Think patches, service packs, O/S upgrades, memory upgrades, HD replacements, etc. With traditional desktops many of these changes can only be done by going to each machine individually. Additionally, thin clients make backup/restore trivial whereas trying to enforce data retention standards on desktops is always a battle. While these issues may not present themselves in a small to medium sized company, trust me when I say that with thousands of installed desktops there are hundreds of people dedicated to maintaining the hardware and managing the environment.
I'm not sure what you mean by "there aren't suitable thin client options for most businesses." Most of the actual business of say a bank, or an insurance company, or a web vendor, or just about any company that isn't a full fledged software developer comes down to a few apps that rarely require huge amounts of memory, the latest video card, or even a hard drive since most of those apps just run as a client and save data on the server anyway. In fact I can think of few businesses where thin clients shouldn't represent the majority or installed systems.
Why not just use a server? Amazon EC2 will rent you a "micro instance" Win2003/2008 server for 3 cents/hour ($21.60/month) or an Ubuntu server for 2 cents/hour ($14.40/month) plus a few bucks for storage.
http://aws.amazon.com/ec2/pricing/
Just don't do anything I/O or bandwidth intensive since you also pay for I/O and bandwidth.
Granted, I'm working in a highly secure environment with secure images, so we are all over the VDI for development. It allows my dispersed developers world wide organization of death and destruction to work in a large team environment while being in Europe, Florida, California, Washington, Japan, Hawaii, and Singapore. And yes, I am being completely serious.
It does allow us to provide a central pool of tools that make changes without dealing with the local machine that is controlled by another agency.
Politics is the art of looking for trouble, finding it everywhere, diagnosing it incorrectly and applying the wrong fix.
At my place of employment, 250 employee co-operative retail with three locations, I set up a 2 node DRBD/Heartbeat cluster. It is running NFS, Samba, LDAP. Clients, 42 of them, g are $275 Zotacs(Mag HD-ND01-U) running Ubuntu 10.04. I developed a disk image with everything the way we want it. It takes me 10 minutes to set up a new machine and most of that is the unboxing part. Clients authenticate via LDAP and mount NFS homes via autofs. Some apps are local such as Firefox and Thunderbird. Other business apps are accessed via A XenApp/Citrix server using the Citrix Native Linux client. And then there are the HR and Finance SAAS applications. Now the clients could just offer a RDP connection application and the Citrix server could be a server providing virtual desktops. But why? It would add a few more layers of complexity with little benefit. The client machines are cheap, fast, easy to replace. The OS is free. The user gets the performance of silicon on the desk with the storage reliability of a server in the closet.
Guru Meditation #6d416769.21610a21
Crysis on RemoteFX
Starcraft 2 on RemoteFX
There is so much FUD in this topic. M$ and "partners" try to upsell this technology to make sure they can tax it. If you run GNU/Linux terminal servers and simple X window system clients you get all the benefits of virtual desktops at much lower costs: cheaper servers (more processes per gigabyte and no licensing fees), cheaper thin clients (no need for gB of RAM or hard drive) and better performance (files are cached in RAM on the server or retrieved by a hot RAID). I use this technology a lot. I get 5s logins and 2s opening of windows to huge apps even using old PCs as thin clients. The usual VDI solution involves one virtual machine per client, a huge waste of resources although flexible. If you want low cost and reliability keep it simple and stick with GNU/Linux. It costs about $30 per client to have a good server on-line. New thin clients can be bought for less than $50 and used ones cost nothing (old XP machines are $0). Don't listen to the FUD. Go all-in for thin clients and forget the VDI bloat. Use GNU/Linux.
A problem is an opportunity http://mrpogson.com
Pretty much. I divide users into 4 categories:
The higher the level you're at, the less useful thin clients tend to be. OTOH, at level 1 thin clients can be really useful if you've got control over the networks involved and can configure it so things work smoothly. Just don't try forcing someone at level 3 into an environment intended for level 1 (or vice-versa). It won't work, and you'll spend more time patching things up and finding workarounds for problems than you'll ever see in purported savings.
You say that like it's an absolute. It's not. All security measures mitigate mission performance. It's just a matter of how much you're willing to stand and where you're willing to draw the line.
I think most of us are willing to lock the building doors at night and run AV software. Both of those security measures mitigate against highest possible mission performance, as when low-level employees without keys can't come in to get some work done during off hours or a virus starts killing machines.
I'm willing to bet that you are actually willing to accept some mitigation of mission performance in the name of security. You can't be as nuts as your post made you sound, can you?
And if that's the case, making your position by overstating it as in your post does more harm than good. Non-IT folks who insist that NO mitigation is acceptable contribute mightily to unnecessarily high tension between the IT folks (who just want to help them get their work done while avoiding some screwup that causes the whole organization to stumble) and their customers. I've known of cases where system monitoring found a really nasty virus or trojan on a laptop and immediately took it off the domain. Then I've seen the executive to whom that laptop was issued DEMAND that their computer be immediately placed back on the domain because they had work to do. Like you posted, he would "...NOT allow security to mitigate mission performance!" (well, HIS performance, anyway, and screw everybody else).
Absolutism like that is just stupid. So tell us where you draw your lines. That would be a much more helpful insight than what you've provided thus far.