

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 自訂資源和 Application Auto Scaling
<a name="services-that-can-integrate-custom"></a>

您可以使用目標追蹤擴展政策、步驟擴展政策和排程擴展來擴展自訂資源。

使用下列資訊協助您將自訂資源與 Application Auto Scaling 整合。

## 為自訂資源建立的服務連結角色
<a name="integrate-service-linked-role-custom"></a>

將自訂資源註冊為 Application Auto Scaling 可擴展的目標 AWS 帳戶 時，會在 中自動建立下列服務連結角色。此角色可讓 Application Auto Scaling 在您的帳戶內執行支援的操作。如需詳細資訊，請參閱[Application Auto Scaling 的服務連結角色](application-auto-scaling-service-linked-roles.md)。
+ `AWSServiceRoleForApplicationAutoScaling_CustomResource`

## 服務連結角色所使用的服務委託人
<a name="integrate-service-principal-custom"></a>

上一節中的服務連結角色，只能由依據角色定義的信任關係所授權的服務委託人來擔任。Application Auto Scaling 使用的服務連結角色會將存取權授予下列服務委託人：
+ `custom-resource.application-autoscaling.amazonaws.com`

## 向 Application Auto Scaling 將自訂資源註冊為可擴展的目標
<a name="integrate-register-custom"></a>

Application Auto Scaling 需要先有可擴展的目標，您才能為自訂資源建立擴展政策或排定的動作。可擴展的目標是 Application Auto Scaling 可水平擴展和縮減的資源。可擴展的目標是由資源 ID、可擴展的維度和命名空間的組合來唯一識別。

若要使用 CLI 或其中一個 AWS SDKs AWS 設定自動擴展，您可以使用下列選項：
+ AWS CLI: 

  為自訂資源呼叫 [register-scalable-target](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/register-scalable-target.html) 命令。以下範例會將自訂資源註冊為可擴展的目標，所需計數下限為 1 個容量單位，所需計數上限為 10 個容量單位。`custom-resource-id.txt` 檔案包含資源 ID 的識別字串，代表自訂資源通過 Amazon API Gateway 端點的路徑。

  ```
  aws application-autoscaling register-scalable-target \
    --service-namespace custom-resource \
    --scalable-dimension custom-resource:ResourceType:Property \
    --resource-id file://~/custom-resource-id.txt \
    --min-capacity 1 \
    --max-capacity 10
  ```

  `custom-resource-id.txt` 的內容：

  ```
  https://example.execute-api.us-west-2.amazonaws.com/prod/scalableTargetDimensions/1-23456789
  ```

  如果成功，此命令會傳回可擴展目標的 ARN。

  ```
  {
      "ScalableTargetARN": "arn:aws:application-autoscaling:region:account-id:scalable-target/1234abcd56ab78cd901ef1234567890ab123"
  }
  ```
+ AWS 開發套件：

  呼叫 [RegisterScalableTarget](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_RegisterScalableTarget.html) 操作，並提供 `ResourceId`、`ScalableDimension`、`ServiceNamespace`、`MinCapacity` 及 `MaxCapacity` 作為參數。

## 相關資源
<a name="custom-related-resources"></a>

如果您才剛開始使用 Application Auto Scaling，您可以在下列文件中找到有關擴展自訂資源的其他實用資訊：

[GitHub 儲存庫](https://github.com/aws/aws-auto-scaling-custom-resource)