Deconstructing Joyent's latest container technology

The word "deconstruction" reminds me of the 1997 Woody Allen movie Deconstructing Harry. Merriam Webster defines "deconstruction" as
a theory used in the study of literature or philosophy which says that a piece of writing does not have just one meaning and that the meaning depends on the reader 
Here, I am the reader of Bryan Cantrill, Joyent star CTO. There is more than one meaning. What does it mean for me, the blogger? This post is a personal perception from an outsider.

For easy reference, I embedded Bryan Cantrill's presentation from the Docker Meetup in Seattle WA. January 29, 2015.  I watched the video three times. I am not a developer. I am not a sysadmin.  But throughout my entire career, I worked with top engineers, thinkers and entrepreneurs.



I compared Bryan style to Nikola Tesla.  Bryan's idea of containers is a continuous, mental prototype that is always in a virtual state,

Bryan made me "instinctively step beyond the limits of the small world of which I had knowledge, and I saw new things."

Virtualization stemmed from the idea of clouds, but more precise is the idea of utility computing. This started with grids, in High performance Computing. See here a memo dated February 22, 2003 proposing the "Sun Unit of Computer Power (SUNCOP)" to Sun's CEO.

I learned from Bryan that hardware virtualization limits tenantcy, elasticity and performance because each software virtual machine mimics hardware and has one OS at the bottom - also called hypervisor - and one OS inside. The OS at the bottom knows nothing of the apps running, and OS inside can not allocate DRAM, CPUs and other resources.

Similarly,  the application level virtualization makes some "toy" applications easy for developers, but places "serious" developers of sophisticated apps in a "straitjacket." Bryan calls this the “Google App Engine" problem. No good, he says.

Bryan is a master of figures of speech, irony, and metaphors which he uses to create horror or delight his mesmerized audience.

Finally, the best solution was to virtualize the OS. Joyent then created the SmartOS that has Zones, ZFS, DTrace, Crossbow and more.

The Docker revolution came across. Docker runs Linux, and SmartOS is Unix. This created the classic Shakespearean dilemma:
To be, or not to be: Could we somehow natively emulate Linux and run Linux binaries directly on the SmartOS kernel?
This was the question. Many people said: Impossible. But it became possible through a spectacular breakthrough of two engineers: David MacKay from Illumos community and Jerry Jelinek from Joyent
  I dedicate this fortune cockie to Joyent engineers and to David MacKay
 Bryan ending remarks are:
We believe that the developer ease of Docker combined with the proven production substrate of SmartOS and SmartDataCenter yields the best of all worlds • The future of containers is one without compromise: developer efficiency, operational elasticity, multi-tenant security and on-the-metal performance!

What impressed me most at the end

  1. The ability to run Docker on SmartOS
  2. The ability to run Linux applications directly on Joyent without the need of porting
#1 made possible #2, which is huge. This seems to eliminate the biggest hurdle Joyent faced in the past for adopting new customers, because the world today is a Linux world.

Bryan said in the video this is perhaps the most important demo of his career. I think it is

The devil is in the the details

I see the ads of Joyent all over: 
Real Time Cloud, ZFS, KVM, DTrace. Deploy now!
Deploy now, what?

I know what ZFS is, because I worked in Sun. Probably most developers know what ZFS is. Or do they? Do people on the street know what ZFS is? I suppose we don't care of the people on street when talking containers. This is not wise. All big potential investors and large customers are not sysadmins, or developers. And some venture companies trust more their instincts, because VCs  are not developers or DevOps themselves

ZFS means: "You don't care about physical disk drives. The data will be always there for you."

But the best explanation of ZFS comes from a show Sun staged in the video Ultimate ZFS Overview which takes 1 minute to make the point. They destroy a hard disk and no data is lost.



A simple show like that made everyone see ZFS as indestructible storage.

Assume that the April 2015 release of the new Joyent Container Services is delivered successfully: how will  Joyent attract Docker developers and sysadmins?

Here is the tweet exchange from Randy Bias with Bryan Cantrill
Making Joyent a winner will require a mobilization of all marketing strategies, User Experience (UX)  focus, alliances and shrewd strategy from a CEO magic wand that makes it all happen in sync.

So what would I do?  I would test Joyent Container services by recruiting beta testers from the bottom (not the top,  not the middle, the bottom) 25% of sysdamins and aspiring developers. They  are the ones who just started their 1st job or they are looking for a job.

If they like it, then everyone will like it.

Competition

Joyent is not the only player. Many offer Docker orchestration.

We have: (1)  Fig container orchestration service that Docker bought,  (2) the Google’s Kubernetes  (3) the new Amazon EC2 Container service. VMware is in it, as it teams with Docker, Google and Pivotal "to simplify the adoption of containers".  Giant Swarm is in it, IBM is in it.

Forrester adds to the list above HP, Red Hat, CenturyLink and of course, Microsoft

Tutum is an elegant player and they just introduced in release 0.11.5 persistent storage. Then CoreOS wants to disrupt and claim they can run Docker too. But this is another conversation.

My summary

I separate the players in the Docker container market into two groups:
  1. Big Boys:  They have lots and lots of customers and are afraid to lose them (AWS, IBM, HP, Microsoft, Google, VMware).
  2. Young Boys: They are the ones who do not yet have a critical mass of Docker customers, but are lean and hungry. They are best equipped to offer personal, easy-to-use services to run containers. (Docker, Joyent, Tutum, Giant Swarm and so on). Their goal is to partner or simply steal disaffected customers from the Big Boys
 The Big Boys will pay tons of money for the successful Young Boys.
My theory is simple. The winner will be the one who is the easiest to use and gives fastest gratification for the user / developer.

Joyent has a tradition of making the impossible possible. So there is a second fortune cookie, that fits their momentum:

Comments

Popular Posts