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

Kubernetes

 Kubernetes

This presentation attempts to give an overview of the Kubernetes cluster management system. It examines the system at a high level. For further details please see the links below.

Links for further information and connecting

http://www.semtech-solutions.co.nz

http://www.amazon.com/Michael-Frampton/e/B00NIQDOOM/

https://nz.linkedin.com/pub/mike-frampton/20/630/385

Music by

"Little Planet", composed and performed by Bensound from http://www.bensound.com/

Mike Frampton

June 16, 2019
Tweet

More Decks by Mike Frampton

Other Decks in Technology

Transcript

  1. What Is Kubernetes • A cluster management system • Open

    sourced by Google • Maintained by the Cloud Native Computing Foundation • Written in Go • Apache 2.0 license • Supports high availability clusters • Is highly scaleable
  2. Architecture 1 • Uses Kubernetes API to manage and set

    state • Master processes manage cluster – Multiple masters for HA • Master API server manages API requests • Controller mgr manages cluster state • Scheduler applies workload to cluster • Etcd is a persistent data store • Containers organised into pod groups • Services are groups of pods
  3. Architecture 2 • Kubernetes Node – Kubelet communicates to master

    – Kube-proxy manages network services – Cadvisor provides metrics monitoring • Pods encapsulate application resources – One or more containers – Storage resources – Network / IP – Can share resource between containers
  4. Pods • Pods can manage singleton containers • Pods can

    manage multiple containers – Containers can share resources – Containers are co located – One application per pod – Multiple pods to scale application ( replication ) – Pods managed by a controller • Pods have their own IP address • Pods are mortal – they have a life cycle • Pods resources die with pod unless persistent
  5. services • A service is a REST object • A

    service definition is posted to the API server • A service has an IP address • Services abstract pod access • Services can be found via – Environmental variables – DNS • Kubernetes supports external services – Specify spec type ExternalName
  6. Supported Container Types • Docker – https://docs.docker.com/install/ • CRI-O –

    https://github.com/cri-o/cri-o#getting-started • Containerd – https://github.com/containerd/cri/blob/master/docs/in stallation.md • frakti – https://github.com/kubernetes/frakti
  7. storage • In container storage non persistent by default •

    Storage can be shared in a pod between containers • Shared pod storage still non persistent by default • Volumes are supported for pods • Volume mounts determine access for containers • Many types of Volume supported (see next slide) • Persistent volumes also supported
  8. Storage – Volume Types • awsElasticBlockStore • azureDisk • azureFile

    • cephfs • cinder • configMap • csi • downwardAPI • emptyDir • fc (fibre channel) • flexVolume • flocker • gcePersistentDisk • gitRepo (deprecated) • glusterfs • hostPath • iscsi • local • nfs • persistentVolumeClaim • projected • portworxVolume • quobyte • rbd • scaleIO • secret • storageos • vsphereVolume
  9. Administration • Web based interface for monitoring and control •

    Kubernetes API for access and control • Use sysctl command for setting kernel parameters • Yaml based application configuration • Kubectl for resource management • Label management for resource access • Manage scaling with kubectl
  10. Information Sources • For further reading check these data sources

    – https://kubernetes.io/docs/home/ – https://en.wikipedia.org/wiki/Kubernetes
  11. Available Books • See “Big Data Made Easy” – Apress

    Jan 2015 • See “Mastering Apache Spark” – Packt Oct 2015 • See “Complete Guide to Open Source Big Data Stack – “Apress Jan 2018” • Find the author on Amazon – www.amazon.com/Michael-Frampton/e/B00NIQDOOM/ • Connect on LinkedIn – nz.linkedin.com/pub/mike-frampton/20/630/385
  12. Contact Us • Feel free to contact at – [email protected]

    • Or connect on LinkedIn • Im always interested in – New technology – Opportunities – Technology based issues – Big data integration