68
Matt McNeeney Senior Product Manager, Pivotal R&D [email protected] @1mattmc Nathan Ness Technical Product Manager, CNABU @nvpnathan CNA2080BE Basics of Kubernetes on BOSH: Run Production- grade Kubernetes on the SDDC VMworld 2017 Content: Not for publication or distribution

Basics of Kubernetes on BOSH: Run Production-grade ......Basics of Kubernetes on BOSH: Run Production-grade Kubernetes on the SDDC VMworld 2017 Content: Not for publication or distribution

  • Upload
    others

  • View
    15

  • Download
    0

Embed Size (px)

Citation preview

Matt McNeeneySenior Product Manager, Pivotal R&[email protected]@1mattmc

Nathan NessTechnical Product Manager, CNABU@nvpnathan

CNA2080BE

Basics of Kubernetes on BOSH: Run Production-grade Kubernetes on the SDDC

VMworld 2017 Content: Not fo

r publication or distri

bution

Disclaimer

• 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.

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

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 & Predictabl

e

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

Coordinating a few things is OK

VMworld 2017 Content: Not fo

r publication or distri

bution

Coordinating lots of things is hard

VMworld 2017 Content: Not fo

r publication or distri

bution

What do we need to be able to do this?VMworld 2017 Content: N

ot for publicatio

n or distribution

Bundled releases- identifiabilityWhat do we

need to be able to do this?VMworld 2017 Content: N

ot for publicatio

n or distribution

Bundled releases- identifiability

Integration- reproducibility

What do we need to be able to do this?VMworld 2017 Content: N

ot for publicatio

n or distribution

Bundled releases- identifiability

Integration- reproducibility

Deployment framework- consistency

What do we need to be able to do this?VMworld 2017 Content: N

ot for publicatio

n or distribution

VMworld 2017 Content: Not fo

r publication or distri

bution

BORING DEPLOYMENTS

VMworld 2017 Content: Not fo

r publication or distri

bution

Great for building out servers (but not

a software packaging tool)

Great for packing up software to

deploy anywhere

Great for keeping infrastructure in a good state (but designed for servers, not services)

VMworld 2017 Content: Not fo

r publication or distri

bution

BOSH can do it all!VMworld 2017 Content: N

ot for publicatio

n or distribution

“BOSH is an open source tool for release engineering, deployment, lifecycle management, and monitoring of distributed systems.”VMworld 2017 Content: N

ot for publicatio

n or distribution

BOSH

Director

VM

VMworld 2017 Content: Not fo

r publication or distri

bution

Release

Software

BOSH

Director

VM

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

BOSH

DEPLOY!

Infrastructure

VMworld 2017 Content: Not fo

r publication or distri

bution

What does this give us?

TheDay Two

ExperienceVMworld 2017 Content: N

ot for publicatio

n or distribution

● Declarative and self-healing

What does this give us?

TheDay Two

ExperienceVMworld 2017 Content: N

ot for publicatio

n or distribution

● Declarative and self-healing

● Updates

What does this give us?

TheDay Two

ExperienceVMworld 2017 Content: N

ot for publicatio

n or distribution

● Declarative and self-healing

● Updates

● Scaling

What does this give us?

TheDay Two

ExperienceVMworld 2017 Content: N

ot for publicatio

n or distribution

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 1000s 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.

36

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

37

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

+

= KuBoVMworld 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

1)Manifests

VMworld 2017 Content: Not fo

r publication or distri

bution

1)ManifestsOpen Source Cloud Foundry is

about 6000 lines of YAML...VMworld 2017 Content: N

ot for publicatio

n or distribution

1)ManifestsOpen Source Cloud Foundry is

about 6000 lines of YAML...

...and writing YAML is not fun

VMworld 2017 Content: Not fo

r publication or distri

bution

2) Tenancy

VMworld 2017 Content: Not fo

r publication or distri

bution

2) TenancyEverybody wants their own

Kubernetes...VMworld 2017 Content: N

ot for publicatio

n or distribution

2) TenancyThis is difficult.

VMworld 2017 Content: Not fo

r publication or distri

bution

2) TenancyWhat do dev teams need?

VMworld 2017 Content: Not fo

r publication or distri

bution

● Security

2) TenancyWhat do dev teams need?

VMworld 2017 Content: Not fo

r publication or distri

bution

● Security

● Compute performance isolation2) TenancyWhat do dev teams need?

VMworld 2017 Content: Not fo

r publication or distri

bution

● Security

● Compute performance isolation

● Network performance isolation

2) TenancyWhat do dev teams need?

VMworld 2017 Content: Not fo

r publication or distri

bution

● Security

● Compute performance isolation

● Network performance isolation

● Storage performance isolation

2) TenancyWhat do dev teams need?

VMworld 2017 Content: Not fo

r publication or distri

bution

VMworld 2017 Content: Not fo

r publication or distri

bution

BOSH-managed Kubernetes environments (Kubo)provisioned through a service broker.

BOSH

ServiceBroker

VSphere

What is Pivotal Container Service (PKS)?

pks cli

VMworld 2017 Content: Not fo

r publication or distri

bution

BOSH-managed Kubernetes environmentsprovisioned through a service broker.

BOSH

ServiceBroker

VSphere

What is Pivotal Container Service (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

cluster

K8s cluster

BOSH-managed Kubernetes environmentsprovisioned through a service broker.

BOSH

ServiceBroker

VSphere

K8s clusterK8s

clusterkubectl

So, what is PKS?

pks cli

Everyone can have their own Kubernetes!

VMworld 2017 Content: Not fo

r publication or distri

bution

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

Q&A

66

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