Intro to Kubernetes 1.0 - Server Side Engineering Meetup, Portland ME

Intro to Kubernetes 1.0 - Server Side Engineering Meetup, Portland ME

Kubernetes is a wonderful open source PaaS system from Google and others. The introductory talk describes the ecosystem as of July 2015, and highlights strengths and weaknesses of Kubernetes 1.0

E50d396533a9455ba01a4827868598e9?s=128

Elliot Murphy

July 22, 2015
Tweet

Transcript

  1. Intro to Kubernetes Elliot Murphy, http://kindlyops.com Photos from https://unsplash.com/license

  2. Image from kubernetes.io

  3. An Open Source PaaS • open source orchestration system for

    Docker containers. • Platform as a Service • Run your own Heroku • 12 Factor App • 12factor.net
  4. None
  5. Competition • Heroku • CloudFoundry • Joyent Smart Data Center

    • Amazon EC2 Container Service • Ericsson / Apcera Cloud OS • Google App Engine • Engine Yard Deis, Flynn, others
  6. kubernetes is THE PaaS

  7. Complements • AWS • Azure • Google Cloud Platform (IaaS)

    • RedHat OpenShift • Digital Ocean • Mesos • Rackspace, OpenStack
  8. Containers • 1979 Unix V7 chroot http://pivotal.io/platform-as-a-service/infographic/moments-in-container-history • 1965 IBM

    1401 virtualized on System 360 https://www.joyent.com/developers/videos/ docker-and-the-future-of-containers-in-production • 2000 FreeBSD Jails • 2004 Open Solaris Zones • 2007 Cgroups in Linux Kernel • 2011 LMCTFY • 2013 Docker • 2015 Open Container Spec / AppC
  9. Kubernetes 1.0 today http://kubernetes.io

  10. Whats Great • Deploy into AWS VPC or Google Compute

    Engine means you can finally use PaaS in highly regulated industries (HIPAA, PCI, etc) • Seamlessly use same Docker images you already have • Zero-effort deploy in Google Compute Engine (also Tectonic) • Doesn’t force entire app to migrate at once, excellent support for external services: CloudSQL, RabbitMQ, … • Kubelet / Container-Optimized Server • Debugging - csysdig • CoreOS / Debian / CentOS
  11. Whats Not Great • Advanced Network use cases: UDP, massive

    port ranges (use cases being worked on now) • Network ACLs • Visual tools • Monitoring (getting there)
  12. If you deploy your own • Log collection (fluentd/ elasticsearch)

    • Monitoring (cadvisor, sysdig, NewRelic) • Blob Storage (S3, Swift) • Block Storage (EBS, Ceph) • Private Container Registry • Load balancers / Firewalls • HDFS, DB, Queues, Streams
  13. Terms you need • Replication Controller, Pod • Service, ExternalService,

    Endpoint • Volume, SecretVolume • Master, Node
  14. How to run your own k8s • Fastest: Google Compute

    Platform 1 click deploy • Laptoppiest: http://j.mp/k8s-laptop • Custom: Salt, Ansible, CloudFormation scripts to deploy on EC2, DigitalOcean, etc • Tectonic
  15. Demo + Questions elliot@kindlyops.com @sstatik