Containers - open-switch/opx-docs GitHub Wiki
Containers let you package application code/binary as well as its dependencies such as file system, registry, and network. Advantages include consistency across development, test, and production.
Orchestration tools
Using containers in production requires management and infrastructure features including:
- Container cluster deployment and management
- Scheduling and automation
- Service discovery and networking
- Monitoring and logging
The technologies that provide these services are known as container orchestrators. There are two major open source container orchestration technologies available:
- Docker Swarm — cluster management integrated with the Docker Engine including networking and volumes, failover and high availability, flexible container scheduling, node discovery, and plugin support
- Kubernetes — automatic resource management, service discovery and load balancing, automated rollouts, secret and configuration management, and storage orchestration support
Additional technologies are available including Ansible for configuration management and provisioning, Grafana for monitoring and analytics, and Kibana for analytics and visualization.
Only Kubernetes is tightly bound to containers.