AllThingsOnCloud

all about cloud computing

Archives for February 2015

Docker Primer

February 24, 2015 by Vijay Sukthankar Leave a Comment

Introduction

Containerization is the process of distributing and deploying applications in a portable and predictable way. It accomplishes this by packaging components and their dependencies into standardized, isolated, lightweight process environments called containers.  This is surely not a new concept, in Linux this scenario has been explained by folks for many years now, but
I guess with the complete focus of virtualization, there was none for lxc till Docker came and viewed this as an opportunity and have succeed in convincing that containers are the way for deploying and distributing applications in a predictable way.

Many organizations are now interested in designing applications and services that can be easily deployed to distributed systems, allowing the system to scale easily and survive machine and application failures.  Docker, has developed to simplify and standardize deployment in various environments, was largely instrumental in spurring the adoption of this
style of service design and management.  A large amount of software has been created to build on this ecosystem of distributed container management and everyday we see big leaders have announced their support for the Docker containers and for few analysts this is a technology to watch in 2015.

What does Docker do ?

Docker is leading the containerization discussion at every technical summit.  Docker makes container creation and management simple and integrates with many open source projects.
Presentation2

In the above example we can clearly see how containers relate to the Host System. Each Application is isolated by container and use the hosts Operating System resources which are abstracted. On the right side I have put the view of how the containers can be created, with multiple layers sharing underlying layers.Some of these concepts help a developer to use a single base container from where he can start building containers for development, build and test since all require different set of tools but can use the common layers like, layer for Operating System etc.

Docker’s main advantages are:

  • Lightweight resource utilization: containers isolate at the process level and use the host’s kernel than virtualizing  operating system.
  • Portability: dependencies for a containerized application are bundled inside of the container, which allows it to run on any Docker host.
  • Predictability: The host does not care about what is running inside of the container and the container does not care about which host it is running on.

The interfaces are standardized and the interactions are predictable.Typically, when designing an application or service to use Docker, it works best to break out functionality into individual containers, aka  service-oriented architecture ( SOA ). This gives you the ability to easily scale or update components independently in the future. Having this flexibility is one of the many reasons that people are interested in Docker for development and deployment.

I feel personally that we have looked at infrastructure and then programming language support and this is a next step when a developers daily routine activities are  being simplified.

Filed Under: Cloud Computing

Container-as-a-Service

February 21, 2015 by Vijay Sukthankar Leave a Comment

Over the last few months have been hearing a lot on the the new term coined by the Cloud gurus and leaders in industry as “Container as a Service”, a new addition to xaaS dichotomy. With the focus changing from virtualization to containerization, everybody including Google, Amazon don’t want to miss the ride and have announced something around this in last few months.

Google calls Containers as a Service (CaaS) as a term for container platforms. According to them CaaS environments such as Google Kubernetes and
Google Container Engine sit between the IaaS and PaaS environments. In one of the articles from google I read the analogy from the programming language paradigm where they compare IaaS is equivalent to an assembly language and CaaS almost similar to object programming.Object Programming has patterns and interfaces but do not restrict that you are going to build. Object oriented languages encapsulate and make it easy to build.CaaS falls into this middle ground as a way to connect to the machine but also offers the ability to make use of concepts that will impact how we think about application development on distributed architectures.

Presentation1

Stating the above, the Key component for Container/Docker to be successful would be Docker Orchestration and the organization who have done Orchestration for VMs are playing a very important role in defining the ways this can be done. Their goal is to simplify delivery of containerized applications to virtualized environments. The focus is on providing a common platform for building, operating, and managing applications at scale, and these integrations help our customers do exactly that.

Some background on Integrations available today:

Docker has captured the industry’s imagination and customer interest around Linux container technologies. Thus far, Docker’s focus has largely been on single host management, but its ambitions are to enable remote management and orchestration of many Docker hosts. Given that their orchestration technology is still in the early alpha phase, we wanted to focus on their upcoming remote management capabilities, called Docker Machine. Docker Machine enables developers and operators to start Dockerized applications on remote hosts.

Kubernetes
Google introduced a container orchestration and scheduling system called Kubernetes, which has garnered industry and community interest.

Mesosphere
Mesos has an innovative two-level design that supports many different workload types using the same underlying infrastructure, and is already present in large production implementations.

Pivotal
Pivotal now has its own version of CloudFoundry, called Pivotal CF (PCF). PCF has container orchestration capabilities,

All in all, I am impressed with the rapid progress in the container space and excited how companies are enabling them to more easily and seamlessly provision their container orchestration
frameworks and containerized applications onto public platforms.

Filed Under: Cloud, Cloud Computing Tagged With: Docker

Archives

  • May 2017
  • November 2016
  • September 2016
  • July 2016
  • March 2016
  • February 2016
  • January 2016
  • December 2015
  • August 2015
  • July 2015
  • May 2015
  • April 2015
  • March 2015
  • February 2015
  • August 2014
  • July 2014
  • March 2012
  • February 2012
  • July 2011
  • November 2007
  • January 2007

Categories

  • Cloud
  • Cloud Computing
  • Cloud Foundry
  • Docker
  • Kubernetes
  • Linux
  • Mesosphere
  • Microservices
  • Service Management
  • Uncategorized

Recent Posts

  • Monolithic to Microservices
  • Kubernetes Overview
  • Docker Swarm Internals
  • Docker Swarm 1.12.1
  • Docker now and next

About Me

I’m a Cloud and Linux/ OpenSource enthusiast.. I am currently the leading a team for the integration service for on-prim Cloud offering .Some of the areas I’m currently focused on are around cloud, containers, devops, big-data, Cloud architecture and topologies. You can reach me at vsukthankar(at)yahoo(dot)com
FollowEmail this to someoneFollow on Google+Tweet about this on TwitterFollow on LinkedIn

Disclosure and Disclaimer

This is a personal blog of mine. The opinions stated here are my personal opinions. They are not representative of my employer in any way.

Copyright © 2021 · News Pro Theme on Genesis Framework · WordPress · Log in