Tuesday, December 31, 2013

Quick Network Change Diagram

I made a quick diagram to illustrate to a few people the new design that we are testing whereby NX technology is used to deploy to our workstations.  I thought it might be a good visual tool to clarify my last blog.  Instead of using the Xserver and Pulse daemon on the thin clients, everything is passed through the backend computer server running NX/GNOME.  This allows for a stateless connection that can be resumed on any hardware that runs the NX client and any browser.




Lots of progress in testing this concept, and I'll blog about it next year.

Happy New Year.

Thursday, December 26, 2013

Thinning Thin Clients, And Other Projects

I have not published an update in a good while, but things have been busy.  Here are the things that I have worked on since the last blog:

Thinning Thin Clients

How the heck can you thin a thin client?  We'll it's my current project and things are progressing fairly well. Since we started using thin clients in the mid-1990s, we have always used remote X as the transport.  It's elegant and fast for our needs, and consumes almost no bandwidth on a modern network.  Our current design has been wonderful for having roaming profiles.  You can log in anywhere in the City, and because everyone is running from a centralized host all of your software and files are immediately available for use.  If you go home and log in using NX, the same is true. 

However this has one design issue, you have to log out of the first location before starting another session.  If users forget to log out from the first location, they  are able to "steal" the session which severs the X connection abruptly and is not ideal when they damage settings or lose some of their work.  In general all of this is working very well and people move around the City all the time.  With the advent of tablets and more mobility, users are wanting to "resume" sessions over different networks of various speeds, including WiFi.  In order to accomplish this goal, we're testing using NX technology for all sessions.  Using NX thins a thin client, because now it's 100% running in the data center and the workstation is used only for mouse and keyboard; the Xserver is no longer remotely running on the thin client.

What this means for end users is that when a second server instance is started with their user account, they'll be able to "resume" the session from one location or device to another.  You can start typing a document at your desk, walk to a meeting and start up a tablet and resume the session and continue on the new footprint.

This change is presenting some scaling issues.  In the past some load was offloaded to the workstations, especially in the case of memory consumption.  Now all of this must be moved into the data center, which means bigger and faster servers with more cores.  We already have money in our budget to replace the GNOME server in 2014, so the timing could not be better.

We have two HP thin client models in use at the City.  The t5725 and t5745, both of which are discontinued.  We ordered the new t610 model which came with Ubuntu 10 installed.  I started the formal process in recent weeks of staging a build for production use.  Customizations were required to order to accommodate the older models.  The 5745 uses the intel driver and the 5725 is running ati.  So the build was modified to detect thin client model at first boot and set up the xorg.conf appropriately.  I was making great progress, when HP released an upgrade for the t610 to Ubuntu 12.  So I created a tarball of the customizations and in a few hours, they were all working on the new operating system.

More and more users are doing Skype interviews and in the past they would just check out a laptop and use that from their desk.  Since Skype is available for Linux, we're testing the concept of adding that feature right on the thin clients.  So far it's working like a champ.

In a nutshell, all three models of the thin clients boot Ubuntu 12 very quickly, and start up a very basic FVWM desktop which offers them the ability to connect to our servers using the NX Client. I am in the process of tuning the build for the three models and I'm working with NoMachine on some issues to make the NX Client work better in our environment.

Here is a shot of the current alpha build. FVWM provides menu and window management for software that connect to the servers.  Rdesktop, Skype and NX Clients run as siblings.  Full GNOME session is running inside the NX Client.



Firefox

After a quick patch in Firefox 25 to allow files downloaded by users to honor umask, it did not land in Firefox 26 and will return in Firefox 27.  So we're going to skip a version, but the good news is that with Firefox that means only waiting a few weeks.

LibreOffice

We jumped on LibreOffice 4.1 at 4.1.1 to solve some issues and improve file filters versus 4.0.  Out of 800 users, about 20 had to be rolled back for various bugs, which is normal and expected.  With release 4.1.4 we have been able to finally get everyone off of 4.0.  Things seem stable with this release too.  The server reports when users kill their software, and I'm not seeing many with LO.  Very cool.  Looking ahead to 4.2, there is a bad bug for us that prohibits us from testing heavily.  It's here.   We have lots of documents that make use of Nimbus Sans and the font currently is not rendering correctly.