Last Updated:

Kubernetes orchestration feasible alternatives

Due to different business reasons, I've been thinking on finding a viable alternative to kubernetes (k8s) for those project that simply don't qualify for such a big container implementation, without entering so much on the qualifiers or not, as it might be technology, architecture, personal beliefs but also people and skills.

The following is the result of my research, where I've identified the components per its type.

Swarm GUI

  • Open Source: Portainer or Swarmpit
  • Enterprise: Docker EE UCP

Central Monitoring

  • Open Source: Prometheus + Grafana
  • Enterprise: AWS CloudWatch + Telegraf or Sysdig or Datadog or Librato

Central Logging

  • Open Source: ELK
  • Enterprise: ELK + AWS CloudWatch + AWS CloudTrail or Logz.io or Papertrail

Container Runtime

  • Single option: Docker EE (production) + Docker CE (development/staging)

Container Registry

  • Open Source: Docker Registry
  • Enterprise: Docker Registry DTR

Layer 7 proxy + load balancer (aka Ingress Controller)

  • Open Source: HAProxy or Traefik or NGINX + Docker Interlock architecture (*)
  • Enterprise: HAProxy or NGINX + Docker Interlock architecture (*)

Orchestration

  • Single option: Docker Swarm

Storage (Block Storage)

  • Open Source: REX-Ray + Cloud provider Volume technology
  • Enterprise: Docker CloudStor or REX-Ray or BlockBridge or Portworx or StorageOS or Diamanti (on hyperconverged clouds)

Networking

  • Single option: Docker Swarm Overlay

HW / OS

  • Open Source: Terraform or Ansible (or similar CM tool) + Docker-Machine
  • Enterprise: Terraform or Ansible (or similar CM tool) + Docker-Machine + IaaS tools from cloud provider or VM tools from hyperconverged cloud

Security

  • Host setup scanner: Docker Bench
  • Container image scanner: Aqua Microscanner
  • Container runtime scanner: Sysdig Falco
  • System capturing & analysis: Sysdig Inspect

(*https://docs.docker.com/ee/ucp/interlock/architecture/