2

私は、userdataプロパティを持つ2つのインスタンスを含むcloudformテンプレートを持っています。cloudformformationテンプレートを使用してuserdataの出力値を取得する方法は?

私はあるインスタンスのユーザーデータからデータを取り出し、別のインスタンスのユーザーデータに渡す必要があります。

たとえば(以下から)、「test」をinstance1からフェッチし、instance2 userdataに渡す必要があります。

サンプルテンプレート:基本的に

"instance1": { 
    "Type": "AWS::EC2::Instance", 
    "Properties": { 
"UserData": { 
     "Fn::Base64": { 
     "Fn::Join": [ 
      "", 
      [ 
      "#!/bin/bash\n", 
      "set -x\n", 
      "echo test\n", 
      ]]}}}}, 

"instance2": { 
    "Type": "AWS::EC2::Instance", 
    "Properties": { 
"UserData": { 
     "Fn::Base64": { 
     "Fn::Join": [ 
      "", 
      [ 
      "#!/bin/bash\n", 
      "set -x\n", 
      //fetch the value 
      ]]}}}}, 
+0

インスタンス2に
echo "test" > /tmp/myfile aws s3 cp /tmp/myfile s3://<bucket>/myfile 

:インスタンス1に

を実行時にinstance1から(インスタンスが実際に実行されている場合) – spg

+0

返信いただきありがとうございます。 はい@spg。インフラストラクチャのプロビジョニング時に使用します。 – Prakash26790

答えて

2

あなたは2つのオプションがあります:(.... ElastiCache、RDS、S3)

  1. 使用する共有メモリのいくつかの並べ替えを直接
  2. scp/sshへ別のインスタンスを取得し、必要な情報を取得します。

私は、例えば、S3のための共有メモリ使用を示唆している:あなたは、あなたがデータをフェッチすることを意味するか

aws s3 cp s3://<bucket>/myfile /tmp/myfile 
cat /tmp/myfile 
関連する問題