Gérer les environnements et les versions approuvées
Automatiser les déploiements sur AWS
Dunieski Otano
Amazon Web Services Solutions Architect
Même code, trois environnements
Promouvoir une version Lambda de la préprod vers la prod
Même artéfact, aucune recompilation
Un appel d'API met à jour l'alias prod ; le code ne change jamais
C'est « build once, deploy many »
Versions approuvées, par service
Lambda
: les alias pointent vers des versions de fonction
ECR + ECS
: étiquettes d'image + révisions de définitions de tâche
API Gateway
: étapes avec déploiements
S3
: versions d'objets dans des compartiments avec gestion de versions
Fonctionnement des alias Lambda
Une version est un
instantané immuable
de la fonction
Un alias est un
pointeur nommé
vers une version
Mettez à jour l'alias pour
promouvoir
une version
Les alias prennent en charge le
routage pondéré
pour les déploiements canari
Étiquettes ECR et définitions de tâche ECS
Les images ECR sont
immuables par empreinte (digest)
Une étiquette est une
étiquette mobile
sur une empreinte
Les définitions de tâche ECS référencent une
image:tag
ou
@digest
En production,
épinglez par empreinte
pour figer les bits exacts
API Gateway : étapes en bref
Une étape est un
déploiement de l'API
Chaque étape a son propre URL et un
historique de déploiement
Promouvoir en
déployant l'API
vers l'étape suivante
Les variables d'étape conservent des
valeurs d'exécution propres à l'environnement
Promouvoir une version
Construire l'artéfact
une seule fois
Le valider en
dev
, puis en
staging
Mettre à jour l'alias ou l'étiquette prod,
aucune recompilation
Le même artéfact s'exécute dans chaque environnement
Séparer la configuration
Le code reste identique
entre environnements
La configuration
porte les différences dev/prod
Variables d'étape, variables d'environnement,
Parameter Store
,
Secrets Manager
Ne jamais coder en dur des valeurs d'environnement dans l'artéfact
Passons à la pratique !
Automatiser les déploiements sur AWS
Preparing Video For Download...