Gestion des ressources infonuagiques
Automatisez le déploiement et la mise à jour des ressources infonuagiques (par exemple AWS, Azure et GCP) avec les principes de l’IaC et GitHub Actions.
Gestion des ressources infonuagiques est une leçon CI/CD with GitHub Actions & DevOps Pipelines gratuite sur CoddyKit. Ceci est la leçon 2 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage CI/CD with GitHub Actions & DevOps Pipelines, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours CI/CD with GitHub Actions & DevOps Pipelines comprend 4 leçons au total.
Introduction à l'automatisation des ressources en nuage
Bienvenue ! Dans cette leçon, nous allons découvrir comment automatiser le déploiement et la mise à jour des ressources en nuage à l'aide des principes de l'infrastructure en tant que code (IaC) et de GitHub Actions.
Gérer manuellement des ressources en nuage peut être lent et provoquer des erreurs. L'automatisation garantit la cohérence et la rapidité.
Pourquoi GitHub Actions pour l'IaC en nuage ?
GitHub Actions fournit une plateforme puissante pour automatiser les tâches liées à votre infrastructure en nuage. Voici pourquoi elle convient parfaitement :
- Contrôle de version : votre code d'infrastructure se trouve à côté du code de votre application.
- Automatisation : déclenchez automatiquement les déploiements lors des modifications du code.
- Visibilité : consultez directement l'état du déploiement dans GitHub.
- Intégration : connectez facilement les principaux fournisseurs de services en nuage.
Se connecter à votre fournisseur de services en nuage
Pour gérer les ressources en nuage, GitHub Actions doit avoir l'autorisation d'interagir avec votre fournisseur de services en nuage, comme AWS, Azure ou GCP. Cela se fait généralement au moyen des éléments suivants :
- Clés d'accès/principaux de service : des identifiants permettant un accès programmatique.
- OpenID Connect (OIDC) : une méthode d'authentification sans clé et plus sécurisée.
Dans cette leçon, nous nous concentrerons sur l'utilisation sécurisée des identifiants.
Stocker vos identifiants cloud en toute sécurité
Ne codez jamais directement des identifiants sensibles en dur dans vos fichiers de flux de travail. GitHub Actions fournit des secrets à cette fin.
Les secrets sont des variables d'environnement chiffrées auxquelles vous pouvez accéder dans vos flux de travail. Ils n'apparaissent pas dans les journaux.
- Accédez aux
Settingsde votre dépôt. - Accédez à
Secrets and variables>Actions. - Cliquez sur
New repository secretpour ajouter vos clés d'accès au cloud.
Structure de base d'un flux de travail de déploiement IaC
Un flux de travail GitHub Actions classique pour l'IaC comporte généralement les étapes suivantes :
- Récupérer le code : obtenir vos fichiers IaC.
- Configurer les identifiants : définir les variables d'environnement de votre fournisseur de services en nuage.
- Installer l'outil IaC : par exemple AWS CLI, Azure CLI, Terraform ou Pulumi.
- Exécuter les commandes IaC : planifier, appliquer ou détruire des ressources.
Examinons un exemple générique.
Flux de travail générique d'application cloud
Ce flux de travail présente la structure nécessaire pour appliquer des modifications IaC. Il s'agit d'un modèle que vous adapterez à votre nuage et à votre outil IaC spécifiques.
Remarquez comment secrets.AWS_ACCESS_KEY_ID est utilisé pour accéder à un secret enregistré.
name: Deploy Cloud Resources
on: push
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-1
- name: Run IaC Apply Command
run: |
# Replace with your actual IaC tool command (e.g., terraform apply, aws cloudformation deploy)
echo "Running cloud resource deployment..."
# aws s3 mb s3://my-unique-coddykit-bucket-123
Exemple : déployer un compartiment S3 AWS
Voici un exemple simple utilisant AWS CLI pour créer un compartiment S3. Il montre comment intégrer des commandes propres au nuage dans votre flux de travail.
N'oubliez pas de remplacer my-unique-coddykit-bucket-123 par un nom de compartiment unique à l'échelle mondiale si vous essayez cet exemple !
name: Deploy S3 Bucket
on: push
jobs:
create-s3:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-1
- name: Create S3 Bucket
run: |
aws s3 mb s3://my-unique-coddykit-bucket-123
echo "S3 bucket created successfully!"
Exemple : déployer un groupe de ressources Azure
De même, pour Azure, vous utiliseriez Azure CLI. Ce flux de travail se connecte à Azure et crée un groupe de ressources.
Vous devez configurer AZURE_CLIENT_ID, AZURE_TENANT_ID et AZURE_SUBSCRIPTION_ID en tant que secrets GitHub, souvent avec un principal de service.
name: Deploy Azure Resource Group
on: push
jobs:
create-rg:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Azure Login
uses: azure/login@v1
with:
client-id: ${{ secrets.AZURE_CLIENT_ID }}
tenant-id: ${{ secrets.AZURE_TENANT_ID }}
subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}
- name: Create Azure Resource Group
run: |
az group create --name coddykit-rg --location eastus
echo "Azure Resource Group created!"
Gestion des mises à jour et des retours en arrière
Une fois les ressources déployées, vous devrez gérer les mises à jour. Avec l'IaC et GitHub Actions, cela signifie :
- Mise à jour des fichiers IaC : Modifiez votre configuration (par exemple, ajoutez une nouvelle instance EC2).
- Envoi des modifications : Validez-les, puis envoyez-les vers votre dépôt.
- Déploiement automatisé : Le flux de travail se déclenche et applique les mises à jour.
Pour effectuer un retour en arrière, vous rétablissez généralement une version précédente de vos fichiers IaC, puis relancez le déploiement.
Vérification de la sécurité de la gestion infonuagique
Lorsque vous automatisez la gestion des ressources infonuagiques avec GitHub Actions, quelle méthode est considérée comme la plus sécurisée pour gérer les identifiants sensibles permettant d’y accéder ?
Récapitulatif : gestion des ressources infonuagiques
Vous avez appris comment GitHub Actions peut automatiser le déploiement et la mise à jour de ressources infonuagiques en appliquant les principes de l'IaC.
- GitHub Actions fournit une plateforme robuste pour automatiser l'IaC.
- Les secrets GitHub sont essentiels pour gérer de manière sécurisée les identifiants d’accès aux ressources infonuagiques.
- Les flux de travail intègrent des interfaces de ligne de commande propres aux environnements infonuagiques (AWS CLI, Azure CLI) pour interagir avec les fournisseurs.
- Les mises à jour sont gérées en modifiant les fichiers IaC et en laissant le flux de travail les appliquer à nouveau.
Continuez à vous exercer pour construire vos chaînes d’automatisation infonuagiques !
Questions Fréquemment Posées
La leçon « Gestion des ressources infonuagiques » est-elle gratuite ?
Oui — le texte complet de « Gestion des ressources infonuagiques » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours CI/CD with GitHub Actions & DevOps Pipelines, passe à CoddyKit PRO. Le cours CI/CD with GitHub Actions & DevOps Pipelines comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Gestion des ressources infonuagiques » ?
Automatisez le déploiement et la mise à jour des ressources infonuagiques (par exemple AWS, Azure et GCP) avec les principes de l’IaC et GitHub Actions. Tu pratiques CI/CD with GitHub Actions & DevOps Pipelines avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer CI/CD with GitHub Actions & DevOps Pipelines ?
Aucune expérience préalable n'est requise. CI/CD with GitHub Actions & DevOps Pipelines sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 4.
Combien de temps prend la leçon « Gestion des ressources infonuagiques » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon CI/CD with GitHub Actions & DevOps Pipelines ?
Oui. Chaque leçon CI/CD with GitHub Actions & DevOps Pipelines inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- IaC avec Terraform et GitHub Actions
- Gestion des ressources infonuagiques
- Automatisation des mises à jour de l’infrastructure
- Gérer l’état Terraform et les services dorsaux distants