an early adopters story about suse cloud application platform...from docker to cloud foundry docker...

73
An Early Adopters Story About SUSE Cloud Application Platform Adfinis SyGroup - Switzerland

Upload: others

Post on 28-May-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

An Early Adopters Story AboutSUSE Cloud Application Platform Adfinis SyGroup - Switzerland

Page 2: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

2

Nicolas Christener

CEO/CTO Adfinis SyGroup

[email protected]

twitter.com/nikslorlinkedin.com/in/christener

Page 3: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

3

Lucas Bickel

Developer @ Adfinis SyGroupOSS dev by night

[email protected]

twitter.com/hairmare

Page 4: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

4

Since 2000

About Adfinis SyGroup

Berne, Basel, Zürich & Lausanne

Over 55 employees

100% Open Source

Broad customer base

Page 5: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

5

Our Services

Engineering Managed Services DevOps Development

Page 6: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

6

Our Partners

Page 7: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

7

Switzerland

Page 8: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

8

Stereotypical Swiss Icons

Page 9: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

9

Also SwissOS4: Early Free Flying Quadcopter at a Swiss Federal Institute of Technology

● Collision avoidance

● Autonomous flight

● Flight planning

● Helped kickstart thecurrent drone craze

Page 10: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

10

Also SwissVS-Code: Source-code Editor by MSFT

● Most popular developer environment

● Built in Zürich

● By Erich Gamma and team

● Open source made in Switzerland

Page 11: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

11

Not SwissDedicated Regions by Public Cloud Providers

● Some countries have tailor-made solutions for their government customers - none in Switzerland so far

● Governance, compliance, and data protection regulatories mandate a custom built solution for Swiss government customers

● We took the opportunity to build a solution in cooperation with SUSE

Page 12: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

1212

Let's talk about CAP baby, let's talk about you and me, …, let's talk about CAP

Page 13: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

13

From Docker to Cloud Foundry

● Docker introduced the masses to containers

● Container workloads require a container orchestration solution

● Kubernetes (K8s) is the de facto container orchestrator

● Cloud Foundry (CF) development started even earlier

● SUSE is bringing Cloud Foundry to the K8s ecosystem

Page 14: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

14

Container 101

App 1 App 3

Bins/Libs

GuestOS

App 2

Bins/Libs

Bins/Libs

GuestOS

GuestOS

Hypervisor

Host OS

Bare Metal

VM

Container Engine

Host OS

Bare Metal

App 1 App 3

Bins/Libs

App 2

Bins/Libs

Bins/Libs

Container

Page 15: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

15

Kubernetes 101

Node Container Engine

POD

Container

POD

Container

POD

Container

Node Container Engine

POD

Container

POD

Container

POD

Container

Node Container Engine

POD

Container

POD

Container

POD

Container

Master

Page 16: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

16

CloudFoundry 101 (Eirini Style)

code cf push

POD

Container

running app

kubernetes

Page 17: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

1717

Why is this so cool?

Page 18: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

18

SPOILER ALERT

SUSE Cloud Application Platform (CAP) is the simplest Cloud Foundry distribution available

Page 19: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

19

A Lightweight Cloud Foundry

Pivotal Cloud Foundry (PCF)

31 Nodes, 43 vCPUs, 122 GB RAM

http://pcfsizer.pivotal.io/#!/sizing/azure/2.2/small

Cloud Application Platform

11 Nodes, 22 vCPUs, 88 GB RAM

Small setup on Azure using AKS

Page 20: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

20

A Portable PaaS Solution

SUSE Cloud Application Platform officially supports different K8s stacks

● SUSE CaaSP

● Amazon EKS

● Microsoft AKS

● Google GKE

This is not the cases for other PaaS solutions

● OpenShift is not supported on other K8s platforms

● Pivotal does not support plain K8s at the moment

Page 21: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

21

A Developer Centric Solution

Cloud Foundry style

● Developers can use "cf push"

and focus on code

● Sensible amount of settings

● Open Service Broker API was

born in CF area

● Perfect for Spring-Boot devs

Kubernetes style

● Developers need to mess with

"kubectl" and "s2i" and friends

● Large amount of settings

● Open Service Broker API still an

alien

● Generic Infrastructure Solution

Page 22: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

22

If one focuses on developer agility,Cloud Foundry (CF) is the answer!

Page 23: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

2323

A Story About a Somewhat Bigger Project

Page 24: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

24

Let the Developers do Their Magic!

● Teams need a platform to deploy their tailor-made applications

● Time to market is a key factor in enabling customers success!

● DevOps mindset requires access to self-service capabilities

Page 25: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

25

More Details About the Project

● Swiss organizations tend to run their own infrastructure

● "No one has access to my data" was the #1 strategy for many Swiss services - e.g. banking, pharmaceutical and other industries

● Swiss Government wants to keep the data in Switzerland as well

● Broad acceptance of public cloud offerings will not happen soon

Page 26: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

26

Goals

● Provide a PaaS for Swiss federal offices

● Integrate provided services into existing service catalog

● Cloud-like billing, connected to existing SAP landscape

● We need to separate tenants physically in some cases

● Make developers and operators happy by building an awesome platform

Page 27: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

27

Lovely Details Worth Mentioning

● Direct contact with SUSE product management allows influencing the future of the platform

● The shift to “Open Source first, upstream first” by SUSE was done at the right time for us. It enables us to help fix documentation for our customer at the proper upstream venues!

● We have the opportunity to help lay the foundation for the future of government cloud computing in Switzerland

Page 28: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

28

Use Cases

Page 29: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

29

Use Cases - Goals

● End-user self-service portal for non-dev customers

● Allow automating all the things

● Offer various in-cluster services

● Allow users to consume standard services w/o deploying to the cluster

● Everything needs to be billable

Page 30: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

30

Use Cases - User Scopes

● Can order services and pay for them

● Does not have any escalated privileges

● Uses a well integrated self- service portal (HP-OO based)

● Time to market and elasticity are crucial

● May also be end user

● Develops & deploys apps using CF API

● Automates everything from development to deployment & day two operations

● May also use space on the development environment to learn about the platform

● Maintains the cluster

● Has full RBAC access

● Owns government cloud strategy

● Responsible for platform & dev lifecycle mgmt

● Manages commercial & financing aspects of the platform

End User “Internal” User Operator Platform Owner

Page 31: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

31

Use Cases - Solutions

● Service offerings exposed via Open Service Broker API

● High-order PaaS features from CAP exposed to users through CF API

● HP Operations Orchestration (HP-OO) integration as self-service portal

● Billing integration done by customer○ In the future we plan on standardizing on cf-abacus if it reaches general availability

Page 32: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

3232

Lessons Learned

Page 33: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

33

Integrating into an Existing Environment

Page 34: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

34

Existing Architecture

Compute

● Hewlett Packard

● On premise

Storage

● NetApp NFS storage

● Cluster on NAS level

Network

● Edge: F5 Big-IP

● LAN: Cisco

Page 35: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

35

Architecture Insights

● Deployment on bare-metal

● Reuse existing hardware

● Software defined ... where possible

Page 36: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

36

Compute

Page 37: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

37

Compute - Goals

● Compute is mostly a no-brainer however…

● Spectre/Meltdown/etc. led to the "separate physically" requirement ○ Customer with specific security demands get their own CaaSP / bare-metal setup

● We want to automate Velum (admin) node installs○ CaaSP + CAP installation should be automated as much as possible

● Automation means faster time to market

Page 38: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

38

Compute - Reality

● Installation of a CaaSP cluster not fully automated out of the box○ Velum node is usually installed manually○ new Kubernetes nodes need to be assigned a system role

● Manual installation is not an option for a service provider

● With automation we can tick the "reproducible" checkbox

Page 39: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

39

Compute - Solutions

● Complete CaaSP automation is achievable○ Had to create some AutoYAST + Cloud-init configuration

● Integrated pipeline to set up the rest done by customer○ Does other things like set up billing, backup, etc.

● We strive to make documentation & code available so others can use it

Page 40: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

40

Networking

Page 41: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

41

Networking - Goals

● Exposing an internal service should automatically configure the LB

● The F5 LB in front of the cluster is integrated into the stack

● Restrict network connections of Pods

● Pods should not be able to sniff traffic of their neighbours

Page 42: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

42

Networking - Reality

● Flannel doesn't offer enough network restriction

● Network automation has its own pitfalls○ processes, governance, licensing, etc.

○ F5 automation needs "F5 SDN services" (additional $$$)

● Workloads with specific security demands need their own CaaSP / bare metal setup

Page 43: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

43

Networking - Solutions

● Outgoing proxy was a challenge both for the deploy and for ops○ was fixed upstream by SUSE

○ check “Using a Proxy Server with Authentication” in the deployment guide

● Waiting to switch CNI (from Flannel → Cilium)

Page 44: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

44

Storage

Page 45: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

45

Storage - Goals

● Customers want their own storage volume on the storage cluster

● Volume provisioning should be automated

● Existing NetApp infrastructure shall be integrated into the stack

Page 46: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

46

Storage - Reality

● NetApp offers a K8s storage orchestrator (Trident)○ Open Source & works like a charm - thanks NetApp!

● Current CaaSP can't use Trident snapshot functionality○ K8s volume snapshots are an alpha feature - would be nice to have○ Snapshots are manageable out of band for now

Page 47: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

47

Storage - Solutions

● If you have NetApp, go and try Trident

● Can't say much about other storage vendors for now○ Any feedback from the audience?

● Can't say much about SUSE Enterprise Storage (SES) in this context○ I'm sure Lars Marowsky-Brée et al. made SES + CAP = 💖

Page 48: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

48

BackupRestore Strategy

Page 49: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

49

BackupRestore Strategy - Goals

● Primary areas of focus:○ Disaster Recovery (DR)

○ Business Continuity Management (BCM)

● Reinstall and restore state rather than restoring full “nodes”

● Stateful resources (storage, databases) are kept in dedicated external clusters

Page 50: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

50

BackupRestore Strategy - Reality

● Internal container images aren't part of the backup○ Can be rebuilt using CI/CD

○ Nevertheless we keep backups of all images for faster restores

● We don’t have complete control over all images in a users container registry but their images need to be restorable

● Stateful services (i.e. MongoDB, Cassandra) in the cluster are a reality even though we would prefer to run those externally

Page 51: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

51

BackupRestore Strategy - Solutions

● Multi-pronged approach○ K8s State: Heptio Velero (formerly Ark)

○ CF State: cf-plugin-backup

○ Storage: PV snapshots through NetApp Trident

○ etcd State: DIY tooling as an additional fallback should Velero fail

○ Dedicated solutions for in-cluster services (i.e. MongoDB, Cassandra)

● All of these need to be understood and managed

Page 52: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

52

Logging

Page 53: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

53

Logging - Goals

● Centralized logging is a first-class citizen

● Batteries included for customers

● Existing customers can use tooling they are used to (i.e. Splunk)

Page 54: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

54

Logging - Reality

● Splunk has really high operational expenses

● Log shippers for Splunk exist but aren’t integrated out of the box

● Hopping onboard an existing Splunk installation is harder than expected

Page 55: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

55

Logging - Solutions

● Integrated tooling has support for shipping to Elasticsearch/Logstash/Kibana (ELK) so we use it

● K8s logs are shipped to ELK using fluentd

● CF logs get shipped to ELK using firehose nozzle

● If customer isn’t happy with ELK we can switch to Splunk at any time

Page 56: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

56

Monitoring

Page 57: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

57

Monitoring - Goals

● Establish key performance indicator (KPI) based monitoring

● Offer monitoring as a service for tenants

● No single point of failure in monitoring

● Expose metrics while adhering to policy of least privilege

● We want to use included best of breed tooling like Prometheus

Page 58: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

58

Monitoring - Reality

● Prometheus needs to be monitored itself

● There are no easy ways to enforce authorization in Prometheus

● Prometheus and Grafana need quite some configuration to be useful

Page 59: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

59

Monitoring - Solutions

● Use Grafana as frontend to Prometheus○ Deployment of dashboards to Grafana is important to help users get up and running

● Deploy multiple Prometheus stacks for multi-tenancy○ This leads to tolerable redundancy over various Prometheus databases

● An additional external Prometheus instance monitors thein-cluster Prometheus

Page 60: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

60

Security

Page 61: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

61

Security - Goals

● Best of breed security concepts and tooling are the only option

● Network isolation is a must

● We want to automate as much as possible

Page 62: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

62

Security - Reality

● Network isolation isn't possible with Flannel

● Helms tiller doesn’t make it as easy as we would like on the K8s parts

● RBAC is a lot of work to set up

Page 63: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

63

Security - Solutions

● NIST Special Publication 800-190 - Application Container Security Guide (let’s not invent our own standards here)

● Adapt existing cultural and technical conventions to a new highly dynamic operating model

● Infrastructure and customer apps are grouped by protection, needs help enforcing network isolation where needed, if needed we deploy an additional cluster for sensitive apps

Page 64: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

64

Security - Solutions

● MicroOS as a small ephemeral base for nodes

● Vulnerability management by scanning containers in continuous integration (CI) process

● A tiller installation per “RBAC-Group” for K8s users○ We’re looking forward to helm 3

● CF already has a quite robust security model

Page 65: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

65

Enabling DevOps

Page 66: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

66

Enabling DevOps - Goals

● DevOps as key to enabling automation

● Allows a high degree of self-service capabilities

● Both the CF API and K8s are available to users

Page 67: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

67

Enabling DevOps - Solutions

● Paradigm shift when it comes to adopting existing processes into a highly dynamic container environment

● Continuous Integration and Deployment is mandatory

● Three classical environments to aid rollout and testing○ development○ integration○ production

Page 68: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

68

A defined reference architecture helps onboard new developers

Enabling DevOps - Solutions

Gateway

Backing Services

TelemetryCharging

&Billing

DevOps Automation

Managed Containers

Service Mesh

Dev

User

Page 69: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

69

Enabling DevOps - Solutions

● Users that want full control can use helm and co.

● Users that want an opinionated stack use CF tooling

● Trainings for the customer and users → https://ad-sy.ch/trainings

Page 70: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

7070

Outlook & Thanks

Page 71: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

71

To the Cloud and Beyond

● Federate across multiple data centers

● Be the default PaaS provider for Swiss government customers

● The platform is available and builds the foundation for large digital transformation projects

● Looking forward to new cloud native services from ISVs

Page 72: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

72

Thanks! Merci! Dankeschön!

Early adoption needed help from SUSE that we received in time

● Markus Wolf, Country Manager SUSE Switzerland

● Ralf Dannert, Systems Engineer SUSE

● Carsten Duch, Sales Engineer SUSE

● Jeff Hobbs, Director of Engineering CaaSP/CAP, SUSE

● plus countless other awesome chameleons

Page 73: An Early Adopters Story About SUSE Cloud Application Platform...From Docker to Cloud Foundry Docker introduced the masses to containers Container workloads require a container orchestration

7373