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

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

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

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!