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
350
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
The Rise of Local CI Tooling. Thanks AI Coding Agents!
eunomie
0
2
Manifests, blobs et tags : les images de conteneurs enfin digest(es)
eunomie
0
39
Pour une autre idée de la CI, sur la machine du développeur, avec Dagger
eunomie
0
92
container_images.pdf
eunomie
0
110
(DockerCon 23) Container Images: Interactive Deep Dive
eunomie
0
590
(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
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1032
460k
How to train your dragon (web standard)
notwaldorf
96
6.3k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.1k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
2.6k
Raft: Consensus for Rubyists
vanstee
139
7.1k
For a Future-Friendly Web
brad_frost
180
9.9k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Facilitating Awesome Meetings
lara
56
6.6k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
Code Review Best Practice
trishagee
72
19k
BBQ
matthewcrist
89
9.8k
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