Containerizing an old school Dell application

November 24, 2015

About a year ago Senior Linux engineer Jose De la Rosa had heard so much Docker and container-mania that he thought he’d find out what the fuss was all about.  Jose started looking around for an app within Dell that he could containerize and came across Dell’s OpenManage Server Administrator (OMSA).  In case you’re wondering, OMSA is an in house application used to manage and monitor Dell’s PowerEdge servers.  Rather than being a micro-service based application, OMSA is an old school legacy app.

To hear how Jose tackled the task, why, and what he learned, check out the following video (also take a look at the deck below that he presented at the Austin Docker meet up).

Here’s the deck Jose presented at the Austin Docker Meetup back in September.

For more info about what Jose and the Dell Linux engineering team are doing in this space, check out

Extra-credit reading

Pau for now…

Learning about VMware’s Photon Controller

November 18, 2015

Last week I headed out to San Francisco to attend Kubecon and soak in the Kubernetes and devops-ecosystem goodness.  As the event landing page explained:

KubeCon 2015 is the first inaugural community Kubernetes conference, fully dedicated to education and community engagement focused on early Kubernetes, production users and contributors.

As I normally do at events like this I prowled the halls to look for folks doing cool stuff to interview with my trusty Flipcam.

One of the people I chatted with was Kenneth Jung, developer lead on the Photon Controller team at VMware.  The Photon Controller, in short, is a cloud scale IO solution for managing ESX.  (One of the things Kenneth alludes to is the open sourcing of the Controller which ended up happening yesterday.)

Some of the ground Kenneth covers

  • What is the photon controller – cloud scale io solution for managing ESX
  • How the cluster manager makes deployment and management of large of container frameworks like Kubernetes, easy
  • How VMware looks at VMs vs containers
  • The Photon microvisor + Photon OS used in Photon Controller
  • They will have a cloud foundry release early next year

Extra-credit reading

  • VMware extends container campaign with open source Photon Controller – InfoWorld
  • VMware’s Photon Platform and How it Treats Containers – The NewStack

Pau for now…

Flocker plugin for Dell storage up on GitHub

November 12, 2015

Today ClusterHQ and Dell announced the availability on GitHub of code that allows ClusterHQ’s Flocker to integrate with the Dell Storage SC Series. What this does is allow developer and operations teams to use existing storage to create portable container-level storage for Docker.

Before we dive into the back story on how the plugin came to be, take a listen to ClusterHQ’s founder and CTO Luke Marsden.  Luke explains Flocker, how its being used and talks about the Dell/Flocker driver.

How the plugin came about

Rather than coming from an internal planning process or committee, the idea for a Flocker plugin came from Dell storage coder Sean McGinnis. Sean was looking for ways to make Dell Storage an infrastructure component in an open source environment. Some time back he noticed that Flocker seemed to be a good integration point to allow the use of Dell Storage for users looking to move to containerized solutions.

Sean saw a lot of overlap with what his team was already doing with their OpenStack Cinder driver (both written in Python, with some common storage management concepts). He realized that that they could reuse the majority of this code for a Flocker driver by providing the Flocker driver interface to translate Flocker calls into our storage API. Along with Ian Anderson (another Dell Storage engineer) the pair engaged ClusterHQ to explore requirements for brining Storage Center support to Flocker.

Sean and Ian then worked internally to implement our Flocker driver, open source it and put the code up on GitHub.

The code, storage and beyond

-> You can check out the code and play with it for yourself here on GitHub.

Going forward the team is looking to expand Dell Storage’s open source offerings hosted on GitHub. They see a lot of potential for containers and will continue working in this space to make sure enterprise customers can leverage their storage arrays to support these developing environments.

Beyond storage, Dell is looking to start open sourcing more code and putting it up on GitHub.  Don’t expect a deluge right off the bat but hopefully over time you will start seeing more and more.

Extra-credit reading

Pau for now…

Incorporating DevOps into the development of Dell’s Active System Manager

November 5, 2015

As Dell as a company continues to evolve we have started implementing DevOps practices in our software development.   Dell IT is employing DevOps as are some of our product development teams.

In the following video, systems engineer Chris Gully explains how Dell’s Active System Manager has incorporated DevOps into its development. (the audio could be a bit better so you’ll have to crank it up a bit for Chris :)

Some of the ground Chris covers:

  • What is the Dell Active Systems Manager (ASM)
  • Putting the ASM code up on GitHub
  • Their path from Dev -> IT -> Ops -> Customer -> Feedback
  • What were some of the issues the team had to overcome when implementing

Extra-credit reading

Pau for now…

My Dell World Talk: DevOps, Containers and Microservices

October 23, 2015

Yesterday at Dell World, Dell’s annual customer event, I did a session entitled: DevOps, Containers and Microservices: Buzzwords or fundamental to survival?

The idea was to explain these concepts, show how they serve as a foundation for digital transformation and talk about where Dell plays in the space. (see abstract below)

Topics and times

  • 2:20 – 5:54     What is DevOps?
  • 6:58 – 9:30     What are containers?
  • 10:24 – 12:30 What are microservices?
  • 12:30- 15:00   Where does Dell play? (professional services, testing, creating MVPs)

Check it out.


Gartner believe that by 2016, DevOps will evolve from a niche strategy employed by large cloud providers to a mainstream strategy employed by 25% of the largest 2000 global organizations [1]. One of the key developments within this space is Container technologies. In turn both DevOps and container technologies are proof of a larger shift in IT to a microservices architecture.

These technologies together serve as the foundation for agility and responsiveness in the modern enterprise. They give organizations an increased ability to serve their customers and, more importantly, are ultimately key to organizational survival in the modern world . This session will explain these technologies in terms of what they mean to your business and how they fit within larger trends in the industry.

[1] Tech Go-to-Market: How to win with DevOps buyers, May 15, 2015; Gartner

Pau for now…

Touchpad Palm Detection – the “confidence” feature

October 5, 2015

More info from the tech team:

The XPS 13 9343 utilizes the Microsoft Precision Touchpad specification in I2C mode. The specific feature within the Microsoft Precision Touchpad specification is the “Confidence” feature:


Confidence is used to indicate that the contact does not have any dimensions (height or width) > 25mm that implies that it is not an unintended contact. Windows Precision Touchpads should not reject any contacts in firmware processing, but should forward all contacts to the host and indicate the confidence. After a device has deemed a contact to be unintentional, it shall clear the confidence bit for that contact report and all subsequent reports. Until a contact has been deemed unintentional, the device shall set the confidence bit for that contact being reported.

With that feature correctly implemented, palm rejection in I2C mode should work.

Driver feature development is something we work with our vendors on ensuring they develop, though in this case they won’t since the Microsoft Precision Touchpad specification is a feature that falls outside of vendor-specific needs. Synaptics (or any other touchpad vendor) is unlikely to implement this feature in the Linux i2c_hid driver because it’s not vendor-specific but instead a Microsoft specification.

Microsoft Precision Touchpad specification:


Pau for now…

Alternate Touchpad Configuration for XPS 9343 Developer Edition Running Ubuntu 15.04

September 30, 2015

Here is information from our tech team addressing the lack of palm detection with Ubuntu 15.04.

Some customers have reported frustration with the lack of palm detection due to limitations with the Synaptics driver currently implemented in current stable versions of the Linux Kernel. This walkthrough is intended for advanced users who would like to experiment with the alternate libinput input device driver. This has only been tested to work in the XPS 13 9343 using Ubuntu 15.04 and 15.10 beta.

Note: these steps are not supported by Dell support and you are performing this at your own risk. Compatibility issues could arise and result in your operating system being rendered unable to boot.

  1. Install some needed packages by running the following commands.

sudo apt-get install git build-essential autoconf automake pkg-config libtool

sudo apt-get install libmtdev1 libmtdev-dev libudev-dev libevdev-dev xutils-dev

  1. Install xserver-xorg-dev.

sudo apt-get install xserver-xorg-dev

  1. Clone libinput and xf86-input-libinput.

git clone

git clone

  1. Build and install both packages.

cd libinput

./ –prefix=/usr

make && sudo make install

cd ../xf86-input-libinput

./ –prefix=/usr

make && sudo make install

  1. Now we need to create the config file in /usr/share/X11/xorg.conf.d named 99-libinput.conf using your favorite text editor (the following example will be using gedit).

Sudo gedit /usr/share/X11/xorg.conf.d/99-libinput.conf

  1. Add the following to the blank file you just opened, these options should cause the touchpad to perform similar to an Apple Mac touchpad.

Section “InputClass”

Identifier “libinput”

Driver “libinput”

MatchDevicePath “/dev/input/event*”

MatchIsTouchpad “true”

Option “Tapping” “true”

Option “TappingDragLock” “true”

Option “ClickMethod” “none”

Option “NaturalScrolling” “true”


  1. There are many more options available. Not all options are supported, if the option is not supported than the default will be used. In the above example “Natural Scrolling” is set to “true”. If you don’t like natural scrolling just set that option to “false”. Follow the below link for an explanation of the many options that are able to be adjusted in the 99-libinput.conf


Pau for now…


Get every new post delivered to your Inbox.

Join 139 other followers

%d bloggers like this: