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
300
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
Pour une autre idée de la CI, sur la machine du développeur, avec Dagger
eunomie
0
21
container_images.pdf
eunomie
0
53
(DockerCon 23) Container Images: Interactive Deep Dive
eunomie
0
500
(DockerCon 23) What's in my container? Docker scout CLI and CI to the rescue
eunomie
0
180
AlpesCraft 2022 : et si les micro services n'avaient rien à voir avec la technique ?
eunomie
1
220
DevoxxFR 2022 : et si les micro services n'avaient rien à voir avec la technique ?
eunomie
1
500
DevoxxFR 2021: Cloud Native Application Bundle
eunomie
0
94
CNAB: the missing link
eunomie
0
83
Consul Connect: the Service Mesh by HashiCorp
eunomie
0
190
Featured
See All Featured
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Why Our Code Smells
bkeepers
PRO
336
57k
How STYLIGHT went responsive
nonsquared
99
5.5k
Music & Morning Musume
bryan
47
6.5k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
9
740
Bash Introduction
62gerente
611
210k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.5k
The Pragmatic Product Professional
lauravandoore
33
6.5k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
380
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
41
2.2k
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