Deployment Trends for application as changed from Days ->Minutes ->Seconds. Application deployment has become faster and faster as we move from application deployment on Physical ->Virtual Machine -> Containers.
Driving Factors for Containers
- Density and Performance
Physical machine improves the performance but decrease the application density. Virtual machine improves the application density but on the cost of performance.
- License and Cost
VMware and Microsoft licenses are expensive.
- Shift to DevOps
Industry is moving toward infrastructure as code were resources like server, storage or network are just Rest API URL.
- Cloud Native Application
The next generation application is designed to be cloud ready. These applications move across multi cloud or hybrid cloud.
- Faster Deployment
Low foot print of operating system and templet based approach is enabling application to be deployed faster and at scale.
Containers vs VM’s vs BareMetal
|Containers||Virtual Machine||Bare Metal|
OS on Virtual Machine or Bare-Metal x86 Server
Hypervisor on Bare-Metal x86 Server
Performance: Speed & Consistency
Tenant Isolation Enforcement
Ideal Application Type
Mode 1 or Mode 2
Mode 1 or Mode2
Configuration & Reconfiguration Flexibility
Host Consolidation Density
VM Image/VM Migration
Backup and Restore, ISO Image
Common Containers Use Case
- Simplified Configuration
Microservices breaks the monolithic application in to smaller configurable units that are easy to manage.
- Developer Productivity
With continuous feedback loop develops can improve the quality of code.
- Server Consolidation
Small footprint of containers improves the server density
- Debug capability
Production environment can be replicated easily to debug.
- Rapid Deployment
Small foot print combined with templet(docker file)of containers enables them to be deployed and redeployed rapidly.
Persistent Storage need
In a modern three tier application. Web and Application containers are stateless. When host that have Web and application docker container is shut down then container orchestration engine (docker swarm, kubernets ) will move these containers to new host without effecting the Web and application configuration
DataBase containers is stateful that means the tables/rows is saved in storage attached to the container. When host that have database docker container is shut down then container orchestration engine (docker swarm, kubernetes) will move it to new host. Database container will restart fine but will lose data(tables/rows).
Hitachi Storage Plug-in for Containers (HSPC)
Using this plugin, DevOps and IT professionals who need persistent data for containers can now control their volumes using the Docker APIs and command line. Now you can build, ship, and run with persistent data anywhere:
- Create hundreds of copies of production data in minutes for sandboxes used for dev, QA, & staging
- Instantly import legacy volumes to Docker volumes when containerizing legacy applications
- Ensure business continuity with snapshot and disaster recovery
- Provide more out of your premium storage with predictive analysis of container volume
- Minimize operation complexity with Remote management and auto configuration of container volume and plug-in