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

Kubernetes Hardware Hacks: Exploring the Kubern...

Kubernetes Hardware Hacks: Exploring the Kubernetes API Through Knobs, Faders, and Sliders

Avatar for Ian Lewis

Ian Lewis

March 16, 2016
Tweet

More Decks by Ian Lewis

Other Decks in Technology

Transcript

  1. Confidential & Proprietary Google Cloud Platform 2 Ian Lewis Developer

    Advocate - Google Cloud Platform Tokyo, Japan google.com/+IanLewis-hoge @IanMLewis
  2. Google Cloud Platform kubelet UI kubelet CLI API users master

    nodes The 10000 foot view etcd kubelet scheduler controllers apiserver
  3. Google Cloud Platform Clients • CLI: kubectl! • Official Go

    client • Fabric8/OSGi • pykube • More: kubernetes/docs/devel/client-libraries. md
  4. Confidential & Proprietary Google Cloud Platform 17 kubectl get pods

    GET /api/v1/namespaces/default/pods { "kind": "PodList", "apiVersion": "v1", "metadata": { "selfLink": "/api/v1/namespaces/default/pods", "resourceVersion": "3742101" }, "items": [ … ] }
  5. Confidential & Proprietary Google Cloud Platform 18 kubectl get pods

    --namespace=myns GET /api/v1/namespaces/myns/pods { "kind": "PodList", "apiVersion": "v1", "metadata": { "selfLink": "/api/v1/namespaces/myns/pods", "resourceVersion": "3742101" }, "items": [ … ] }
  6. Confidential & Proprietary Google Cloud Platform 19 kubectl label pod

    mypod a=b PUT /api/v1/namespaces/default/pods/mypod … “metadata”: { “labels”: [“a”: “b”, …] } ...
  7. Confidential & Proprietary Google Cloud Platform 20 kubectl rolling-update GET

    /api/v1/namespaces/default/replicationcontrollers/B POST /api/v1/namespaces/default/replicationcontrollers ... PUT /api/v1/namespaces/default/replicationcontrollers/B ... PUT /api/v1/namespaces/default/replicationcontrollers/A ...
  8. Google Cloud Platform Standard Deployment • Docker deployments require lots

    of tooling • Kubernetes API has visibility into the cluster • Great for building things on top like CI, CD, and dashboards!