Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Cloud Native Application Bundle - DevoxxFR 2021
Search
Yves Brissaud
October 01, 2021
0
340
Cloud Native Application Bundle - DevoxxFR 2021
Presentation (given in French) of Cloud Native Application Bundle – CNAB – and demos using Porter.
Yves Brissaud
October 01, 2021
Tweet
Share
More Decks by Yves Brissaud
See All by Yves Brissaud
Manifests, blobs et tags : les images de conteneurs enfin digest(es)
eunomie
0
31
Pour une autre idée de la CI, sur la machine du développeur, avec Dagger
eunomie
0
82
container_images.pdf
eunomie
0
100
(DockerCon 23) Container Images: Interactive Deep Dive
eunomie
0
580
(DockerCon 23) What's in my container? Docker scout CLI and CI to the rescue
eunomie
0
220
AlpesCraft 2022 : et si les micro services n'avaient rien à voir avec la technique ?
eunomie
1
240
DevoxxFR 2022 : et si les micro services n'avaient rien à voir avec la technique ?
eunomie
1
540
DevoxxFR 2021: Cloud Native Application Bundle
eunomie
0
110
CNAB: the missing link
eunomie
0
97
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
How to train your dragon (web standard)
notwaldorf
96
6.2k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
4 Signs Your Business is Dying
shpigford
184
22k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.4k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
We Have a Design System, Now What?
morganepeng
53
7.7k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
Optimizing for Happiness
mojombo
379
70k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
Transcript
#DevoxxFR Cloud Native Application Bundl e The missing link Yves
Brissaud @_crev_ 1 github.com/eunomie/devoxxfr-2021 speakerdeck.com/eunomie/devoxxfr-2021-cloud-native-application-bundle
Yves Brissaud 🐳 Docker 👷 Engineering (Docker Hub) 💬 @_crev_
2
3 https://www.docker.com/career-openings
#DevoxxFR 4 CNAB?
#DevoxxFR 5 Cloud Nativ e Applicatio n Bundle
Application 6 -Larousse « Program or set of programs to
assist the user of a computer in the processing of a speci fi c task »
Cloud Native 7
Cloud Native 8 pzf.fremantle.org/2010/05/cloud-native.html « to work well in a
cloud environment on top of an infrastructure as a service » ➞ elasticit y ➞ distributed infrastructure
Cloud Native 9 https://gotocph.com/2018/sessions/612 @holly_cummins
Cloud Native 10 Idempotence
Cloud Native 11 -Larousse « Idempotence means an operation will
have the same result when applied one or multiple times »
Cloud Native 12 Idempotence • Infrastructure ‣ AMI, ISO, OVF,
… ‣ Packer
Cloud Native Application 13
Cloud Native Application 14 • n services • VMs, containers,
serverless functions, etc • n databases • n managed services • … On top of elastic resources
Cloud Native Application 15 ‣ Terraform ‣ Kubernetes fi les,
kustomize, Helm ‣ Scripts bash ‣ …
Cloud Native Application 16 Source Code CI Service Image
Deployment instructions Infrastructure as Code
Cloud Native Application 17 Deployment: 1. Get source code in
right version 2. Apply IaC 3. Apply deployment instructions 4. Download service images 5. …
Cloud Native Application Bundle 18 Images IaC Deployment … Bundle
19 Cloud Native Application Bundle • Immutable • Inside a
registry • Self contained ➡ o ff l ine
20 Cloud Native Application Bundle Idempotence • Immutable • Inside
a registry • Self contained ➡ o ff l ine
#DevoxxFR 21 📋 bundle descriptor 📦 application images
📦 invocation image 📦 📦
Application Images 22 Containers you are already using! No change
needed to build or distribute them
Invocation Image 23 ✦ Contains all needed tools ✦ Con
fi guration, templates, etc ✦ Install / upgrade / uninstall 📦 Cloud CLIs Helm Charts Helm CLI Terraform CLI IaC Code Invocation image kubectl
Bundle Descriptor 24 • bundle.json • List application and invocation
images • Parameters • Credentials • Outputs
Artefact fi nal 25 OCI Image
CNAB 26 https://cnab.io/ Open speci fi cations: https://github.com/cnabio/cnab-spec CNAB
Core 1.2.0 CNAB Security 1.0.0
Outils 27 cnab-go: CNAB Core implementation https://github.com/cnabio/cnab-go cnab-to-oci: tool
to convert bundles to OCI images https://github.com/cnabio/cnab-to-oci du ffl e: cli to interact with bundles https://du ffl e.sh porter: higher level tool to create and use bundles https://github.com/getporter/porter https://porter.sh
Porter 28 Made by Deis Labs (microsoft) https://deislabs.io The
most user friendly
Porter 29 ‣ porter.yaml - higher level than bundle.json
- mixins ‣ Create bundle.json, then the OCI image
Demo Wordpress 30
Wordpress 31 • Deploy wordpress and its database • Inside
a con fi gurable kubernetes namespace • Using a helm chart
Demo Airgap 32
Airgap 33 • Embed Helm charts • Embed application images
#DevoxxFR Resources • https://cnab.io • https://cnab.io/community-meetings • #cnab on https://slack.cncf.io
• https://porter.sh • https://porter.sh/community 34
#DevoxxFR Merci 🙏 35 Yves Brissaud @_crev_ github.com/eunomie/devoxxfr-2021 speakerdeck.com/eunomie/devoxxfr-2021-cloud-native-application-bundle