KubeCon 2018 Recap: Running VM Workloads Side by Side with Container Workloads 〜 and my opinions〜 Kubernetes Meetup Tokyo #15

KubeCon 2018 Recap: Running VM Workloads Side by Side with Container Workloads 〜 and my opinions〜 Kubernetes Meetup Tokyo #15

Twitter: @amsy810

MasayaAoyama
CyberAgent, Inc

De266761b955b2636e454a1bc7a99ed4?s=128

Masaya Aoyama (@amsy810)

January 10, 2019
Tweet

Transcript

  1. Masaya Aoyama CyberAgent adtech studio Running VM Workloads Side by

    Side with Container Workloads ʙ and my opinionsʙ Kubernetes Meetup Tokyo #15 KubeCon 2018 Recap amsy810 @amsy810
  2. Cloud Native Days Tokyo co-chair Cloud Native Meetup Tokyo Organizer

    (+ JKD + KubeCon ) Japan Container Days v18.04 Keynote (+ IPSJ ComSys 2018)   for Kubernetes CKA #138CKAD #2 OpenStack / Kubernetes Contributor Masaya Aoyama (@amsy810) Infrastructure Engineer
  3. KubeCon  " @2018 NA Seattle % 90$(+&!20$… ) 20'#

     150  
  4. Agenda • 1 min Session Overview • KubeVirt • ClusterAPI

    • Future of KaaS • KubeVirt Storage & NW
  5. Session?F page 05 https://schd.ws/hosted_files/kccna18/50/KubeCon_2018_Running%20VM%20Workl oads%20Side%20by%20Side%20with%20Container%20Workloads.pdf 1. VM*-)-"+ #*-)-"/<CB<AN5 2. KubeVirt

    3Kubernetes VMCB  3. ClusterAPIK: Kubernetes KubernetesCB 7D ClusterAPI: Kubernetes(29>;APIL&$%!M CB 1=68.I@9   ,KubeCon '+68 ,EJ ,40GH
  6. KubeVirt

  7. VM page 07 https://schd.ws/hosted_files/kccna18/50/KubeCon_2018_Running%20VM%20Workloads%20Side%20by%20Side%20with%20Container%20Workloads.pdf OpenStack, oVirt GCP, AWS, Azure

  8. VM page 08 https://schd.ws/hosted_files/kccna18/50/KubeCon_2018_Running%20VM%20Workloads%20Side%20by%20Side%20with%20Container%20Workloads.pdf

  9. VM page 09 https://schd.ws/hosted_files/kccna18/50/KubeCon_2018_Running%20VM%20Workloads%20Side%20by%20Side%20with%20Container%20Workloads.pdf

  10. VM  -+(), page 010 VM '*"! VM%#Kubernetes  

    '"! (VM $   &  $  
  11. KubeVirt is simple page 011 • 91 " 3+<.= •

    Container Runtime$# ?2(> • Kubernetes Node 3?2(> Kubernetes Node )5-87;=:,- 0/  $'!& $ kubectl create configmap -n kube-system kubevirt-config --from-literal debug.useEmulation=true # CRD Controller % $ kubectl create -f https://github.com/kubevirt/kubevirt/releases/download/v0.11.0/kubevirt.yaml # 4 VM< *6 $ kubectl create -f vm.yaml https://schd.ws/hosted_files/kccna18/50/KubeCon_2018_Running%20VM%20 Workloads%20Side%20by%20Side%20with%20Container%20Workloads.pdf
  12.  KubeVirt Architecture Pod kube-apiserver virt-controller virt-handler virt-handler DaemonSet virt-lancher

    libvirtd virt-lancher libvirtd virt-lancher libvirt virt-lancher libvirt virt-lancher libvirt virt-lancher libvirt VM VM  virt-handler kubelet   VM VM VM VM
  13. Live Migration page 013 virt-handler virt-handler DaemonSet virt-lancher libvirtd virt-lancher

    libvirtd VM VM  PodVMI VMI: VirtualMachineInstance VMI   
  14. ClusterAPI

  15. ClusterAPI page 015 Kubernetes  API  

  16. ClusterAPI and MachineController provider  Machine  • MachineDeployment •

    MachineSet • Machine MachineController Provider • KubeVirt • OpenStack • AWS • etc apiVersion: "cluster.k8s.io/v1alpha1" kind: MachineDeployment metadata: name: my-kubevirt-machine spec: replicas: 3 template: spec: providerConfig: value: cloudProvider: "kubevirt" cloudProviderSpec: cpus: "1" memory: "2048M" operatingSystem: "ubuntu" versions: kubelet: "1.12.2"
  17. Future of Kubernetes as a Service?

  18. AKE - Adtech Container Engine page 018 CyberAgent  Kubernetes

    as a Service  Bare metal Servers VM VM VM OpenStack Heat    CloudFormation OpenStack Nova  
  19. OpenStack ) '$"(#& page 019 • CloudProvider  Controller 

    Core !  ./%#& • VM 0 Network Isolation  Network Policy  1Scalable?2 Bare metal Servers VM VM VM KubeVirt  - *  Baremetal - ClusterAPI  , '+
  20. () * )+ page 020 () #"!  , Kubernetes

    Node /$' %& '. 0Immutable   ,1 ()2 ) VM2 ()-
  21. Node  Kubernetes  page 021  Datacenter  Kubernetes

    AvailabilityZone Rack OSImage ComputeNode K8sCluster
  22. KubernetesKubernetes @Japan page 022 "Yahoo! JAPAN  Kubernetes-as-a-Service"  

      https://www.slideshare.net/techblogyahoo/yahoo-japan-kubernetesasaservice
  23. Kubevirt Storage & Networking 

  24. ;)7.-9 =Storage / Networking> page 024 +16Kubernetes38(5   #

    </    "$! 0'&,=4*:2%>
  25. Live Migration - Storage page 025 virt-lancher libvirtd virt-lancher libvirtd

    VM VM ! Live Migration "   StatefulSet  PV
  26. Live Migration - Networking page 026 virt-lancher libvirtd virt-lancher libvirtd

    VM VM LiveMigration IP Address   Pod IP Address Pod  Pod IP Address  …
  27. Networking page 027 10.0.0.0/16 10.0.0.0/24 10.0.1.0/24 10.0.2.0/24 10.0.0.11 10.0.0.12 10.0.0.13

    10.0.1.11 10.0.1.12 10.0.1.13 10.0.2.11 10.0.2.12 10.0.2.13 CNI  CIDR  
  28.  Multiple Interface Pod page 028  CNI  1

     Interface1 Everyone Gets a Data Plane! Multi-Networking Kubernetes with the NPWG Spec - Dan Williams & Doug Smith, Red Hat https://schd.ws/hosted_files/kccna18/9b/Kubecon_%20Everyone%20Gets%20a%20Data%20Plane%21%20Multi- Networking%20Kubernetes%20with%20the%20NPWG%20Spec.pdf
  29. Multiple Interface Pod page 029 Everyone Gets a Data Plane!

    Multi-Networking Kubernetes with the NPWG Spec - Dan Williams & Doug Smith, Red Hat https://schd.ws/hosted_files/kccna18/9b/Kubecon_%20Everyone%20Gets%20a%20Data%20Plane%21%20Multi- Networking%20Kubernetes%20with%20the%20NPWG%20Spec.pdf
  30. Multiple Interface Pod page 030 Everyone Gets a Data Plane!

    Multi-Networking Kubernetes with the NPWG Spec - Dan Williams & Doug Smith, Red Hat https://schd.ws/hosted_files/kccna18/9b/Kubecon_%20Everyone%20Gets%20a%20Data%20Plane%21%20Multi- Networking%20Kubernetes%20with%20the%20NPWG%20Spec.pdf
  31.   page 031 VM  Kubernetes 40+. ClusterAPI 5$

    KaaS"1# -  )*' 8VMMulti NIC9 1.17623 Kubernetes Cluster,(8!+9%&/ ClusterAPI + KubeVirt8ClusterAPI + ?????9 OpenShiftRancheretc Virtual kubelet
  32. GKE $ @*)8/: page 032  46 KubeVirt;<"5 Kubernetes &=

     GCE %.(107?3'( B   #" /proc/cpuinfo vmx flag  >A9 $ kubectl create configmap -n kube-system kubevirt-config --from-literal debug.useEmulation=true “virtctl console” +2 !#" ,- https://github.com/kubevirt/kubevirt/issues/1684
  33.    page 033 https://github.com/kubevirt/kubevirt/blob/master/docs/architecture.md https://github.com/kubevirt/kubevirt/blob/master/docs/components.md

  34. Thank you for your attention follow me: @amsy810