Skip to Content
Author's profile photo Ofer Yehuda

Container based software and infrastructure design

On Monday, September 15th, a session about container based software
took place in SAP Office in Ra’anana, Israel.

Among the participants were IT Professionals, IT DevOps team as well as

The session was coordinated by SAP Labs IT Developer Workspace Services team
and the instructor was 3rd party consultant*.


During the session, the concept of Software Containers and its
evolution was introduced, via a walk-through on Linux/Unix based OS features:

chroot – Allows isolating a process on a Unix/Linux  File System


CGroup (s) – Enables allocation of system resources explicitly
to a group of processes


Network Stack Manipulations (using iptables) enables process
isolation on a network level from other processes/wp-content/uploads/2014/11/4_576893.png

These features (and some others: LXC, AuFS), allow
containing a process or a process group.

Common example for such implementation is LAMP – Linux,  Apache, MySQL, PHP/Perl/Python

Using Container based Setup, dramatically reduces the amount of adjustments
needed when deploying from Development to Production comparing to VM based

Normally, on VM based Setups, Development environments uses an ‘all-in-one’ VM
– unlike Production Environment which uses separate VMs due to security and
performance considerations.

As we can see in the example diagram below, containers structure persist on
both Development and Production Environments. This is also applicable for
scaling applications on a Server or Multiple servers and reduces the overhead
when designing Automatically Scaling Systems


Following the technical overview, we continued to a
discussion about possible implementation within SAP.


Some of the ideas were to use this technology in the
development process for shipment of Jenkins slave systems for developers.

Other ideas were within IT infrastructure area. Isolation
components of the end user environment such as Quest Authentication Services
and shipping them as a software container.

It was even suggested to ship SAP Hana within a container,
within and outside of SAP…..

Container based architecture VS Virtual Machine based
Pros :

  • Smaller Storage footprint
  • Smaller RAM/CPU footprint
  • Instant Initialization
  • Direct access to Container FS
  • Enables Cross-Distribution
  • (Docker) Has a brilliant API and
    an implementation of Source Control


  • “Guest” processes run on the same
    kernel as the host
  • (Docker) Can only run Linux

Docker use cases range from Continuous Deliver, Testing, Development Environments, Backbone of Micro-Services architecture and PaaS.

The technology is being vastly adopted and being contributed
to by the largest Tech Sector companies in the world.


* Shay Cohen of G.S.R. IT consulting (

Assigned Tags

      Be the first to leave a comment
      You must be Logged on to comment or reply to a post.