basics of kubernetes on bosh: run production-grade ... · what is kubernetes (k8s) • kubernetes,...
TRANSCRIPT
Colin Humphreys, CTO, Cloud, PivotalNathan Ness, Technical Product Manager, CNABU
CNA3429BU
#VMworld #CNA3429BU
Basics of Kubernetes on BOSH: Run Production-grade Kubernetes on the SDDC
VMworld 2017 Content: Not fo
r publication or distri
bution
• This presentation may contain product features that are currently under development.
• This overview of new technology represents no commitment from VMware to deliver these features in any generally available product.
• Features are subject to change, and must not be included in contracts, purchase orders, or sales agreements of any kind.
• Technical feasibility and market demand will affect final delivery.
• Pricing and packaging for any new technologies or features discussed or presented have not been determined.
Disclaimer
CONFIDENTIAL 2
VMworld 2017 Content: Not fo
r publication or distri
bution
Agenda
Introductions
What and Why of SDDC
What and Why Bosh
What and Why Kubernetes
What and Why Kubo
What and Why of PKS
What and Why of Google
VMworld 2017 Content: Not fo
r publication or distri
bution
Introductions
VMworld 2017 Content: Not fo
r publication or distri
bution
What and Why of SDDC
VMworld 2017 Content: Not fo
r publication or distri
bution
What is the SDDC
6
Abstraction of Hardware
VMworld 2017 Content: Not fo
r publication or distri
bution
7
Compute VirtualizationSDDC
VMworld 2017 Content: Not fo
r publication or distri
bution
OpsTeams
Network StorageCompute
WW
A A
R
Web
2 VMs, 2CPU, 2GB mem, 10GB disk, RHEL
LoadBalancer
Open 80,443
App
2 VMs 4CPU, 4GB mem, 30GB disk
Open 22 internal only, 8443 from Web
Request Infrastructure
web_instance: webxyz
flavor: m1.small
image: RHEL-x86_64-chef
network: web-net
security: web-sec
quantity: 2
-------<snip>----------
Web-net: web-net
Subnet: 10.10.0.0
Mask: 255.255.255.0
Web-sec: name: web-sec
in: allow: tcp: 22
out: allow: tcp: 80, 443
Describe Infrastructure
Days & Variability Fast &
Predictable
flavor: m1.small
Cpu: 2
Mem: 2
Disk: 10
Cloud APIs
Infrastructure
“Consumer”
Wait
https://youtu.be/Nk8JCAgmDmg
Long LivedShort Lived
IaaS
VMworld 2017 Content: Not fo
r publication or distri
bution
What and Why of Bosh
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
VS
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
Release
Software
VMworld 2017 Content: Not fo
r publication or distri
bution
BOSH
Director
VM
Release
Software
VMworld 2017 Content: Not fo
r publication or distri
bution
BOSH
Director
VM
Release
Software
VMworld 2017 Content: Not fo
r publication or distri
bution
BOSH
Director
VM
Release
Software
Stemcell
OS
VMworld 2017 Content: Not fo
r publication or distri
bution
BOSH
Director
VM
Release
Software
Stemcell
OS
VMworld 2017 Content: Not fo
r publication or distri
bution
BOSH
Director
VM
Manifest
Definition
Release
Software
Stemcell
OS
VMworld 2017 Content: Not fo
r publication or distri
bution
BOSH
Director
VM
Manifest
Definition
Release
Software
Stemcell
OS
VMworld 2017 Content: Not fo
r publication or distri
bution
BOSH
Director
VM
Manifest
Definition
Release
Software
Stemcell
OS
Cloud
IaaS
VMworld 2017 Content: Not fo
r publication or distri
bution
BOSH
Director
VM
Manifest
Definition
Release
Software
Stemcell
OS
Cloud
IaaS
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
Day Two
VMworld 2017 Content: Not fo
r publication or distri
bution
Day TwoOps problem now
VMworld 2017 Content: Not fo
r publication or distri
bution
Day TwoOps problem now
• Declarative and self-healing
VMworld 2017 Content: Not fo
r publication or distri
bution
Day TwoOps problem now
• Declarative and self-healing• Updates - canaries + MIF
VMworld 2017 Content: Not fo
r publication or distri
bution
Day TwoOps problem now
• Declarative and self-healing• Updates - canaries + MIF• Scaling - director holds all
VMworld 2017 Content: Not fo
r publication or distri
bution
What and Why Kubernetes
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
I have 1000’s of containers!!
VMworld 2017 Content: Not fo
r publication or distri
bution
What is Kubernetes (K8s)
• Kubernetes, is an open-source platform for managing, automating deployment, scaling, and operating containerized applications across a cluster of worker nodes.
39
Capabilities:
• Deploy your applications quickly and
predictably
• Scale your applications on the fly
• Seamlessly roll out new features
• Optimize use of your hardware by using only
the resources you need
Role:
• K8s sits in the Container as a Service (CaaS)
or Container orchestration layer
VMworld 2017 Content: Not fo
r publication or distri
bution
Deployment_X.yaml
ContainerImage1
Replicas: 3
ContainerImage2
Replicas: 2
10,000 Foot View
• Container Cluster = “Desired State Management”
– Kubernetes Cluster Services (w/API)
• Worker = (Container Host) have agent called “Kubelet”
• Deployment = Configuration File of desired state
• Container Image = Runs in a Pod
• Replicas = QTY of Pods that must be running
40
Worker
(Container Host)
P1R1
Worker
(Container Host)
P1R2 P2R1 P1R1
P2R1
Worker
(Container Host)
P1R3 P2R2 P2R2
Kubernetes
Cluster
ServicesAPI
K
K
KDeployment_Y.yaml
ContainerImage1
Replicas: 1
ContainerImage2
Replicas: 2
P1R1
P1R2
P2R1
VMworld 2017 Content: Not fo
r publication or distri
bution
What and Why of Kubo
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
What problem does Kubo solve?
Uniform way to instantiate, deploy, and manage highly available Kubernetes clusters. On any cloud.
VMworld 2017 Content: Not fo
r publication or distri
bution
What and Why of PKS
VMworld 2017 Content: Not fo
r publication or distri
bution
BOSH
Director
VM
Manifest
Definition
Release
Software
Stemcell
OS
Cloud
IaaS
VMworld 2017 Content: Not fo
r publication or distri
bution
Manifests
VMworld 2017 Content: Not fo
r publication or distri
bution
Manifests“Normal” CF is ~6000 lines of
YAMLVMworld 2017 Content: N
ot for publicatio
n or distribution
Manifests“Normal” CF is ~6000 lines of
YAMLVMworld 2017 Content: N
ot for publicatio
n or distribution
Manifests“Normal” CF is ~6000 lines of
YAML
---
instance_groups:
- azs:
- z1
instances: 3
jobs:
- name: etcd
properties:
etcd:
peer_require_ssl: false
VMworld 2017 Content: Not fo
r publication or distri
bution
Tenancy
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
TenancyEverybody wants their own
KubernetesVMworld 2017 Content: N
ot for publicatio
n or distribution
TenancyEverybody wants their own
Kubernetes
• Privileged containers
VMworld 2017 Content: Not fo
r publication or distri
bution
TenancyEverybody wants their own
Kubernetes
• Privileged containers• Security
VMworld 2017 Content: Not fo
r publication or distri
bution
TenancyEverybody wants their own
Kubernetes
• Privileged containers• Security• Network performance isolation
VMworld 2017 Content: Not fo
r publication or distri
bution
TenancyEverybody wants their own
Kubernetes
• Privileged containers• Security• Network performance isolation• Storage performance isolation
VMworld 2017 Content: Not fo
r publication or distri
bution
TenancyEverybody wants their own
Kubernetes
• Privileged containers• Security• Network performance isolation• Storage performance isolation• API Versioning
VMworld 2017 Content: Not fo
r publication or distri
bution
BOSH-managed Kubernetes environmentsprovisioned through a service broker.
BOSH
ServiceBroker
VSphere
So, what is PKS?
pks cli
VMworld 2017 Content: Not fo
r publication or distri
bution
K8s cluster
BOSH-managed Kubernetes environmentsprovisioned through a service broker.
BOSH
ServiceBroker
VSphere
So, what is PKS?
pks cli
VMworld 2017 Content: Not fo
r publication or distri
bution
K8s cluster
BOSH-managed Kubernetes environmentsprovisioned through a service broker.
BOSH
ServiceBroker
VSphere
kubectl
So, what is PKS?
pks cli
VMworld 2017 Content: Not fo
r publication or distri
bution
K8s clusterK8s clusterK8s cluster
BOSH-managed Kubernetes environmentsprovisioned through a service broker.
BOSH
ServiceBroker
VSphere
kubectl
So, what is PKS?
pks cli
VMworld 2017 Content: Not fo
r publication or distri
bution
K8s clusterK8s clusterK8s clusterK8s cluster
BOSH-managed Kubernetes environmentsprovisioned through a service broker.
BOSH
ServiceBroker
VSphere
K8s clusterK8s clusterkubectl
So, what is PKS?
pks cli
VMworld 2017 Content: Not fo
r publication or distri
bution
Sample v1.0 PKS CLI Experience
Deploy a K8s cluster instance$pks create-service kubo-odb small myk8s
Get access credentials to Kubernetes API$pks create-service-key myk8s myk8s-key
Use existing Kubernetes toolchain$kubectl get pods --namespace=kube-system
VMworld 2017 Content: Not fo
r publication or distri
bution
What and Why of Google
VMworld 2017 Content: Not fo
r publication or distri
bution
Apps are cross-compatible between PKS and Google Container Engine (GKE)
Google Container
Engine (GKE)Pivotal Container
Service (PKS)
Private and
Public Cloud
Public Cloud
(on GCP)
VMworld 2017 Content: Not fo
r publication or distri
bution
“But I’m Not Google!”How any enterprise can use hyper-scale Google cloud services
[PBO3475BU]
Wednesday, Aug 30, 11:00 a.m. - 12:00 p.m. | Mandalay Bay Ballroom L, Level 2
Google Container
Engine (GKE)Pivotal Container
Service (PKS)
Private and
Public Cloud
Public Cloud
(on GCP)
VMworld 2017 Content: Not fo
r publication or distri
bution
The Future of PKS
VMworld 2017 Content: Not fo
r publication or distri
bution
FutureColin’s crystal ball
VMworld 2017 Content: Not fo
r publication or distri
bution
FutureColin’s crystal ball
• Automated cred rotation
VMworld 2017 Content: Not fo
r publication or distri
bution
FutureColin’s crystal ball
• Automated cred rotation• Integrations everywhere!
VMworld 2017 Content: Not fo
r publication or distri
bution
FutureColin’s crystal ball
• Automated cred rotation• Integrations everywhere!• Workflow automation
VMworld 2017 Content: Not fo
r publication or distri
bution
FutureColin’s crystal ball
• Automated cred rotation• Integrations everywhere!• Workflow automation• Closer ERT integration
VMworld 2017 Content: Not fo
r publication or distri
bution
FutureColin’s crystal ball
• Automated cred rotation• Integrations everywhere!• Workflow automation• Closer ERT integration• The best way to deploy K8s
VMworld 2017 Content: Not fo
r publication or distri
bution
Q&A
82
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution
VMworld 2017 Content: Not fo
r publication or distri
bution