Slide 1

Slide 1 text

Ian Lewis Developer Advocate, Google Cloud Platform Kubernetes 1.4 Update DevFest Kansai

Slide 2

Slide 2 text

Confidential & Proprietary Google Cloud Platform 2 Ian Lewis Developer Advocate - Google Cloud Platform Tokyo, Japan +Ian Lewis @IanMLewis

Slide 3

Slide 3 text

Confidential & Proprietary Google Cloud Platform 3 I made this!

Slide 4

Slide 4 text

Agenda ● Kubernetes/GKE/GCP Overview ● Kubernetes 1.4 Update ● GKE Update

Slide 5

Slide 5 text

Agenda ● Kubernetes/GKE/GCP Overview ● Kubernetes 1.4 Update ● Pokemon Goの話

Slide 6

Slide 6 text

Confidential & Proprietary Google Cloud Platform 6 Kubernetes/GKE/GCP Overview

Slide 7

Slide 7 text

Container Image Dependencies Application Code Containers encapsulate application code and all dependencies. Applications can be depend less on the infrastructure where it runs. • In traditional IT environments, applications needed specific infrastructure. Dependencies needed to be installed beforehand. • Containers incorporate applications and their dependencies so deployment to development, test, and production can be made easier. • Don’t need to be dependent on on-premise, private or public cloud environments. What are Containers?

Slide 8

Slide 8 text

Fast Simple and Fast compared to VMs. Can be started in just a few milliseconds. Portable Can be run in a many environments. Efficiency Low overhead. Resources use by containers can be limited. Why Containers?

Slide 9

Slide 9 text

No content

Slide 10

Slide 10 text

Copyright 2015 Google Inc Container Management Node Node Cluster Node ??? ● How to deploy to multiple nodes? ● How to deal with node failures? ● How to deal with container failures? ● How do you update your applications?

Slide 11

Slide 11 text

http://research.google.com/pubs/pub43438.html

Slide 12

Slide 12 text

Enter Kubernetes Greek for “Helmsman”; also the root of the word “Governor” • Container orchestrator • Runs containers • Supports multiple cloud and bare-metal environments • Inspired and informed by Google’s experiences and internal systems • Open source, written in Go Manage applications, not machines

Slide 13

Slide 13 text

Confidential & Proprietary Google Cloud Platform 13 CNCF(Cloud Native Computing Foundation)

Slide 14

Slide 14 text

Confidential & Proprietary Google Cloud Platform 14 Community ● Current stable version: 1.4 ● 930+ contributors ● over 17,000 github stars Project Partners

Slide 15

Slide 15 text

Google Cloud Platform UI CLI API users master nodes etcd scheduler controllers master The 10000 Foot View kubelet kubelet kubelet kubelet kubelet kubelet kubelet kubelet kubelet

Slide 16

Slide 16 text

Google Cloud Platform UI All you really care about API Container Cluster

Slide 17

Slide 17 text

web browsers BorgMaster link shard UI shard BorgMaster link shard UI shard BorgMaster link shard UI shard BorgMaster link shard UI shard Scheduler borgcfg web browsers scheduler Borglet Borglet Borglet Borg Kubernetes Borglet Config file BorgMaster link shard UI shard persistent store (Paxos) manifest.yaml Master Kubelet etcd Kubelet Kubelet Binary Docker Image Docker Hub/Private Repo Kubelet kubernetes-dashboard

Slide 18

Slide 18 text

Google Cloud Platform observe diff act Deployments & ReplicaSets

Slide 19

Slide 19 text

Google Cloud Platform Deployments ReplicaSet - replicas: 3 - selector: - app: MyApp - version: v1 Deployment - name: MyApp kubectl create ...

Slide 20

Slide 20 text

Google Cloud Platform Deployments ReplicaSet - replicas: 4 - selector: - app: MyApp - version: v1 Deployment - name: MyApp kubectl create ...

Slide 21

Slide 21 text

Google Cloud Platform Deployments ReplicaSet - replicas: 3 - selector: - app: MyApp - version: v1 Deployment - name: MyApp kubectl create ...

Slide 22

Slide 22 text

Google Cloud Platform Deployments ReplicaSet - replicas: 3 - selector: - app: MyApp - version: v1 Deployment - name: MyApp kubectl create ...

Slide 23

Slide 23 text

Google Cloud Platform Rolling Updates ReplicaSet - replicas: 3 - selector: - app: MyApp - version: v1 Deployment - name: MyApp kubectl apply ...

Slide 24

Slide 24 text

Google Cloud Platform ReplicaSet - replicas: 3 - selector: - app: MyApp - version: v1 Rolling Updates ReplicaSet - replicas: 0 - selector: - app: MyApp - version: v2 Deployment - name: MyApp

Slide 25

Slide 25 text

Google Cloud Platform ReplicaSet - replicas: 3 - selector: - app: MyApp - version: v1 ReplicaSet - replicas: 1 - selector: - app: MyApp - version: v2 Rolling Updates Deployment - name: MyApp

Slide 26

Slide 26 text

Google Cloud Platform ReplicaSet - replicas: 2 - selector: - app: MyApp - version: v1 ReplicaSet - replicas: 1 - selector: - app: MyApp - version: v2 Rolling Updates Deployment - name: MyApp

Slide 27

Slide 27 text

Google Cloud Platform ReplicaSet - replicas: 2 - selector: - app: MyApp - version: v1 ReplicaSet - replicas: 2 - selector: - app: MyApp - version: v2 Rolling Updates Deployment - name: MyApp

Slide 28

Slide 28 text

Google Cloud Platform ReplicaSet - replicas: 1 - selector: - app: MyApp - version: v1 ReplicaSet - replicas: 2 - selector: - app: MyApp - version: v2 Rolling Updates Deployment - name: MyApp

Slide 29

Slide 29 text

Google Cloud Platform ReplicaSet - replicas: 1 - selector: - app: MyApp - version: v1 ReplicaSet - replicas: 3 - selector: - app: MyApp - version: v2 Rolling Updates Deployment - name: MyApp

Slide 30

Slide 30 text

Google Cloud Platform ReplicaSet - replicas: 0 - selector: - app: MyApp - version: v1 ReplicaSet - replicas: 3 - selector: - app: MyApp - version: v2 Rolling Updates Deployment - name: MyApp

Slide 31

Slide 31 text

Google confidential │ Do not distribute Services A group of pods that work together • grouped by a selector Defines access policy • “load balanced” or “headless” Gets a stable virtual IP and port • sometimes called the service portal • also a DNS name VIP is managed by kube-proxy • watches all services • updates iptables when backends change Hides complexity - ideal for non-native apps Virtual IP Client

Slide 32

Slide 32 text

Monitoring Mobile Development Compute Network Big Data Storage

Slide 33

Slide 33 text

Confidential & Proprietary Google Cloud Platform 33 Kubernetes 1.4

Slide 34

Slide 34 text

Confidential & Proprietary Google Cloud Platform 34 New Features 1. UX Improvements 2. Stateful Application Support 3. Cluster Federation 4. Security

Slide 35

Slide 35 text

Confidential & Proprietary Google Cloud Platform 35 Cluster Creation UX 1. kubeadm 2. API audit logs

Slide 36

Slide 36 text

Confidential & Proprietary Google Cloud Platform 36 Application Support 1. StorageClass

Slide 37

Slide 37 text

Confidential & Proprietary Google Cloud Platform 37 Federation 1. ReplicaSets 2. Secrets 3. Namespaces 4. Events

Slide 38

Slide 38 text

Cluster 1

Slide 39

Slide 39 text

Kubernetes Cluster Federation Cluster 1 Cluster 3 Cluster 3

Slide 40

Slide 40 text

Taiwan Load Balancer Web users

Slide 41

Slide 41 text

Kubernetes Cluster Federation Taiwan Load Balancer Web users

Slide 42

Slide 42 text

Kubernetes Cluster Federation Taiwan Tokyo Load Balancer Web users

Slide 43

Slide 43 text

Kubernetes Cluster Federation Tokyo Load Balancer Web users

Slide 44

Slide 44 text

Confidential & Proprietary Google Cloud Platform 44 GKE

Slide 45

Slide 45 text

No content

Slide 46

Slide 46 text

No content

Slide 47

Slide 47 text

No content

Slide 48

Slide 48 text

No content

Slide 49

Slide 49 text

No content

Slide 50

Slide 50 text

No content

Slide 51

Slide 51 text

slack.kubernetes.io #jp-users

Slide 52

Slide 52 text

Thank You!