ЯoomeR

プログラミング~実装とエラー解決と、時々、AI~

FacebookConversionsAPIGatewayで任意のVPCを使用する方法

FacebookConversionsAPIGatewayの設定は通常一本道だが・・・

こちらの公式ドキュメントを参考に実装すると、ボタンを押下するだけでAPIの設定が完了する。

この場合、自動的にデフォルトのVPCが使用されるようになっている。

しかし、場合によってはデフォルトVPCではなく自分で用意した別のVPCを利用したい時もあるので、ソリューションをまとめる。

Step1.テンプレートファイルをダウンロードする

まずは通常通り設定を進めていく。

進めていくと、スタックの作成(AWSのページに)に遷移する。

AWSのページに遷移するので、「テンプレートURL」をコピーしよう。

コピーしたURLをブラウザの検索バーにペーストし、Enterキー(returnキー)を押下することでyamlファイルがダウンロードされる。

⚠️ページは閉じないようにしよう。

このスタック作成ページは閉じないようにしよう。

個人的には、「デプロイメントの開始」ではなく「URLをコピー」を選択することをお勧めする。

コピーしたURLを使用すれば何度開いても同じ情報が表示される。

一方、「デプロイメントの開始」を再度押した場合にはProvisioningDataの値が変更されてしまう。

Step2.テンプレートファイルの編集

テンプレートファイルをテキストエディタで編集する。

編集1箇所目:vpc-idの設定

    Properties:
      GroupDescription: "Enable limited SSH access ...
      VpcId: vpc-xxxxxxxxxxxxxxx
      SecurityGroupIngress:

おおよそ160行目あたりに「Properties」の項目がある。

(「SecurityGroupIngress」で検索すると容易に見つけることができる。)

「GroupDescrioption」と「SecurityGroupIngess」の間に使用したいVPCのidを追記する。

編集2箇所目:サブネットidの設定

ConversionsApiGatewayEC2Instance: 
    Type: AWS::EC2::Instance
    Properties:
      ImageId:
        Fn::FindInMap:
        - AWSRegionArch2AMI
        - Ref: AWS::Region
        - Fn::FindInMap:
          - AWSInstanceType2Arch
          - Ref: InstanceType
          - Arch
      InstanceType:
        !Ref InstanceType
      SecurityGroupIds: [ !GetAtt "ConversionsApiGatewaySecurityGroup.GroupId" ]
      SubnetId: subnet-xxxxxxxxxxxxxxxxx

190行目あたりに「EC2」の設定項目がある。

(「SecurityGroupIds」で検索するのがおすすめ。)

「SecurityGroupIds」の下に使用したいサブネットのidを追記しよう。

サブネットの設定について

サブネットは「自動的にipv4を割り当てる」を有効にしておこう。

こちらが無効になっているとインスタンスの立ち上げプロセスで失敗してしまう。

Step3.テンプレートファイルの保存

編集したファイルを保存しよう。

通常の「Ctrl + S」で保存すると拡張子がつかないことがあるが、末尾に「yaml」があってもなくても実は問題ない。

Step4.テンプレートファイルを使用してスタックを作成する。

AWSでスタックの新規作成を行い、「テンプレートのアップロード」を選択しよう。

ファイルの選択において、先ほど追記したテンプレートファイルをアップロードすればOKだ。

Step5.項目の入力

次に、スタックの名前などの入力を求められる。

この際、Step1で開いたページの情報を使用する。

パラメータの

  • AdminDomainName
  • ProvisioningData

をコピペしよう。

残りのメールアドレスやパスワードは任意の値を入力する。

Step6.EC2の立ち上げ

このまま特に他の項目を変更せずに次へ進もう。

(次のページのiam系の設定も特に編集する必要はない)

スタックの作成が完了すれば、公式ドキュメントの「ステップ2」に戻って設定を進めていこう。

これで任意のVPC・サブネットを使用してFacebookConversionAPIGatewayを利用することができる。