CloudFormation 管理外の既存リソースを管理下にする方法を教えてください
困っていた内容
CloudFormation で AWS リソースを管理しています。
CloudFormation を使わず作成したリソースがあり、再作成せず、CloudFormation の管理下にしたいです。
既存の CloudFormation スタックに手動で作成したリソースを追加する方法を教えてください。
どう対応すればいいの?
CloudFormation のリソースインポート機能を使用してください。
スタックへの既存リソースのインポート - AWS CloudFormation
各 AWS サービスのマネジメントコンソールから作成したリソースなど CloudFormation 外で作成したリソースを、CloudFormation で管理したい場合、リソースインポート機能を使用します。
リソースインポート機能では、CloudFormation 外の既存リソースを、新規のスタックとしてインポート、もしくは既存スタックへの追加リソースとしてインポートできます。
なお、インポートするリソースの CloudFormation 記述を含むテンプレートは用意する必要があります。
やってみた
CloudFormation 外で作成した次の SSM パラメータストアを CloudFormation スタックにインポートします。
なお、SSM パラメータストア(AWS::SSM::Parameter)は、2025年3月時点でインポートには対応していますが、IaC ジェネレーターには非対応です。

また、CloudFormation テンプレートとして次を使用します。
HatoMyParameterは元々ある記載となり、今回のインポート用としてHatoImportParameterを追加しています。
AWSTemplateFormatVersion: '2010-09-09'
Resources:
  HatoMyParameter:
    Type: AWS::SSM::Parameter
    Properties:
      Name: /cloudformation/hato-create-test
      Type: String
      Value: hato-test-value
      Description: CloudFormation Create Resource
  # ここから追加した内容
  HatoImportParameter:
    Type: AWS::SSM::Parameter
    DeletionPolicy: Delete
    Properties:
      Name: /cloudformation/hato-import-test
      Type: String
      Value: hato-test-value
      Description: CloudFormation Import Test Resource
AWS CloudFormation コンソールを開き、インポートするスタックを選択します。
「スタックアクション」->「スタックへのリソースのインポート」の順に選択します。

「次へ」をクリックします。

インポートするリソースを追加した CloudFormation テンプレートをアップロードして「次へ」をクリックします。

インポートするリソースの識別子を入力して「次へ」をクリックします。
今回はパラメータストアの名前を入力しています。

「次へ」をクリックします。

「リソースをインポート」をクリックします。

インポートが完了するまで、しばらく待ちます。

IMPORT_COMPLETEとなり完了すると、スタックにインポートされたリソースが追加されます。

また、インポートしたリソースに所定のタグも付与されました。












