Upgrade to Pro — share decks privately, control downloads, hide ads and more …

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

Elliot Murphy

July 22, 2015
Tweet

More Decks by Elliot Murphy

Other Decks in Programming

Transcript

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

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

    • Amazon EC2 Container Service • Ericsson / Apcera Cloud OS • Google App Engine • Engine Yard Deis, Flynn, others
  3. Complements • AWS • Azure • Google Cloud Platform (IaaS)

    • RedHat OpenShift • Digital Ocean • Mesos • Rackspace, OpenStack
  4. 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
  5. 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
  6. Whats Not Great • Advanced Network use cases: UDP, massive

    port ranges (use cases being worked on now) • Network ACLs • Visual tools • Monitoring (getting there)
  7. 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
  8. Terms you need • Replication Controller, Pod • Service, ExternalService,

    Endpoint • Volume, SecretVolume • Master, Node
  9. 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