

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Exécutez des builds sur des flottes à capacité réservée
<a name="fleets"></a>

CodeBuild propose les flottes de calcul suivantes :
+ On-demand flottes
+ Flottes de capacité réservée

Avec des flottes à la demande, CodeBuild fournit le calcul nécessaire à vos builds. Les machines sont détruites une fois la construction terminée. On-demand les flottes sont entièrement gérées et incluent des fonctionnalités de mise à l'échelle automatique pour faire face aux pics de demande.

**Note**  
On-demand les flottes ne sont pas compatibles avec macOS.

CodeBuild propose également des flottes de capacités réservées contenant des instances alimentées par Amazon EC2 et gérées par. CodeBuild Avec les flottes de capacité réservée, vous configurez un ensemble d'instances dédiées pour votre environnement de construction. Ces machines restent inactives, prêtes à traiter les builds ou les tests immédiatement et réduisent les durées de construction. Avec des flottes de capacité réservées, vos machines fonctionnent en permanence et continueront d'entraîner des coûts tant qu'elles seront approvisionnées.

**Important**  
Quelle que soit la durée pendant laquelle vous exécutez une instance, les flottes de capacité réservée sont facturées initialement par instance, après quoi des coûts supplémentaires peuvent être associés. Pour de plus amples informations, veuillez consulter [https://aws.amazon.com/codebuild/pricing/](https://aws.amazon.com/codebuild/pricing/).

**Topics**
+ [Création d'un parc de capacités réservées](#fleets.how-to)
+ [Bonnes pratiques](#fleets.best-practices)
+ [Puis-je partager un parc de capacités réservées entre plusieurs CodeBuild projets ?](#fleets.share)
+ [Comment fonctionne le calcul basé sur les attributs ?](#fleets.attribute-compute)
+ [Puis-je spécifier manuellement une instance Amazon EC2 pour mon parc ?](#fleets.manual-input-compute)
+ [Quelles régions prennent en charge les flottes à capacité réservée ?](#fleets.regions)
+ [Comment configurer une flotte de macOS à capacité réservée ?](#fleets.configure-macos)
+ [Comment configurer une Amazon Machine Image (AMI) personnalisée pour un parc de capacités réservées ?](#fleets.custom-ami)
+ [Limitations des flottes à capacité réservée](#fleets.limitations)
+ [Propriétés du parc à capacité réservée](fleets.reserved-capacity-fleets.md)
+ [Échantillons de capacité réservée avec AWS CodeBuild](reserved-capacity-samples.md)

## Création d'un parc de capacités réservées
<a name="fleets.how-to"></a>

Suivez les instructions ci-dessous pour créer un parc de capacités réservées.

**Pour créer un parc de capacités réservées**

1. Connectez-vous à la AWS CodeBuild console AWS Management Console et ouvrez-la à l'adresse [https://console.aws.amazon.com/codesuite/codebuild/home](https://console.aws.amazon.com/codesuite/codebuild/home).

1. Dans le volet de navigation, choisissez **Compute fleets**, puis **Create Fleet**.

1. Dans le champ de texte **Calculer le nom du parc**, saisissez le nom de votre parc.

1. Dans le menu déroulant **Système d'exploitation**, sélectionnez le système d'exploitation.

1. Dans le menu déroulant **Architecture**, sélectionnez l'architecture.

1. (Facultatif) Sélectionnez **Utiliser le mode d'exécution de l'instance. Facultatif** pour exécuter directement sur une instance Amazon EC2 au lieu d'un conteneur Docker. Choisissez ensuite une **version majeure** et une **version mineure**.

1. (Facultatif) Dans **Configuration supplémentaire**, procédez comme suit :
   + Sélectionnez **Configurer le VPC - facultatif** pour connecter votre flotte à un VPC afin d'accéder à des ressources privées pendant l'utilisation.
     + Dans le menu déroulant **VPC**, sélectionnez un VPC auquel votre CodeBuild flotte aura accès.
     + Dans le menu déroulant **Sous-réseaux**, sélectionnez les sous-réseaux à utiliser CodeBuild pour configurer votre configuration VPC.
     + Dans le menu déroulant **Groupes de sécurité**, sélectionnez les groupes de sécurité CodeBuild à utiliser pour fonctionner avec votre VPC.
     + Dans le champ **Rôle de service de flotte**, choisissez un rôle de service existant.
**Note**  
Assurez-vous que votre rôle dans la flotte dispose des autorisations nécessaires. Pour de plus amples informations, veuillez consulter [Autoriser un utilisateur à ajouter une politique d'autorisation pour un rôle de service de flotte](auth-and-access-control-iam-identity-based-access-control.md#customer-managed-policies-example-permission-policy-fleet-service-role).
     + Si vous avez choisi le système d'exploitation Amazon Linux, sélectionnez **Définir les configurations de proxy (facultatif)** pour appliquer le contrôle d'accès réseau à vos instances à capacité réservée.
     + Pour **Comportement par défaut**, choisissez d'autoriser ou de refuser le trafic sortant vers toutes les destinations par défaut.
     + Pour les **règles de proxy**, choisissez **Ajouter une règle de proxy** pour spécifier les domaines de destination ou les adresses IP auxquels autoriser ou refuser le contrôle d'accès au réseau.
   + Sélectionnez **Configurer une AMI personnalisée. Cette option est facultative** pour utiliser une Amazon Machine Image (AMI) personnalisée.
     + Dans le menu déroulant **AMI**, sélectionnez une Amazon Machine Image (AMI) pour votre flotte.
     + Dans le champ **Rôle de service de flotte**, choisissez un rôle de service existant.
**Note**  
Assurez-vous que votre rôle dans la flotte dispose des autorisations nécessaires. Pour de plus amples informations, veuillez consulter [Autoriser un utilisateur à ajouter une politique d'autorisation pour un rôle de service de flotte](auth-and-access-control-iam-identity-based-access-control.md#customer-managed-policies-example-permission-policy-fleet-service-role).

1. Dans **Configuration de la capacité**, dans **Mode de sélection de calcul**, choisissez l'une des options suivantes :
   + Si vous choisissez **Sélection guidée**, procédez comme suit :
     + Pour **Compute**, choisissez le type d'instances inclus dans ce parc.
     + Dans le champ **de texte Capacité**, entrez le nombre minimum d'instances dans le parc.
     + (Facultatif) Dans **Configuration supplémentaire**, procédez comme suit :
       + Sélectionnez **Configurer le dimensionnement : facultatif** pour redimensionner automatiquement votre flotte en fonction de cette configuration. Dans le menu déroulant **optionnel Mode de mise à l'échelle**, choisissez le comportement à adopter lorsque la demande dépasse la capacité de la flotte.
   + Si vous choisissez **Instance personnalisée**, procédez comme suit :
     + Dans le menu déroulant **Calculer le type d'instance**, sélectionnez le type d'instances inclus dans ce parc.
     + Dans le champ de texte **Taille de volume EBS supplémentaire - facultatif**, entrez le volume supplémentaire aux 64 Go d'espace disque fournis.
     + Dans le champ **de texte Capacité**, entrez le nombre minimum d'instances dans le parc.
     + (Facultatif) Dans **Configuration supplémentaire**, procédez comme suit :
       + Sélectionnez **Configurer le dimensionnement : facultatif** pour redimensionner automatiquement votre flotte en fonction de cette configuration. Dans le menu déroulant **optionnel Mode de mise à l'échelle**, choisissez le comportement à adopter lorsque la demande dépasse la capacité de la flotte.

1. Choisissez **Créer un parc informatique**.

1. Une fois le parc informatique créé, créez un nouveau CodeBuild projet ou modifiez un projet existant. Dans **Environnement**, choisissez **Capacité réservée** sous **Modèle de provisionnement**, puis choisissez le parc spécifié sous **Nom du parc**.

## Bonnes pratiques
<a name="fleets.best-practices"></a>

Lorsque vous utilisez des flottes de capacité réservée, nous vous recommandons de suivre ces bonnes pratiques.
+ Nous vous recommandons d'utiliser le mode de cache source pour améliorer les performances de génération en mettant en cache la source.
+ Nous vous recommandons d'utiliser la mise en cache des couches Docker pour améliorer les performances de création en mettant en cache les couches Docker existantes.

## Puis-je partager un parc de capacités réservées entre plusieurs CodeBuild projets ?
<a name="fleets.share"></a>

Oui, vous pouvez optimiser l'utilisation de la capacité d'une flotte en l'utilisant dans le cadre de plusieurs projets.

**Important**  
Lorsque vous utilisez la fonctionnalité de capacité réservée, les données mises en cache sur les instances de flotte, y compris les fichiers source, les couches Docker et les répertoires mis en cache spécifiés dans les spécifications de construction, peuvent être accessibles aux autres projets du même compte. Cela est intentionnel et permet aux projets au sein d'un même compte de partager des instances de flotte.

## Comment fonctionne le calcul basé sur les attributs ?
<a name="fleets.attribute-compute"></a>

Si vous choisissez `ATTRIBUTE_BASED_COMPUTE` celui de votre flotte`computeType`, vous pouvez spécifier les attributs dans un nouveau champ appelé`computeConfiguration`. Ces attributs incluent les vCPU, la mémoire, l'espace disque et le. `machineType` C'`machineType`est soit, `GENERAL` soit`NVME`. Après avoir spécifié un ou plusieurs des attributs disponibles, il CodeBuild choisira un type de calcul parmi les types d'instances pris en charge disponibles une fois finalisé`computeConfiguration`.

**Note**  
CodeBuild choisira l'instance la moins chère qui répond à toutes les exigences de saisie. La mémoire, les vCPU et l'espace disque des instances choisies seront tous supérieurs ou égaux aux exigences d'entrée. Vous pouvez vérifier les problèmes résolus `computeConfiguration` dans le parc créé ou mis à jour.

Si vous saisissez un `computeConfiguration` qu'il n'est pas possible de satisfaire CodeBuild, vous recevrez une exception de validation. Notez également que le comportement de dépassement de flotte à la demande sera remplacé par le comportement de file d'attente s'il n'`computeConfiguration`est pas disponible pour la demande.

## Puis-je spécifier manuellement une instance Amazon EC2 pour mon parc ?
<a name="fleets.manual-input-compute"></a>

Oui, vous pouvez saisir directement l'instance Amazon EC2 de votre choix dans la console en sélectionnant **Instance personnalisée** ou en configurant le paramètre API,. `InstanceType` Ce champ est utilisé dans les API suivantes : CreateFleet UpdateFleet, CreateProject, UpdateProject et StartBuild. Pour de plus amples informations, veuillez consulter [Compute instance type](fleets.reserved-capacity-fleets.md#compute).

## Quelles régions prennent en charge les flottes à capacité réservée ?
<a name="fleets.regions"></a>

Capacité réservée Les flottes Amazon Linux et Windows sont prises en charge dans les pays suivants Régions AWS : USA Est (Virginie du Nord), USA Est (Ohio), USA Ouest (Oregon), Asie-Pacifique (Mumbai), Asie-Pacifique (Singapour), Asie-Pacifique (Sydney), Asie-Pacifique (Tokyo), Europe (Francfort), Europe (Irlande) et Amérique du Sud (São Paulo). Pour plus d'informations sur Régions AWS les CodeBuild zones disponibles, consultez la section [AWS Services par région](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/).

Capacité réservée Les flottes macOS Medium sont prises en charge dans les pays suivants Régions AWS : USA Est (Virginie du Nord), USA Est (Ohio), USA Ouest (Oregon), Asie-Pacifique (Sydney) et Europe (Francfort). Capacité réservée Les grandes flottes macOS sont prises en charge dans les pays suivants Régions AWS : USA Est (Virginie du Nord), USA Est (Ohio), USA Ouest (Oregon) et Asie-Pacifique (Sydney).

## Comment configurer une flotte de macOS à capacité réservée ?
<a name="fleets.configure-macos"></a>

**Pour configurer un parc macOS à capacité réservée**

1. Connectez-vous à la AWS CodeBuild console AWS Management Console et ouvrez-la à l'adresse [https://console.aws.amazon.com/codesuite/codebuild/home](https://console.aws.amazon.com/codesuite/codebuild/home).

1. Dans le volet de navigation, choisissez **Compute fleets**, puis **Create Fleet**.

1. Dans le champ de texte **Calculer le nom du parc**, saisissez le nom de votre parc.

1. Dans le menu déroulant **Système d'exploitation**, sélectionnez **macOS**.

1. Dans le champ **Calcul**, sélectionnez l'un des types de machines de calcul suivants : **Apple M2, 24 Go de mémoire, 8 vCPU** ou **Apple M2, 32 Go de mémoire, 12 vCPU**.

1. Dans le champ **de texte Capacité**, entrez le nombre minimum d'instances dans le parc.

1. (Facultatif) Pour utiliser une image personnalisée pour votre flotte[Comment configurer une Amazon Machine Image (AMI) personnalisée pour un parc de capacités réservées ?](#fleets.custom-ami), assurez-vous que votre Amazon Machine Image (AMI) répond aux exigences requises.

1. (Facultatif) Pour configurer un VPC avec votre flotte, dans **Configuration supplémentaire**, procédez comme suit :
   + Dans le menu déroulant **VPC - facultatif**, sélectionnez un VPC auquel votre CodeBuild flotte aura accès.
   + Dans le menu déroulant **Sous-réseaux**, sélectionnez les sous-réseaux à utiliser CodeBuild pour configurer votre configuration VPC.
   + Dans le menu déroulant **Groupes de sécurité**, sélectionnez les groupes de sécurité CodeBuild à utiliser pour fonctionner avec votre VPC.
   + Dans le champ **Rôle de service de flotte**, choisissez un rôle de service existant.
**Note**  
Assurez-vous que votre rôle dans la flotte dispose des autorisations nécessaires. Pour de plus amples informations, veuillez consulter [Autoriser un utilisateur à ajouter une politique d'autorisation pour un rôle de service de flotte](auth-and-access-control-iam-identity-based-access-control.md#customer-managed-policies-example-permission-policy-fleet-service-role).

1. Choisissez **Créer une flotte de calcul** et attendez que l'instance de flotte soit lancée. Une fois lancée, la capacité sera`{{n}}/{{n}}`, où {{n}} est la capacité fournie ?

1. Une fois le parc informatique lancé, créez un nouveau CodeBuild projet ou modifiez un projet existant. Dans **Environnement**, choisissez **Capacité réservée** sous **Modèle de provisionnement**, puis choisissez le parc spécifié sous **Nom du parc**.

## Comment configurer une Amazon Machine Image (AMI) personnalisée pour un parc de capacités réservées ?
<a name="fleets.custom-ami"></a>

**Pour configurer une Amazon Machine Image (AMI) personnalisée pour un parc de capacités réservées**

1. Connectez-vous à la AWS CodeBuild console AWS Management Console et ouvrez-la à l'adresse [https://console.aws.amazon.com/codesuite/codebuild/home](https://console.aws.amazon.com/codesuite/codebuild/home).

1. Dans le volet de navigation, choisissez **Compute fleets**, puis **Create Fleet**.

1. Dans le champ de texte **Calculer le nom du parc**, saisissez le nom de votre parc.

1. Choisissez **une image personnalisée** pour votre flotte et assurez-vous que votre Amazon Machine Image (AMI) répond aux exigences suivantes :
   + Si votre type d'environnement est `MAC_ARM` le cas, assurez-vous que votre **architecture** AMI est 64 bits`Mac-Arm`.
   + Si votre type d'environnement est `LINUX_EC2` le cas, assurez-vous que votre **architecture** AMI est 64 bits`x86`.
   + Si votre type d'environnement est `ARM_EC2` le cas, assurez-vous que votre **architecture** AMI est 64 bits`Arm`.
   + Si votre type d'environnement est `WINDOWS_EC2` le cas, assurez-vous que votre **architecture** AMI est 64 bits`x86`.
   + L'AMI autorise le CodeBuild service **Organization ARN**. Pour obtenir la liste des ARN des organisations, voir[Amazon Machine Images (AMI)](fleets.reserved-capacity-fleets.md#ami).
   + Si l'AMI est chiffrée à l'aide d'une AWS KMS clé, AWS KMS celle-ci doit également autoriser l'**ID d'organisation** du CodeBuild service. Pour obtenir la liste des identifiants d'organisation, voir[Amazon Machine Images (AMI)](fleets.reserved-capacity-fleets.md#ami). Pour plus d'informations sur AWS KMS les clés, consultez [Autoriser les organisations et les unités d'organisation à utiliser une clé KMS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/share-amis-with-organizations-and-OUs.html#allow-org-ou-to-use-key) dans le guide de l'*utilisateur Amazon EC2*. Pour autoriser CodeBuild l'organisation à utiliser une clé KMS, ajoutez la déclaration suivante à la politique de clé :

     ```
     {
         "Sid": "Allow access for organization root",
         "Effect": "Allow",
         "Principal": "*",
         "Action": [
             "kms:Describe*",
             "kms:List*",
             "kms:Get*",
             "kms:Encrypt",
             "kms:Decrypt",
             "kms:ReEncrypt*",
             "kms:GenerateDataKey*",
             "kms:CreateGrant"
         ],
         "Resource": "*",
         "Condition": {
             "StringEquals": {
                 "aws:PrincipalOrgID": "o-123example"
             }
         }
     }
     ```
   + Dans le champ **Rôle du service de flotte**, accordez les autorisations Amazon EC2 suivantes :

------
#### [ JSON ]

****  

     ```
     {
         "Version":"2012-10-17",		 	 	 
         "Statement": [
             {
                 "Effect": "Allow",
                 "Action": [
                    "ec2:DescribeImages",
                    "ec2:DescribeSnapshots"
                 ],
                 "Resource": "*"
             }
         ]
     }
     ```

------

## Limitations des flottes à capacité réservée
<a name="fleets.limitations"></a>

Il existe certains cas d'utilisation que les flottes de capacité réservée ne prennent pas en charge, et s'ils vous concernent, utilisez plutôt des flottes à la demande :
+ Les flottes de capacité réservée ne prennent pas en charge les indicateurs d'utilisation des builds.
+ Les flottes de macOS à capacité réservée ne prennent pas en charge les sessions de débogage.

Pour plus d'informations sur les limites et les quotas, consultez[Flottes informatiques](limits.md#fleet-limits).