Aller au contenu principal

Introduction à AWS DevOps


1 - Écosystème AWS DevOps

AWS propose une suite complète de services pour automatiser toutes les étapes du cycle de développement logiciel.


2 - Vue d'ensemble des services

2.1 Services Code*

ServiceDescriptionÉquivalent
CodeCommitRepositories Git privésGitHub, GitLab
CodeBuildBuild et testsJenkins, CircleCI
CodeDeployDéploiement automatiséOctopus Deploy
CodePipelineOrchestration CI/CDJenkins Pipeline
CodeArtifactRepository d'artefactsNexus, JFrog

2.2 Architecture de référence


3 - Avantages d'AWS DevOps

3.1 Intégration native

  • Tous les services fonctionnent ensemble nativement
  • Authentification unifiée avec IAM
  • Pas de configuration de plugins complexe
  • Support natif pour EC2, ECS, EKS, Lambda

3.2 Scalabilité

  • Services entièrement managés
  • Pas d'infrastructure à gérer
  • Scale automatiquement selon la charge
  • Pay-per-use (paiement à l'utilisation)

3.3 Sécurité

  • Chiffrement au repos et en transit
  • IAM pour le contrôle d'accès fin
  • Intégration avec Secrets Manager
  • Audit trail avec CloudTrail

4 - Comparaison avec d'autres solutions

CritèreAWS Code*GitHub ActionsJenkinsGitLab CI
Managé
Intégration AWSNativeBonnePluginsPlugins
Courbe d'apprentissageMoyenneFacileComplexeFacile
CoûtPay-per-useFree tierInfrastructureFree tier
Self-hosted

5 - Configuration initiale

5.1 Prérequis AWS CLI

# Installer AWS CLI
# macOS
brew install awscli

# Linux
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install

# Windows
# Télécharger depuis https://aws.amazon.com/cli/

# Configurer les credentials
aws configure
# AWS Access Key ID: AKIA...
# AWS Secret Access Key: ...
# Default region name: eu-west-1
# Default output format: json

# Vérifier
aws sts get-caller-identity

5.2 IAM User pour DevOps

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codecommit:*",
"codebuild:*",
"codedeploy:*",
"codepipeline:*",
"ecr:*",
"ecs:*",
"cloudwatch:*",
"logs:*",
"s3:*",
"iam:PassRole"
],
"Resource": "*"
}
]
}

6 - Tarification

6.1 CodeCommit

UsagePrix
5 utilisateurs actifsGratuit
Utilisateurs supplémentaires$1/mois/utilisateur
Git requestsInclus
Storage50 Go inclus

6.2 CodeBuild

Compute TypePrix/minute
build.general1.small$0.005
build.general1.medium$0.01
build.general1.large$0.02
GPU builds$0.65

Free tier: 100 minutes/mois (general1.small)

6.3 CodeDeploy

TargetPrix
EC2/On-premisesGratuit
ECSGratuit
LambdaGratuit

6.4 CodePipeline

UsagePrix
Premier pipeline actifGratuit
Pipelines supplémentaires$1/mois

7 - Premier pipeline

7.1 Architecture simple

7.2 Exemple minimal avec CLI

# Créer un repository CodeCommit
aws codecommit create-repository \
--repository-name my-first-repo \
--repository-description "Mon premier repo AWS"

# Cloner le repo
git clone https://git-codecommit.eu-west-1.amazonaws.com/v1/repos/my-first-repo
cd my-first-repo

# Ajouter du code
echo '{"name": "my-app"}' > package.json
git add .
git commit -m "Initial commit"
git push origin main

Résumé

Dans ce chapitre, nous avons découvert :

  • L'écosystème AWS DevOps et ses services
  • Les avantages de l'intégration native
  • La configuration initiale (CLI, IAM)
  • La tarification des services
  • Un aperçu d'un premier pipeline

Prochaine étape

Dans le prochain chapitre, nous explorerons AWS CodeCommit en détail.

→ Chapitre suivant : AWS CodeCommit


← Retour à la table des matières