[occi-wg] Terminology: containers, workloads, templates and instances

Sam Johnston samj at samj.net
Wed Oct 28 18:06:30 CDT 2009

Evening all,

I've attached some notes Andy took from a call at the weekend as well as a
diagram I whipped up today which I hope will help us to use common
terminology and avoid the ambiguous term "virtual machine" (which can refer
both to the host and the guest, or both together - as distinct from what we
mean when we say "java virtual machine"). The proposed terminology is also
generic and thus compatible with any work we do in the future at the
platform and/or application layers (as deployed applications look just like
virtual machines in that they can be started, stopped, etc.).

   - *Container* refers to the host of an individual workload (e.g. an empty
   virtual machine [host], runtime, interpreter, etc.)
   - *Workload* refers to a generic load that the user wishes to execute in
   the cloud (e.g. virtual machine files [guest], RoR app, JAR/WAR, etc.)
      - *Template* refers to a COPYable workload that cannot be run (e.g. a
      public AMI)
      - *Instance* refers to a workload that is currently allocated and
      consuming resources (e.g. a running or suspended virtual machine)

Some of you may recall similar terminology back when we were writing the
charter but our model ended up going in a different direction. The reason
it's come back up now is that we're getting down to the details (like
running instances vs the [possibly immutable] template from which they were
started) and not using common language causes confusion from time to time.

In terms of how we model these things for cloud infrastructure:

   - *Containers* are like reservations (though the resources may or may not
   be actually reserved). If you create a blank server in VMware vCloud express
   for example there's an entity that you will be billed for regardless of
   whether you start it or even point it at an image. Similarly you can pay
   Amazon for a "reserved instance" and then get cheaper hourly rates for it.
   Think of it like a virtual dedicated server. These can be modeled via
   "empty" compute resources - that is, ones which have metadata such as
   allocated cores and memory, but no entity-body (e.g. OVF payload).
   - *Workloads* are whatever the user wants to run in your cloud. This
   could be anything from a script to a complex, multi-VM OVF file ("vApp" in
   VMware parlance). These are generally referred to as templates or instances:
      - *Templates* are resources that cannot be directly started (e.g.
      don't advertise start, stop, restart, etc. actions), rather
needing a COPY
      to a new location as an "instance" first. Rather than having to reverse
      engineer the available actions these are identified by a predetermined
      "template" category.
      - *Instances* are resources that are allocated (e.g. can be started,
      stopped, restarted, etc.). These are the default and can be identified by
      the presence of an entity-body (e.g. OVF payload) and absence of the
      "template" category.

We discussed this on the call today and it wasn't contentious but if you
have feedback then fire away,

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.ogf.org/pipermail/occi-wg/attachments/20091029/dd189d31/attachment.html 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: occi-terminology-diagram-small.jpg
Type: image/jpeg
Size: 262493 bytes
Desc: not available
Url : http://www.ogf.org/pipermail/occi-wg/attachments/20091029/dd189d31/attachment.jpg 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: occi-infrastructure-terminology.svg
Type: image/svg+xml
Size: 4386 bytes
Desc: not available
Url : http://www.ogf.org/pipermail/occi-wg/attachments/20091029/dd189d31/attachment.bin 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: occi-infrastructure-terminology.png
Type: image/png
Size: 24779 bytes
Desc: not available
Url : http://www.ogf.org/pipermail/occi-wg/attachments/20091029/dd189d31/attachment.png 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: occi-infrastructure-terminology.graffle
Type: application/octet-stream
Size: 80965 bytes
Desc: not available
Url : http://www.ogf.org/pipermail/occi-wg/attachments/20091029/dd189d31/attachment.obj 

More information about the occi-wg mailing list