0

私は、2つのインスタンス、つまりAurora RDSサーバーとそれを使用するEC2インスタンスを作成するCloudFormationスクリプトを持っています。私はデータベースをシードできるように、EC2インスタンス用の私の初期スクリプトでオーロラのIPアドレスを使用する必要があります。AWS CloudFormationの別のインスタンスのためにAurora IPを取得し、それをUserDataで使用します。

EC2のinitスクリプトが実行される前に、Auroraを起動して実行する必要があります。もう一つはIPアドレスが必要です。

"UserData"   : { 
    "Fn::Base64" : { 
     "Fn::Join" : [ 
      "", 
      [ 
       "<script>\n", 
       "seedtool.exe ", { "Ref" : "MyAuroraDbInstance::InternalIP" }, "\n", 
       "</script>\n" 
      ] 
     ] 
    } 
}, 

私の質問は、上記のスクリプトにMyAuroraDbInstance::InternalIPの代わりに何を置きますか?

+0

RDSインスタンス/クラスタのためにIPアドレスを直接使用するべきではありません。 Auroraでは、クラスタエンドポイントの読み取り/書き込みを使用する必要があります。 –

答えて

3

DBInstanceでFn :: GetAttを使用し、Endpoint.Addressの属性を要求します。これはIPを与えません、それはCNAMEを与えるでしょう

+2

この回答に追加するには、IPアドレスを直接使用しないでください。代わりに、 'Fn :: GetAtt'があなたに与えるCNAMEを使用してください。 –

関連する問題