moet ik echt aan die koeberneetes? - itq transform! · sddc consultant @ itq [email protected] olivier...

40
Moet ik echt aan die "koeberneetes"? k8s?

Upload: others

Post on 27-Jul-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Moet ik echt aan die "koeberneetes"?k8s?

Page 2: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Wij zijn wij?

Bart Mulder

SDDC Consultant @ ITQ

[email protected]

Olivier Bootsma

SDDC Consultant @ ITQ

[email protected]

@vOrchestrator

Page 3: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Agenda

3

WAT IS KUBERNETES? WAT IS PKS? VEEL VOORKOMENDE UITDAGINGEN

NETWORKING & SECURITY

Page 4: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Wat is Kubernetes?

“Production-Grade Container Orchestrator”

Abstractielaag

IaaS onafhankelijk

Open-source!

4

Page 5: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Wat doet een Container Orchestrator?

Provisioning

Beschikbaarheid

Redundantie

Resource allocatie

Bereikbaarheid

5

Page 6: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Abstractielaag

Applicatie is het doel

Container de drager

Container platform het middel

Container orchestrator de lijm

6

Page 7: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Wat is PKS?

Management en Automation tool!

Management plane voor Kubernetes clusters

VMware netwerk integratie

Lifecycle management (patching en security)

Open Source Kubernetes

Support!

8

Page 8: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Wat voegt PKS toe?• PCF Ops Manager + BOSH

• Kubernetes Cluster Deployment

• Kubernetes Cluster Management

• NSX-T CNI

• Harbor Container Registry

Page 9: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

10

Externe invloed De klanten zijn ontevreden over onzedienstverlening na meerdere applicatie verstoringen

Business outcome Positief in de publiciteit blijven

Technology outcome Stabiliteit, schaalbaarheid

Enablers Hoog beschikbaar applicatie platform

Uitdaging 1

Page 10: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Platform

11

Kubernetes ClusterKubernetes Control plane

API Server

Scheduler

Controller manager

etcd

Cloud Controller Manager

Master

Page 11: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Platform

12

Kubernetes ClusterKubernetes Control plane

API Server

Scheduler

Controller manager

etcd

Cloud Controller Manager

Master Kubernetes ClusterKubernetes Control plane

API Server

Scheduler

Controller manager

etcd

Cloud Controller Manager

Master #n

Page 12: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Applicatie

13

Kubernetes ClusterKubernetes Worker node

Kubelet

Service Proxy

Kubernetes ClusterDocker

Pod Pod

Node #n

Page 13: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Applicatie

14

Kubernetes ClusterKubernetes Worker node

Kubelet

Service Proxy

Kubernetes ClusterDocker

App A App B

Node #n Kubernetes ClusterKubernetes Worker node

Kubelet

Service Proxy

Kubernetes ClusterDocker

App B App A

Node #n

Replica

Replica

Page 14: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

15

Externe invloed Concurrent levert sneller diensten dan wij leveren / Klanten vragen om nieuwe functionaliteit

Business outcome Klaar zijn voor snelle groei (time 2 market)

Technology outcome Snelheid, vrijheid, schaalbaarheid

Enablers Self-service voor devs / Desired state & Pipelines / rolling updates

Uitdaging 2

Page 15: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Platform en Developer

16

Kubernetes ClusterKubernetes Control plane

API Server

Scheduler

Controller manager

etcd

Cloud Controller Manager

Master

Developer

kubectlApply

Configuration

Page 16: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Platform

17

Kubernetes ClusterKubernetes Control plane

API Server

Scheduler

Controller manager

etcd

Cloud Controller Manager

Master

Kubernetes clusterMarketing Production

Kubernetes ClusterKubernetes Control plane

API Server

Scheduler

Controller manager

etcd

Cloud Controller Manager

Master

Kubernetes clusterMarketing Development

kubectl

Configuration

Developer ADeveloper B

Page 17: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Desired state / Rolling updates

18

Kubernetes ClusterKubernetes Control plane

API Server

Master

Kubernetes ClusterKubernetes Worker node

Kubernetes ClusterDocker

App A App B

Node #nKubernetes Cluster

App A Manifest

GIT Repository

Pipeline Manifest

Apply RunPipeline

Get ManifestRolling Update

Page 18: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Kubernetes Cluster(s)

Overzicht

Kubernetes ClusterKubernetes Worker node

Kubernetes ClusterDocker

App A App B

Node #n

19

Kubernetes ClusterKubernetes Control plane

API Server

Master

• Lifecycle management• Deployment

• Support

Page 19: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Overzicht

20

Kubernetes Cluster(s)

Kubernetes ClusterKubernetes Worker node

Kubernetes ClusterDocker

App A App B

Node #nKubernetes ClusterKubernetes Control plane

API Server

Master

Nieuwe release!

Developer

Security Scan

Nieuwe app container

Apply!

Page 20: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

En nu verder

21

Kubernetes ClusterDocker

App A App B

Boze wolk

Ontsluiting?Veiligheid?

?

Page 21: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller
Page 22: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Leuk die containers, maar hoe intergeer ik die in mijnbestaande netwerk omgeving?

23

Page 23: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Netwerk virtualisatie middels NSX-T

24

FirewallLoad Balancing VisibilitySwitching Routing NAT

NAT

“Every container is a first class citizen of the NSX data-center network”

Page 24: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Netwerk virtualisatie middels NSX-T(2)

25

Page 25: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Netwerk virtualisatie middels NSX-T(3)

26

Kubernetes Container Network

Cloud Foundry Container Network

VM or Bare-metal Network

BGP or Static Routes

Data Center Network

Page 26: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Container network evolutie

27

Port Mapping

vSwitch

Host IP A

Port 8001

Host IP A

Port 8002

Container Network Interface (CNI)

vSwitch

Container Net

vSwitch

Service Mesh (toekomst)

vSwitch

Container Net

EN EN

vSwitch

EN EN

Page 27: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Moeten mijn netwerk en virtualisatie engineers eencompleet nieuwe skillset aanleren?

28

Page 28: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

29

NSX / K8s topology

Namespace: foo Namespace: bar

K8 Cluster1

10.24.0.0/24 10.24.1.0/24 10.24.2.0/24

EBGP/Static

Physical Router 1

Physical Router 2

K8s nodes

Page 29: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Hoe borg ik mijn netwerk beschikbaarheid?

30

Page 30: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Hoe voorkom ik een wildgroei network security opties?

31

Page 31: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Firewall opties

32

Page 32: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Container metadate

33

▶ kubectl get pod nsx-demo-rc-c7x65 -o yaml

apiVersion: v1

kind: Pod

metadata:

creationTimestamp: 2018-07-25T12:05:56Z

generateName: nsx-demo-rc-

labels:

app: nsx-demo

name: nsx-demo-rc-c7x65

namespace: nsx-ujo

Metadata binnen Kubernetes zoals Namespace, podnamen, labels worden allemaal gekopieerd naar de NSX Logical Port middels poorttags

Page 33: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Pre-Created Security Groups / Firewall Rules (Admin Rules)

34

Match on Port Tags

Security groepenworden gebruikt in firewall policy’s

Page 34: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Kubernetes Network Policy

35

Naast ondersteuning van vooraf gedefinieerde regels van beheerders, vertaalt NCP ook Kubernetes NetworkPolicy Objects naar NSX-beveiligingsgroepen en Firewall-regels

Vooraf gedefinieerde beheerdersregels kunnen gelijktijdig in NSX worden gebruikt, beheerdersregels worden in secties vóór of na K8's netwerkbeleidsregels geplaatst

apiVersion: networking.k8s.io/v1

kind: NetworkPolicy

metadata:

name: default-deny

spec:

podSelector: {}

policyTypes:

- Ingress

apiVersion: networking.k8s.io/v1

kind: NetworkPolicy

metadata:

name: nsx-demo-policy

spec:

podSelector:

matchLabels:

app: nsx-demo

policyTypes:

- Ingress

ingress:

- from:

- ipBlock:

cidr: 100.64.160.11/32

ports:

- port: 80

protocol: TCP

Page 35: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Hoe troubleshoot ik mijn netwerk nu het gevirtualizeerd is?

36

Page 36: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

NSX-T build-in

37

Page 37: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

NSX-T build-in(2)

38

Page 38: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

vRealize Network Insight

39

Page 39: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Questions?

Page 40: Moet ik echt aan die koeberneetes? - ITQ Transform! · SDDC Consultant @ ITQ bmulder@itq.nl Olivier Bootsma SDDC Consultant @ ITQ obootsma@itq.nl @vOrchestrator. ... Cloud Controller

Thank you!