Container orchestration

quick Docker recap

Image result for docker images

Containers

Related image

Images

  • Immutable snapshot of a container
  • Compact, mutli-layer
  • Represent a deploy ready artifact of a service/app 

Image registry

  • A registry/store for images
  • Largest public one is DockerHub
  • Contains thousands of services/applications like redis, wordpress, graphite, nginx, gitlab and many other relevant pieces of software.


Docker is not really a virtualization software, but rather an application delivery solution
Image result for docker matrix container

production CHALLENGES

  • Application in micro-service architecture
  • How do we bring it to production?
  • How do handle:
    • Services discovery and coordination
    • Scale
    • Networking
    • Security
    • Storage
    • Monitoring and logging
    • Health and recovery
    • etc...

CLOUD state (2012)


source: https://www.slideshare.net/KarlIsenberg/container-orchestration-wars-2017-edition

CLOUD STATE (2017)



source: https://www.slideshare.net/KarlIsenberg/container-orchestration-wars-2017-edition

Current container solutions landscape at soluto

  • AWS EB (PAAS, production)
  • Two production swarm clusters (CAAS, production, Tweek)
  • One experimental swarm cluster (CAAS, Tweek)
  • One experimental k8s cluster (CAAS, future)

What is A container platform?

A platform for running container workloads, the central piece of the platform is the orchestrator.

ORCHESTRATOR RESPONSIBILITIES


Managing container workloads

  • Scheduling 
  • Replication
  • Isolation
  • Upgrades
  • Daemons

ORCHESTRATOR RESPONSIBILITIES

Resource management

  • CPU
  • GPU
  • Memory

ORCHESTRATOR RESPONSIBILITIES

Networking

  • Container Ips
  • DNS
  • Service discovery
  • Port mapping
  • VIPs,  Load balancing - lv4, le7 (http/s)
  • Ingress/Overlay

ORCHESTRATOR RESPONSIBILITIES

Storage management

  • Volumes (local, remote)
  • Configuration
  • Secrets

ORCHESTRATOR RESPONSIBILITIES

Operations

  • Health checking
  • Metrics collection
  • Log collection
  • Auto recovery
  • Autoscaling
  • Federation

ORCHESTRATOR RESPONSIBILITIES

Administration

  • UI
  • Security (RBAC)
  • Auditing 

ORCHESTRATOR RESPONSIBILITIES

    And there's much more:
    https://www.slideshare.net/KarlIsenberg/container-orchestration-wars-2017-edition


    orchestrator landscape


    Demo

    play-with-docker.com
    play-with-k8s.com

    https://gist.github.com/Yshayy/1a4c7dc7d2db962f82d03dcd2cf8032e

    Demo

    • 2 instances running lots of services
    • Deployments of different stacks
    • Deployment as configuration files
    • A faas platform with monitoring and autoscaling on top of our cluster

    Pitfalls

    • Still young ecosystem
    • Limited auto-scaling capabilities (infra, containers)
    • Not very stable tools/apis
    • Lots of patches
    • More management overhead
    • Shared infrastructure -> Less isolation

    future

    CloudNativeLandscape_v0.9.6.jpg

    FUTURE?

    • Self-managed, self-healing stateful services (DBs)
      • configuration
      • network
      • storage
      • autoscaling
      • backups
    • "Serverless" containers (ACI, hyper.sh)
    • Enhanced service communication  (istio, calico)
      • security, routing, tracing,
        load-balancing, gradual releases, and more...
    • Distributed application packages (helm)



    QUESTIONS

    Container orchestration

    By yshayy

    Container orchestration

    • 1,489