Rootconf Delhi edition

On network engineering, infrastructure automation and DevOps


Evolution of Linux Containers to Container Native Storage...

Submitted by Sameer Kandarkar (@skandark) on Wednesday, 14 August 2019

Section: Full talk (40 mins) Category: DevOps Status: Confirmed


The focus of this session will be on the journey of the containerization technology since 1974 (The First Container) to the container native storage.
How containers evolved year by year and became an invariable solution for isolating applications at the operating system level, although you can also isolate an entire operating system inside a container, if you’d like
Journey of a Linux container from a small piece of code to userspace tools like docker, podman, CRIO and to the solution for persistent storage for container based applications as Container native Storage(CNS).


Evolution of Containerization Technology

Linux container is a solution for virtualizing software at the operating system level within the Linux kernel. Unlike traditional hypervisors containers lets you run single applications in virtual environments.
Container’s main advantages include making it easy to control a virtual environment using userspace tools from the host OS,
requiring less overhead than a traditional hypervisor and increasing the portability of individual apps by making it possible to distribute them inside containers.
Linux containers sounds a lot like Docker or CoreOS containers, it’s because Linux containers used to be the underlying technology that made Docker and CoreOS tick. More recently, however, Docker has gone in its own direction and no longer depends on Linux container.

In this session, will talk about the evolution of containerization technology from 1974-2019. Different phases of containers such as chroot of unix v7, Free BSD Jails, Linux Vserver, Solaris Containers, Open VZ, Process Containers (also known as Control Groups)
, Linux Containers (LXC), Warden, LMCTFY(Let Me Contain That For You) by Google, Docker , Podman, Kubernetes and Openshift.

This Session will cover the Container Technology Stack.

Container Technology Stack is built on modern kernel features
chrootfs : apparent root FS directory
A chroot on Unix operating systems is an operation that changes the apparent root directory for the current running process and its children.
A program that is run in such a modified environment cannot name (and therefore normally cannot access) files outside the designated directory tree.

namespaces: process based resource isolation –
Namespaces are the foundation of lightweight process virtualization . They enable a process and its children to have different views of the underlying system.

MNT Namespaces
UTS Namespaces
IPC Namespaces
PID Namespaces
USER Namespaces
NET Namespaces

cgroups: limits, prioritization, accounting & control

Linux Security Modules (LSM): Mandatory Access Control (MAC)

User space interfaces for kernel functions LXC tools – Tools to isolate process(es) virtualizing kernel resources LXC commoditization
LXC virtualization Orchestration & management

Software defined storage with containers (CNS: Container Native Storage)

Container technology will also affect how organizations think about storage for applications and emerging microservices. However, while containers do a great job of encapsulating application logic, they do not offer a viable solution for storing application data across the life cycle of the container. Ephemeral (or local) storage is not enough—stateful container-based applications require that data remain available beyond the life of the container. Software defined storage with containers provides a solution for persistent storage

Storage for and in Containers

There’s More Than One Type of Container Storage
1. Storage For Containers
2. Storage In Containers

1. Demo on Container Technology Stack
2. Demo on Container Storage

Speaker bio

I am a part a Red Hat’s Gluster Storage Team. I work on openshift backend storage and software defined storage. Since my college days I am very fond of containers and very enthusiastic about opensource culture. I like to talk to people on various platforms, would love to contribute and share my learnings about the opensource technologies such as containers, kubernets, SDS solutions etc



  •   Anwesha Sarkar (@anweshaalt) Reviewer 7 months ago

    Hello Sameer,

    Thank you for your submission. Here are the feedback for your talk :

    1. The proposal is interesting, but the topics you want/seem to cover is a lot, will you be able accomadate in the limited time?
    2. The slides look real text heavy, avoid that.
    3. Can you add some more pictorial representation to the slide?
    4. Can you avoid having the “Agenda” slide (this will save some time)?
    5. What are the take away you want to offer to the audience?
    6. How are you planning to conclude it?

    Submit the preview video by 22nd, it will help us to evaluate the proposal better.


    •   Sameer Kandarkar (@skandark) Proposer 7 months ago

      Hello Anwesha,

      Thank you for your feedback. I will do the changes you suggested about the presentation. I will be covering containers basics and history with the CNS part. I added the demo for container’s basics for the people who are new to containers will be complicated to directly jump to Container Native Storage Demo. The takeaway for the audiance will be ‘the way one can attach/use software defined storage as a persistent storage with the container application.
      Regarding the preview video, Could you please let me know what is required in this video?


    •   Sameer Kandarkar (@skandark) Proposer 7 months ago

      Hello Anwesha,

      Here is the link of my updated Presentaion


  •   Zainab Bawa (@zainabbawa) Reviewer 7 months ago

    Thanks for the proposal, Sameer. I have two questions:

    1. Who is the audience for this talk? Who did you have in mind when submitting a proposal?
    2. What is the takeaway for the audience after listening to this talk?
    •   Sameer Kandarkar (@skandark) Proposer 7 months ago

      Hello Zainab,

      The audiance for this session can be the people who are new to the containerization technology and Software defined storage with containers. The audiance will get to know about the how containers got evolved till date and how can we solve a persistent storage reuqirement with the healp of container orchestration tools and software defined storage (CNS). The takeaway for the audiance will be ‘the way one can attach/use software defined storage as a persistent storage with the container application.

  •   Rishu Mehrotra (@gadgetmnky) 7 months ago (edited 7 months ago)

    Hi Sameer,

    The content looks really informative. However a couple of points here:

    1. A lot of container orchestration tools usually handle these persistent storage problems via abstractions. Would you also want to talk about them if that is the larger goal of the talk?

    2. As a user of containers and related technology, I might want to look for a little more takeaway than this. Do you think we can think of something else the audience can take home in form of let’s say how to run persistent storage systems on containers?


    •   Sameer Kandarkar (@skandark) Proposer 7 months ago (edited 7 months ago)

      Hello Rishu,

      Thank you for your feedback.

      Yes. I agree with you. I can provide information regarding other opensource container orchestration tools like Kubernetes, docker swarm and openshift, but I will be focusing on OpenShift Container Storage for the demo.

      For the takeaway for the audiance, I will be showing a demo of how you can create persistent storage with the help of openshift and SDS(Gluster). It can be a CNS(Container Native Storage) or CRS(Container Ready Storage) for file/block storage.

      The audiance will get an idea of what is the need of the persistent storage for containers and how can we achieve that .
      I have created and included some animations for my presentation that will help me to keep ii simple make the audiance understand it in some interesting way.

      Thank You,

  •   Ramakrishna Reddy Yekulla (@ramkrsna) 7 months ago

    I took a look at the slides. Could you cover a slide or two on, CSI. Container Storage Interface because this space is being standardized at the CNCF/ kubernetes SIG level. There is a lot of focus around external provisioners sitting as sidecar containers. other than that, the rest looks fine by me.


    •   Sameer Kandarkar (@skandark) Proposer 7 months ago

      Hello Ramakrishna,

      Thank you for your feedback.
      I will add a slide before the Persistent contaienr storage slide about Container Storage Interface Architecture to give a brief about it.

      Thank you.


Login with Twitter or Google to leave a comment