Slide 1

Slide 1 text

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

Slide 2

Slide 2 text

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

Slide 3

Slide 3 text

KubeCon  " @2018 NA Seattle % 90$(+&!20$… ) 20'#  150  

Slide 4

Slide 4 text

Agenda • 1 min Session Overview • KubeVirt • ClusterAPI • Future of KaaS • KubeVirt Storage & NW

Slide 5

Slide 5 text

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;APIL&$%!M CB 1=68.I@9   ,KubeCon '+68 ,EJ ,40GH

Slide 6

Slide 6 text

KubeVirt

Slide 7

Slide 7 text

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

Slide 8

Slide 8 text

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

Slide 9

Slide 9 text

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

Slide 10

Slide 10 text

VM  -+(), page 010 VM '*"! VM%#Kubernetes   '"! (VM $   &  $  

Slide 11

Slide 11 text

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

Slide 12

Slide 12 text

 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

Slide 13

Slide 13 text

Live Migration page 013 virt-handler virt-handler DaemonSet virt-lancher libvirtd virt-lancher libvirtd VM VM  PodVMI VMI: VirtualMachineInstance VMI   

Slide 14

Slide 14 text

ClusterAPI

Slide 15

Slide 15 text

ClusterAPI page 015 Kubernetes  API  

Slide 16

Slide 16 text

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"

Slide 17

Slide 17 text

Future of Kubernetes as a Service?

Slide 18

Slide 18 text

AKE - Adtech Container Engine page 018 CyberAgent  Kubernetes as a Service  Bare metal Servers VM VM VM OpenStack Heat    CloudFormation OpenStack Nova  

Slide 19

Slide 19 text

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

Slide 20

Slide 20 text

() * )+ page 020 () #"!  , Kubernetes Node /$' %& '. 0Immutable   ,1 ()2 ) VM2 ()-

Slide 21

Slide 21 text

Node  Kubernetes  page 021  Datacenter  Kubernetes AvailabilityZone Rack OSImage ComputeNode K8sCluster

Slide 22

Slide 22 text

KubernetesKubernetes @Japan page 022 "Yahoo! JAPAN  Kubernetes-as-a-Service"     https://www.slideshare.net/techblogyahoo/yahoo-japan-kubernetesasaservice

Slide 23

Slide 23 text

Kubevirt Storage & Networking 

Slide 24

Slide 24 text

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

Slide 25

Slide 25 text

Live Migration - Storage page 025 virt-lancher libvirtd virt-lancher libvirtd VM VM ! Live Migration "   StatefulSet  PV

Slide 26

Slide 26 text

Live Migration - Networking page 026 virt-lancher libvirtd virt-lancher libvirtd VM VM LiveMigration IP Address   Pod IP Address Pod  Pod IP Address  …

Slide 27

Slide 27 text

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  

Slide 28

Slide 28 text

 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

Slide 29

Slide 29 text

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

Slide 30

Slide 30 text

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

Slide 31

Slide 31 text

  page 031 VM  Kubernetes 40+. ClusterAPI 5$ KaaS"1# -  )*' 8VMMulti NIC9 1.17623 Kubernetes Cluster,(8!+9%&/ ClusterAPI + KubeVirt8ClusterAPI + ?????9 OpenShiftRancheretc Virtual kubelet

Slide 32

Slide 32 text

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

Slide 33

Slide 33 text

   page 033 https://github.com/kubevirt/kubevirt/blob/master/docs/architecture.md https://github.com/kubevirt/kubevirt/blob/master/docs/components.md

Slide 34

Slide 34 text

Thank you for your attention follow me: @amsy810