

AWS Migration Hub Refactor Spaces est actuellement disponible en version préliminaire et susceptible d'être modifié.

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.

# Création de ressources Refactor Spaces avec CloudFormation
<a name="creating-resources-with-cloudformation"></a>

AWS Migration Hub Refactor Spaces est intégré àAWS CloudFormation, un service qui vous aide à modéliser et à configurer votreAWSafin que vous puissiez consacrer moins de temps à la création et à la gestion de vos ressources et de votre infrastructure. Vous créez un modèle qui décrit tous les élémentsAWSles ressources que vous souhaitez (telles que les environnements, les applications, les services et les routes), etCloudFormationalloue et configure ces ressources à votre place. 

Lorsque vous utilisezCloudFormation, vous pouvez réutiliser votre modèle pour configurer vos ressources Refactor Spaces de manière cohérente et répétée. Décrivez vos ressources une seule fois, puis mettez-le en service autant de fois que vous le souhaitez dans plusieurs comptes et régions AWS. 

## Modèles Refactor Spaces et CloudFormation
<a name="working-with-templates"></a>

Pour mettre en service et configurer des ressources pour Refactor Spaces et les services associés, vous devez maîtriser[CloudFormationmodèles](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-guide.html). Les modèles sont des fichiers texte formatés en JSON ou YAML. Ces modèles décrivent les ressources que vous souhaitez allouer dans vos piles CloudFormation. Si JSON ou YAML ne vous est pas familier, vous pouvez utiliser CloudFormation Designer pour vous aider à démarrer avec des modèles CloudFormation. Pour plus d'informations, consultez [Qu'est-ce qu'CloudFormation Designer ?](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/working-with-templates-cfn-designer.html) dans le *Guide de l'utilisateur AWS CloudFormation*.

Refactor Spaces prend en charge la création d'environnements, d'applications, de services et de routes dansCloudFormation. Pour de plus amples informations, y compris des exemples de modèles JSON et YAML pour des environnements, des applications, des services et des routes, consultez la[AWS Migration Hub](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html)dans le*AWS CloudFormationGuide de l'utilisateur*.

### Exemple de modèle
<a name="working-with-templates-example"></a>

L'exemple suivant crée un VPC (cloud privé virtuel) et des ressources Refactor Spaces. Lorsque vous choisissez de déployer unCloudFormationpour créer un environnement de refacteur de démonstration à partir duMise en route, le modèle suivant est déployé par la console Refactor Spaces.

**Example Modèle Espaces de refacteur YAML**  

```
AWSTemplateFormatVersion: '2010-09-09'
Description: This creates resources in one account.
Resources:
  VPC:
    Type: AWS::EC2::VPC
    Properties:
      CidrBlock: 10.2.0.0/16
      Tags:
        - Key: Name
          Value: VpcForRefactorSpaces
  PrivateSubnet1:
    Type: AWS::EC2::Subnet
    Properties:
      VpcId: !Ref VPC
      AvailabilityZone: !Select [ 0, !GetAZs  '' ]
      CidrBlock: 10.2.1.0/24
      MapPublicIpOnLaunch: false
      Tags:
        - Key: Name
          Value: RefactorSpaces Private Subnet (AZ1)
  PrivateSubnet2:
    Type: AWS::EC2::Subnet
    Properties:
      VpcId: !Ref VPC
      AvailabilityZone: !Select [ 1, !GetAZs  '' ]
      CidrBlock: 10.2.2.0/24
      MapPublicIpOnLaunch: false
      Tags:
        - Key: Name
          Value: RefactorSpaces Private Subnet (AZ2)
  RefactorSpacesTestEnvironment:
    Type: AWS::RefactorSpaces::Environment
    DeletionPolicy: Delete
    Properties:
      Name: EnvWithMultiAccountServices
      NetworkFabricType: TRANSIT_GATEWAY
      Description: "This is a test environment"
  TestApplication:
    Type: AWS::RefactorSpaces::Application
    DeletionPolicy: Delete
    DependsOn:
      - PrivateSubnet1
      - PrivateSubnet2
    Properties:
      Name: proxytest
      EnvironmentIdentifier: !Ref RefactorSpacesTestEnvironment
      VpcId: !Ref VPC
      ProxyType: API_GATEWAY
      ApiGatewayProxy:
        EndpointType: "REGIONAL"
        StageName: "admintest"
  AdminAccountService:
    Type: AWS::RefactorSpaces::Service
    DeletionPolicy: Delete
    Properties:
      Name: AdminAccountService
      EnvironmentIdentifier: !Ref RefactorSpacesTestEnvironment
      ApplicationIdentifier: !GetAtt TestApplication.ApplicationIdentifier
      EndpointType: URL
      VpcId: !Ref VPC
      UrlEndpoint:
        Url: "http://aws.amazon.com"
  RefactorSpacesDefaultRoute:
    Type: AWS::RefactorSpaces::Route
    Properties:
      RouteType: "DEFAULT"
      EnvironmentIdentifier: !Ref RefactorSpacesTestEnvironment
      ApplicationIdentifier: !GetAtt TestApplication.ApplicationIdentifier
      ServiceIdentifier: !GetAtt AdminAccountService.ServiceIdentifier
  RefactorSpacesURIRoute:
    Type: AWS::RefactorSpaces::Route
    DependsOn: 'RefactorSpacesDefaultRoute'
    Properties:
      RouteType: "URI_PATH"
      EnvironmentIdentifier: !Ref RefactorSpacesTestEnvironment
      ApplicationIdentifier: !GetAtt TestApplication.ApplicationIdentifier
      ServiceIdentifier: !GetAtt AdminAccountService.ServiceIdentifier
      UriPathRoute:
        SourcePath: "/cfn-created-route"
        ActivationState: ACTIVE
        Methods: [ "GET" ]
```

## En savoir plus sur CloudFormation
<a name="learn-more-cloudformation"></a>

Pour en savoir plus sur CloudFormation, consultez les ressources suivantes :
+ [AWS CloudFormation](https://aws.amazon.com/cloudformation/)
+ [Guide de l’utilisateur AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)
+ [Référence API CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/Welcome.html)
+ [Guide de l’utilisateur de l’interface de ligne de commande AWS CloudFormation](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/what-is-cloudformation-cli.html)