

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# AWS::Serverless::CapacityProvider
<a name="sam-resource-capacityprovider"></a>

 Cria um provedor de capacidade para AWS Lambda funções que permite executar instâncias gerenciadas Lambda em instâncias Amazon Elastic Compute Cloud de propriedade do cliente. Esse recurso faz parte do recurso Lambda Managed Instances, que fornece otimização de custos para cargas de trabalho Lambda em grande escala utilizando modelos de preços da Amazon. EC2 

 O provedor de capacidade gerencia o ciclo de vida das EC2 instâncias da Amazon e fornece a infraestrutura necessária para que as funções Lambda sejam executadas em recursos computacionais de propriedade do cliente, mantendo o modelo de programação sem servidor. 

**nota**  
Quando você implanta AWS CloudFormation, AWS SAM transforma seus AWS SAM recursos em CloudFormation recursos. Para obter mais informações, consulte [CloudFormation Recursos gerados para AWS SAM](sam-specification-generated-resources.md). 

## Sintaxe
<a name="sam-resource-capacityprovider-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-resource-capacityprovider-syntax.yaml"></a>

```
Type: AWS::Serverless::CapacityProvider
Properties:
  [CapacityProviderName](#sam-capacityprovider-capacityprovidername): String
  [VpcConfig](#sam-capacityprovider-vpcconfig): VpcConfig
  [OperatorRole](#sam-capacityprovider-operatorrole): String
  [Tags](#sam-capacityprovider-tags): Map
  [PropagateTags](#sam-capacityprovider-propagatetags): Boolean
  [InstanceRequirements](#sam-capacityprovider-instancerequirements): InstanceRequirements
  [ScalingConfig](#sam-capacityprovider-scalingconfig): ScalingConfig
  [KmsKeyArn](#sam-capacityprovider-kmskeyarn): String
```

## Propriedades
<a name="sam-resource-capacityprovider-properties"></a>

 `CapacityProviderName`   <a name="sam-capacityprovider-capacityprovidername"></a>
O nome do provedor de capacidade. Esse nome deve ser exclusivo em sua AWS conta e região.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[CapacityProviderName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-capacityprovidername)` propriedade de um `AWS::Lambda::CapacityProvider` recurso. 

 `VpcConfig`   <a name="sam-capacityprovider-vpcconfig"></a>
A configuração da VPC para o provedor de capacidade. Especifica as sub-redes VPC e os grupos de segurança em que as instâncias da EC2 Amazon serão lançadas.  
*Digite*: [VpcConfig](sam-property-capacityprovider-vpcconfig.md)  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-vpcconfig)` propriedade de um `AWS::Lambda::CapacityProvider` recurso. 

 `OperatorRole`   <a name="sam-capacityprovider-operatorrole"></a>
 O ARN da função de operador do Lambda com permissões para criar e gerenciar EC2 instâncias da Amazon e recursos relacionados na conta do cliente. Se não for fornecido, gera AWS SAM automaticamente uma função com as permissões necessárias.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[CapacityProviderOperatorRoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityproviderpermissionsconfig.html#cfn-lambda-capacityprovider-capacityproviderpermissionsconfig-capacityprovideroperatorrolearn)` propriedade `[PermissionsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-permissionsconfig)` de um `AWS::Lambda::CapacityProvider` recurso. 

 `Tags`   <a name="sam-capacityprovider-tags"></a>
Um mapa de pares de valores-chave a serem aplicados ao provedor de capacidade e aos recursos associados.  
*Tipo*: mapa  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-tags)` propriedade de um `AWS::Lambda::CapacityProvider` recurso. A `Tags` propriedade in AWS SAM consiste em pares de valores-chave (enquanto CloudFormation nessa propriedade consiste em uma lista de objetos Tag). Além disso, adiciona AWS SAM automaticamente uma `lambda:createdBy:SAM` tag a essa função Lambda e às funções padrão geradas para essa função. 

 `PropagateTags`   <a name="sam-capacityprovider-propagatetags"></a>
 Indica se você deve ou não passar tags da propriedade Tags para os recursos `AWS::Serverless::CapacityProvider` gerados. Defina isso `True` para propagar tags nos recursos gerados.   
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `InstanceRequirements`   <a name="sam-capacityprovider-instancerequirements"></a>
 Especificações para os tipos de instâncias de computação que o provedor de capacidade pode usar. Isso inclui requisitos de arquitetura `allowed` e/ou tipos de `excluded` instância.  
*Digite*: [InstanceRequirements](sam-property-capacityprovider-instancerequirements.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[InstanceRequirements](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-instancerequirements)` propriedade de um `AWS::Lambda::CapacityProvider` recurso. 

 `ScalingConfig`   <a name="sam-capacityprovider-scalingconfig"></a>
 A configuração de escalabilidade para o provedor de capacidade. Define como o provedor de capacidade escala as EC2 instâncias da Amazon com base na demanda.  
*Digite*: [ScalingConfig](sam-property-capacityprovider-scalingconfig.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[CapacityProviderScalingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig)` propriedade de um `AWS::Lambda::CapacityProvider` recurso. 

 `KmsKeyArn`   <a name="sam-capacityprovider-kmskeyarn"></a>
O ARN da AWS KMS chave usada para criptografar dados em repouso e em trânsito para o provedor de capacidade.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[KmsKeyArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-kmskeyarn)` propriedade de um `AWS::Lambda::CapacityProvider` recurso. 

## Valores de retorno
<a name="sam-resource-capacityprovider-return-values"></a>

### Ref.
<a name="sam-resource-capacityprovider-return-values-ref"></a>

Quando a ID lógica desse recurso é fornecida à função `Ref` intrínseca, ela retorna o nome do provedor de capacidade.

Para obter mais informações sobre como usar a função `Ref`, consulte [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) no *Guia do usuário do AWS CloudFormation *. 

### Fã:: GetAtt
<a name="sam-resource-capacityprovider-return-values-fn--getatt"></a>

`Fn::GetAtt` retorna um valor para um atributo especificado deste tipo. Estes são os atributos disponíveis e os valores de retorno de amostra. 

Para obter mais informações sobre o uso do `Fn::GetAtt`, consulte [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html) o *AWS CloudFormation Guia do usuário*. 

`Arn`  <a name="Arn-fn::getatt"></a>
O ARN do provedor de capacidade.

## Exemplos
<a name="sam-resource-capacityprovider-examples"></a>

### Provedor de capacidade básica
<a name="sam-resource-capacityprovider-examples-basic"></a>

O exemplo a seguir cria um provedor de capacidade básico com configuração de VPC.

```
MyCapacityProvider:
  Type: AWS::Serverless::CapacityProvider
  Properties:
    CapacityProviderName: my-capacity-provider
    VpcConfig:
      SubnetIds:
        - subnet-12345678
        - subnet-87654321
      SecurityGroupIds:
        - sg-12345678
    Tags:
      Environment: Production
      Team: ServerlessTeam
```

### Provedor de capacidade avançada com escalabilidade
<a name="sam-resource-capacityprovider-examples-advanced"></a>

O exemplo a seguir cria um provedor de capacidade com requisitos de instância personalizados e configuração de escalabilidade.

```
AdvancedCapacityProvider:
  Type: AWS::Serverless::CapacityProvider
  Properties:
    CapacityProviderName: advanced-capacity-provider
    VpcConfig:
      SubnetIds:
        - subnet-12345678
        - subnet-87654321
      SecurityGroupIds:
        - sg-12345678
    OperatorRole: arn:aws:iam::123456789012:role/MyCapacityProviderRole
    PropagateTags: true
    InstanceRequirements:
      Architectures:
        - x86_64
      ExcludedTypes:
        - t2.micro
    ScalingConfig:
      MaxInstanceCount: 10
      ManualScalingPolicies:
        AverageCPUUtilization: 70.0
    KmsKeyArn: arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
    Tags:
      Environment: Production
      CostCenter: Engineering
```

# VpcConfig
<a name="sam-property-capacityprovider-vpcconfig"></a>

Define as configurações de VPC para um provedor de capacidade, incluindo as sub-redes e os grupos de segurança em EC2 que as instâncias serão lançadas.

## Sintaxe
<a name="sam-property-capacityprovider-vpcconfig-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-capacityprovider-vpcconfig-syntax.yaml"></a>

```
[SubnetIds](#sam-capacityprovider-vpcconfig-subnetids): List
[SecurityGroupIds](#sam-capacityprovider-vpcconfig-securitygroupids): List
```

## Propriedades
<a name="sam-property-capacityprovider-vpcconfig-properties"></a>

 `SubnetIds`   <a name="sam-capacityprovider-vpcconfig-subnetids"></a>
Uma lista de sub-redes em IDs que as EC2 instâncias serão lançadas. Pelo menos uma sub-rede deve ser especificada.  
*Tipo*: lista  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[SubnetIds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityprovidervpcconfig.html#cfn-lambda-capacityprovider-capacityprovidervpcconfig-subnetids)` propriedade `[VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-vpcconfig) ` de um `AWS::Lambda::CapacityProvider` recurso. 

 `SecurityGroupIds`   <a name="sam-capacityprovider-vpcconfig-securitygroupids"></a>
Uma lista de grupos de segurança IDs a serem associados às EC2 instâncias. Se não for especificado, o grupo de segurança padrão da VPC será usado.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[SecurityGroupIds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityprovidervpcconfig.html#cfn-lambda-capacityprovider-capacityprovidervpcconfig-securitygroupids)` propriedade de `[VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-vpcconfig)` propriedade de um `AWS::Lambda::CapacityProvider` recurso. 

## Exemplos
<a name="sam-property-capacityprovider-vpcconfig-examples"></a>

### Configuração de VPC
<a name="sam-property-capacityprovider-vpcconfig-examples-basic"></a>

O exemplo a seguir mostra uma configuração de VPC com várias sub-redes e grupos de segurança.

```
VpcConfig:
  SubnetIds:
    - subnet-12345678
    - subnet-87654321
  SecurityGroupIds:
    - sg-12345678
    - sg-87654321
```

# InstanceRequirements
<a name="sam-property-capacityprovider-instancerequirements"></a>

Especifica os requisitos para EC2 instâncias que serão lançadas pelo provedor de capacidade, incluindo arquiteturas e restrições de tipo de instância.

## Sintaxe
<a name="sam-property-capacityprovider-instancerequirements-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-capacityprovider-instancerequirements-syntax.yaml"></a>

```
[Architectures](#sam-capacityprovider-instancerequirements-architectures): List
[AllowedTypes](#sam-capacityprovider-instancerequirements-allowedtypes): List
[ExcludedTypes](#sam-capacityprovider-instancerequirements-excludedtypes): List
```

**nota**  
Você pode optar por especificar um `AllowedTypes` ou `ExcludedTypes` ao definir os requisitos de instância para seu provedor de capacidade, mas não ambos.

## Propriedades
<a name="sam-property-capacityprovider-instancerequirements-properties"></a>

 `Architectures`   <a name="sam-capacityprovider-instancerequirements-architectures"></a>
As arquiteturas do conjunto de instruções para as instâncias do provedor de capacidade.  
*Valores válidos*: `x86_64` ou `arm64`  
*Tipo*: lista  
*Obrigatório*: não  
*Padrão*: `x86_64`  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Architectures](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-instancerequirements.html#cfn-lambda-capacityprovider-instancerequirements-architectures)` propriedade `[InstanceRequirements](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-instancerequirements)` de um `AWS::Lambda::CapacityProvider` recurso. 

 `AllowedTypes`   <a name="sam-capacityprovider-instancerequirements-allowedtypes"></a>
Uma lista dos tipos de EC2 instância permitidos para a instância do provedor de capacidade.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[AllowedInstanceTypes](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-instancerequirements.html#cfn-lambda-capacityprovider-instancerequirements-allowedinstancetypes)` propriedade `[InstanceRequirements](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-instancerequirements)` de um `AWS::Lambda::CapacityProvider` recurso. 

 `ExcludedTypes`   <a name="sam-capacityprovider-instancerequirements-excludedtypes"></a>
Uma lista de tipos de EC2 instância a serem excluídos do provedor de capacidade.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ExcludedInstanceTypes](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-instancerequirements.html#cfn-lambda-capacityprovider-instancerequirements-excludedinstancetypes)` propriedade `[InstanceRequirements](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-instancerequirements)` de um `AWS::Lambda::CapacityProvider` recurso. 

## Exemplos
<a name="sam-property-capacityprovider-instancerequirements-examples"></a>

### Configuração de requisitos de instância
<a name="sam-property-capacityprovider-instancerequirements-examples-basic"></a>

O exemplo a seguir mostra os requisitos de instância com restrições específicas de arquitetura e tipo de instância.

```
InstanceRequirements:
  Architectures:
    - x86_64
  ExcludedTypes:
    - t2.micro
```

# ScalingConfig
<a name="sam-property-capacityprovider-scalingconfig"></a>

Configura como o provedor de capacidade dimensiona as EC2 instâncias com base na demanda, incluindo limites máximos de instância e políticas de escalabilidade.

## Sintaxe
<a name="sam-property-capacityprovider-scalingconfig-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-capacityprovider-scalingconfig-syntax.yaml"></a>

```
[MaxVCpuCount](#sam-capacityprovider-scalingconfig-maxvcpucount): Integer
[AverageCPUUtilization](#sam-capacityprovider-scalingconfig-averagecpuutilization): Double
```

## Propriedades
<a name="sam-property-capacityprovider-scalingconfig-properties"></a>

 `MaxVCpuCount`   <a name="sam-capacityprovider-scalingconfig-maxvcpucount"></a>
O número máximo de v CPUs que o provedor de capacidade pode provisionar em todas as instâncias de computação.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MaxVCpuCount](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityproviderscalingconfig.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig-maxvcpucount)` propriedade `[CapacityProviderScalingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig)` de um `AWS::Lambda::CapacityProvider` recurso. 

 `AverageCPUUtilization`   <a name="sam-capacityprovider-scalingconfig-averagecpuutilization"></a>
A meta média de porcentagem de utilização da CPU (0-100) para decisões de escalabilidade. Quando a utilização média da CPU exceder esse limite, o provedor de capacidade ampliará as instâncias da Amazon EC2 . Quando especificado, AWS SAM constrói `[CapacityProviderScalingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig)` um `AWS::Lambda::CapacityProvider` recurso com o `[ScalingMode](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityproviderscalingconfig.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig-scalingmode)` definido como `'Manual'` e `[ScalingPolicies](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityproviderscalingconfig.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig-scalingpolicies)` definido como. `[{PredefinedMetricType: 'LambdaCapacityProviderAverageCPUUtilization', TargetValue: <this value>}]`   
*Tipo*: duplo  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente. 

## Exemplos
<a name="sam-property-capacityprovider-scalingconfig-examples"></a>

### Scaling configuration (Configuração de escalabilidade)
<a name="sam-property-capacityprovider-scalingconfig-examples-basic"></a>

O exemplo a seguir mostra uma configuração de escalabilidade com VCpu contagem máxima e média de utilização da CPU.

```
ScalingConfig:
  MaxVCpuCount: 10
  AverageCPUUtilization: 70.0
```