

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

# 自動將 AWS 資源匯入 CloudFormation 堆疊
<a name="import-resources-automatically"></a>

現在建立或更新 CloudFormation 堆疊時，您可以自動匯入*具名資源*。*具名資源*指具有自訂名稱的資源。如需詳細資訊，請參閱 *CloudFormation 範本參考*中的[名稱類型](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-name.html)。

啟動自動匯入後，CloudFormation 會檢查與您的範本匹配的現有資源，並在部署期間將其匯入。對於巢狀堆疊，請從根堆疊建立變更集。

在匯入完成且在執行後續的堆疊操作前，我們建議在匯入的資源上執行漂移偵測。漂移偵測可確保範本組態與實際組態相符。如需詳細資訊，請參閱[在整個 CloudFormation 堆疊上偵測偏離](detect-drift-stack.md)。

若要匯入資源，需符合下列要求：
+ 資源必須在您的範本中定義靜態自訂名稱。目前不支援動態名稱 (使用 \$1Ref 或其他函數建立)。
+ 資源必須具有 `Retain` 或 `RetainExceptOnCreate` 的 `DeletionPolicy`。
+ 資源不得已屬於另一個 CloudFormation 堆疊。
+ 該資源類型必須支援 CloudFormation 匯入操作。如需詳細資訊，請參閱[資源類型支援](resource-import-supported-resources.md)。
+ 資源類型的主要 ID 必須包含在範本中。具有唯讀屬性的主要 ID 不受支援。若要查詢某類型的主要 ID，請在資源結構描述中查找 `primaryIdentifier` 屬性。如需該屬性的詳細資訊，請參閱 [primaryIdentifier](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html#schema-properties-primaryidentifier)。

**Example 自動匯入範例**  
下列範例使用變更集 `CreateChangeSet`，根據範本檔案 `template.yaml` 建立名為 `my-stack` 的堆疊，並會自動匯入相符的資源。  

```
aws cloudformation create-change-set \
  --stack-name my-stack \
  --change-set-name CreateChangeSet \
  --change-set-type CREATE \
  --template-body file://template.yaml \
  --import-existing-resources
```

## 疑難排解
<a name="auto-import-troubleshooting"></a>

若自動匯入失敗，請執行下列步驟進行疑難排解：
+ 確認範本中的資源名稱與實際資源名稱是否完全一致
+ 確認該資源未被另一個堆疊管理
+ 確定資源類型支援匯入操作
+ 確認您的範本包含資源類型所需的全部必要屬性