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

NetApp Kubernetes Services

NetApp Kubernetes Services

Presentation at the NetApp Technology Forum 2019 in Lausanne, Switzerland.

Adrian Kosmaczewski

September 26, 2019
Tweet

More Decks by Adrian Kosmaczewski

Other Decks in Technology

Transcript

  1. AGENDA AGENDA 1. Introduction to Kubernetes 2. Demo of the

    NetApp Kubernetes Service 3. Introduction to OpenShift
  2. KUBERNETES KUBERNETES Third generation container management from Google Open sourced

    in 2014 Rapid adoption in market Strong contributors like Red Hat (OpenShift)
  3. KUBERNETES TERMINOLOGY KUBERNETES TERMINOLOGY Pod Pod One or more containers

    running inside Kubernetes Service Service Publicly-available endpoint to access a web service through a load balancer
  4. KUBERNETES TERMINOLOGY KUBERNETES TERMINOLOGY Persistence Volume (PV) Persistence Volume (PV)

    Unit of networked storage Persistence Volume Claim (PVC) Persistence Volume Claim (PVC) Request for storage from a Pod
  5. TRIDENT TRIDENT Storage orchestrator for NetApp storage Open Source (released

    December 2016) Out of tree, out of process Usually installed as a Kubernetes pod Watches for PVC requests
  6. REVOLUTION REVOLUTION Containers have taken over Kubernetes is leader in

    container orchestration Trident enables dynamically provisioned storage for Kubernetes NetApp Kubernetes Service makes Kubernetes easier!
  7. ip-172-23-2-178.eu-central-1.compute.internal Ready <none> 159m v1.15.3 ip-172-23-2-206.eu-central-1.compute.internal Ready master 160m v1.15.3

    % asciinema $ export KUBECONFIG=clusters/aks/kubeconfig % asciinema $ kubectl get nodes NAME STATUS ROLES AGE VERSION netpabu31c-master-1 Ready master 97m v1.15.3 netpabu31c-worker-1 Ready <none> 96m v1.15.3 netpabu31c-worker-2 Ready <none> 95m v1.15.3 % asciinema $ export KUBECONFIG=clusters/gce/kubeconfig % asciinema $ kubectl get nodes NAME STATUS ROLES AGE VERSION netfocobew-master-1 Ready master 132m v1.15.3 netfocobew-worker-1 Ready <none> 130m v1.15.3 netfocobew-worker-2 Ready <none> 130m v1.15.3 % asciinema $ 00:00 asciinema.org/a/267702
  8. service/mysql created service/wordpress created deployment.apps/mysql created deployment.apps/wordpress created persistentvolume/mysql-pv created

    persistentvolume/wordpress-pv created persistentvolumeclaim/mysql-pvc created persistentvolumeclaim/wordpress-pvc created % asciinema $ kubectl get pods NAME READY STATUS RESTARTS AGE mysql-98565d745-zmxw5 1/1 Running 0 6s wordpress-67946cd8d8-hz6f4 1/1 Running 0 6s % asciinema $ kubectl get services NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.3.0.1 <none> 443/TCP 3h5m mysql ClusterIP None <none> 3306/TCP 12s wordpress LoadBalancer 10.3.0.196 <pending> 80:32719/TCP 12s % asciinema $ 00:00 asciinema.org/a/267726