Hitachi

JP1 Version 12 JP1/Automatic Operation サービステンプレートリファレンス


5.2.2 スタックの作成

機能

この部品は,AWS CloudFormation環境で,Amazon S3バケットに保存されているテンプレートファイルからスタックを作成します。スタックを作成すると,テンプレートファイルに記述されているAWSリソースがAWS CloudFormationによって作成されます。

作成されたAWSリソースのリソースIDは,AWS.resourceIdプロパティに格納されます。複数のリソースが作成された場合には,コンマ区切りで出力されます。

ただし,リソースIDの長さの合計が1024文字を超える場合,1025文字目以降を含むリソースIDは切り捨てられます。

この部品が前提とするサーバを次に示します。

・AWS操作サーバ(実行対象サーバ)

 AWS Tools for Windows PowerShell(以降,「AWS Tools」と呼ぶ)がインストールされているサーバです。本製品によってこのサーバに部品が転送され,実行されます。

この部品内のスクリプトでは,次に示すAWS Toolsのコマンドレットを実行します。

・New-CFNStack -StackName "スタック名(AWS.stackNameプロパティ)の値"

        -OnFailure "スタック作成失敗時の動作(AWS.actionStackCreationFailプロパティ)の値"

        -TemplateURL "Amazon S3バケットに保存されているテンプレートファイルのURL" ※1

        [-Parameter "テンプレートファイルのパラメーターに設定する値"] ※2

        -Capability "CAPABILITY_IAM"

        -Force

  ※1 バケット名(AWS.bucketNameプロパティ)とキー名(AWS.keyNameプロパティ)を組み合わせた値。

  ※2 テンプレートパラメーターキー(AWS.templateParameterKeyプロパティ)とテンプレートパラメーター値(AWS.templateParameterValueプロパティ)を組み合わせた値。20組まで設定可能。

上記コマンドレットを実行したあと,作成したスタックの状態が"CREATE_COMPLETE"になることを確認します。

AWS Toolsのコマンドレットの詳細については,AWSドキュメントの「AWS Tools for Windows PowerShell Cmdlet Reference」を参照してください。

利用場面

この部品は,AWS CloudFormation環境でテンプレートファイルからAWSリソースを作成する時に使用できます。

前提条件

【システム内前提製品】/【実行対象サーバ内前提製品】/【実行対象サーバ内前提製品の稼働OS】の最新のサポート状況については,リリースノートを参照してください。

【システム内前提製品】

 JP1/Automatic Operation 11-00以降

【実行対象サーバ内前提製品】

 ・AWS Tools for Windows PowerShell

 ・Microsoft .Net Framework 3.5以降

【実行対象サーバ内前提製品の稼働OS】

 ・Windows Server 2008 R2 Standard/Enterprise/Datacenter

 ・Windows Server 2012 Standard/Datacenter,Windows Server 2012 R2 Standard/Datacenter

 ただし,Server Coreインストール環境は除く。

【実行対象システムの使用条件】

(1) スタックに関する条件

 ・スタックの作成に使用するテンプレートファイルがAmazon S3バケットに保存されていること。

注意事項

(1) この部品のプロパティには「"」(ダブルクォーテーション)および「'」(シングルクォーテーション)を含む文字列は指定しないでください。

(2) スタック名(AWS.stackNameプロパティ)には,作成済みのスタック名を指定しないでください。指定した場合,タスクが異常終了します。

(3) その他の注意事項については,AWSドキュメントの「AWS Tools for Windows PowerShell Cmdlet Reference」の注意事項を参照してください。

実行権限

(1) AWSにログインするIAMユーザーが,次に示すアクションを行えるようにポリシー設定されている必要があります。

 ・スタックの作成および情報取得

・Amazon S3アップロートファイルの操作

 ・AWSリソースの作成

バージョン

02.01.00

部品のタグ

Add VM,AWS

タスクログに表示される部品の名称

awsCreateStack

戻り値

戻り値

説明

0

正常

12

異常(ユーザーミス) プロパティ不正

23

異常(環境不正) 前提環境不正

27

異常(エラー内容はタスクログで確認)

41

異常(部品内でエラーを検知) プロパティ未入力(部品スクリプトでエラーを検知)

プロパティ一覧

プロパティ一覧を次の表に示します。

プロパティキー

プロパティ名

説明

デフォルト値

入出力種別

必須区分

plugin.destinationHost

実行対象サーバのホスト名

この部品を実行するサーバのホスト名またはIPアドレスを指定します。IPv6アドレスには対応していません。

− 

入力

○ 

AWS.accessKeyId

アクセスキーID

AWSに接続するためのアクセスキーIDを指定します。

− 

入力

○ 

AWS.secretAccessKey

シークレットアクセスキー

AWSに接続するためのシークレットアクセスキーを指定します。

− 

入力

○ 

AWS.region

リージョン

接続先となるAWSのリージョンを指定します。

− 

入力

○ 

AWS.bucketName

バケット名

テンプレートファイルをアップロードしたバケット名を指定します。

− 

入力

○ 

AWS.keyName

キー名

アップロードしたテンプレートファイルに設定したキー名を指定します。

− 

入力

○ 

AWS.stackName

スタック名

スタックの名称を指定します。

− 

入力

○ 

AWS.actionStackCreationFail

スタック作成失敗時の動作

スタックの作成に失敗した時の動作を指定します。指定可能な値は"DO_NOTHING","ROLLBACK","DELETE"のどれかです。

− 

入力

○ 

AWS.checkStackCreationCount

スタックの作成完了の確認回数

スタックの作成が完了したか確認する際の確認回数を指定します。スタックの作成完了の確認間隔と組み合わせて最大待ち時間となります。

− 

入力

○ 

AWS.checkStackCreationInterval

スタックの作成完了の確認間隔

スタックの作成が完了したか確認する際の確認間隔を秒単位で指定します。

− 

入力

○ 

AWS.templateParameterKey1

テンプレートパラメーターキー1

テンプレートファイルに定義されているパラメーターのキー名称を指定します。

− 

入力

△ 

AWS.templateParameterValue1

テンプレートパラメーター値1

テンプレートパラメーターキー1に対応する値を指定します。

− 

入力

△ 

AWS.templateParameterKey2

テンプレートパラメーターキー2

テンプレートファイルに定義されているパラメーターのキー名称を指定します。

− 

入力

△ 

AWS.templateParameterValue2

テンプレートパラメーター値2

テンプレートパラメーターキー2に対応する値を指定します。

− 

入力

△ 

AWS.templateParameterKey3

テンプレートパラメーターキー3

テンプレートファイルに定義されているパラメーターのキー名称を指定します。

− 

入力

△ 

AWS.templateParameterValue3

テンプレートパラメーター値3

テンプレートパラメーターキー3に対応する値を指定します。

− 

入力

△ 

AWS.templateParameterKey4

テンプレートパラメーターキー4

テンプレートファイルに定義されているパラメーターのキー名称を指定します。

− 

入力

△ 

AWS.templateParameterValue4

テンプレートパラメーター値4

テンプレートパラメーターキー4に対応する値を指定します。

− 

入力

△ 

AWS.templateParameterKey5

テンプレートパラメーターキー5

テンプレートファイルに定義されているパラメーターのキー名称を指定します。

− 

入力

△ 

AWS.templateParameterValue5

テンプレートパラメーター値5

テンプレートパラメーターキー5に対応する値を指定します。

− 

入力

△ 

AWS.templateParameterKey6

テンプレートパラメーターキー6

テンプレートファイルに定義されているパラメーターのキー名称を指定します。

− 

入力

△ 

AWS.templateParameterValue6

テンプレートパラメーター値6

テンプレートパラメーターキー6に対応する値を指定します。

− 

入力

△ 

AWS.templateParameterKey7

テンプレートパラメーターキー7

テンプレートファイルに定義されているパラメーターのキー名称を指定します。

− 

入力

△ 

AWS.templateParameterValue7

テンプレートパラメーター値7

テンプレートパラメーターキー7に対応する値を指定します。

− 

入力

△ 

AWS.templateParameterKey8

テンプレートパラメーターキー8

テンプレートファイルに定義されているパラメーターのキー名称を指定します。

− 

入力

△ 

AWS.templateParameterValue8

テンプレートパラメーター値8

テンプレートパラメーターキー8に対応する値を指定します。

− 

入力

△ 

AWS.templateParameterKey9

テンプレートパラメーターキー9

テンプレートファイルに定義されているパラメーターのキー名称を指定します。

− 

入力

△ 

AWS.templateParameterValue9

テンプレートパラメーター値9

テンプレートパラメーターキー9に対応する値を指定します。

− 

入力

△ 

AWS.templateParameterKey10

テンプレートパラメーターキー10

テンプレートファイルに定義されているパラメーターのキー名称を指定します。

− 

入力

△ 

AWS.templateParameterValue10

テンプレートパラメーター値10

テンプレートパラメーターキー10に対応する値を指定します。

− 

入力

△ 

AWS.templateParameterKey11

テンプレートパラメーターキー11

テンプレートファイルに定義されているパラメーターのキー名称を指定します。

− 

入力

△ 

AWS.templateParameterValue11

テンプレートパラメーター値11

テンプレートパラメーターキー11に対応する値を指定します。

− 

入力

△ 

AWS.templateParameterKey12

テンプレートパラメーターキー12

テンプレートファイルに定義されているパラメーターのキー名称を指定します。

− 

入力

△ 

AWS.templateParameterValue12

テンプレートパラメーター値12

テンプレートパラメーターキー12に対応する値を指定します。

− 

入力

△ 

AWS.templateParameterKey13

テンプレートパラメーターキー13

テンプレートファイルに定義されているパラメーターのキー名称を指定します。

− 

入力

△ 

AWS.templateParameterValue13

テンプレートパラメーター値13

テンプレートパラメーターキー13に対応する値を指定します。

− 

入力

△ 

AWS.templateParameterKey14

テンプレートパラメーターキー14

テンプレートファイルに定義されているパラメーターのキー名称を指定します。

− 

入力

△ 

AWS.templateParameterValue14

テンプレートパラメーター値14

テンプレートパラメーターキー14に対応する値を指定します。

− 

入力

△ 

AWS.templateParameterKey15

テンプレートパラメーターキー15

テンプレートファイルに定義されているパラメーターのキー名称を指定します。

− 

入力

△ 

AWS.templateParameterValue15

テンプレートパラメーター値15

テンプレートパラメーターキー15に対応する値を指定します。

− 

入力

△ 

AWS.templateParameterKey16

テンプレートパラメーターキー16

テンプレートファイルに定義されているパラメーターのキー名称を指定します。

− 

入力

△ 

AWS.templateParameterValue16

テンプレートパラメーター値16

テンプレートパラメーターキー16に対応する値を指定します。

− 

入力

△ 

AWS.templateParameterKey17

テンプレートパラメーターキー17

テンプレートファイルに定義されているパラメーターのキー名称を指定します。

− 

入力

△ 

AWS.templateParameterValue17

テンプレートパラメーター値17

テンプレートパラメーターキー17に対応する値を指定します。

− 

入力

△ 

AWS.templateParameterKey18

テンプレートパラメーターキー18

テンプレートファイルに定義されているパラメーターのキー名称を指定します。

− 

入力

△ 

AWS.templateParameterValue18

テンプレートパラメーター値18

テンプレートパラメーターキー18に対応する値を指定します。

− 

入力

△ 

AWS.templateParameterKey19

テンプレートパラメーターキー19

テンプレートファイルに定義されているパラメーターのキー名称を指定します。

− 

入力

△ 

AWS.templateParameterValue19

テンプレートパラメーター値19

テンプレートパラメーターキー19に対応する値を指定します。

− 

入力

△ 

AWS.templateParameterKey20

テンプレートパラメーターキー20

テンプレートファイルに定義されているパラメーターのキー名称を指定します。

− 

入力

△ 

AWS.templateParameterValue20

テンプレートパラメーター値20

テンプレートパラメーターキー20に対応する値を指定します。

− 

入力

△ 

AWS.resourceId

リソースID

作成されたリソースのIDが格納されます。複数のリソースが作成された場合には,コンマ区切りで出力されます。

− 

出力

△ 

common.returnValue

部品の戻り値

この部品の戻り値が格納されます。

− 

出力

△