• /
  • EnglishEspañolFrançais日本語한국어Português
  • ログイン今すぐ開始

この機械翻訳は、参考として提供されています。

英語版と翻訳版に矛盾がある場合は、英語版が優先されます。詳細については、このページを参照してください。

問題を作成する

AWS Auto Scalingアクション

|View as Markdown (English)

このページでは、ワークフロー自動化アクションカタログで利用可能なAWS Auto Scalingアクションのリファレンスを提供します。これらのアクションを使用して、Auto Scalingグループ(ASG)を管理します — インスタンスのアタッチとデタッチ、キャパシティの調整、スケーリングポリシーの実行、インスタンス更新の管理、スケーリングプロセスの制御、およびASG状態のクエリ。

前提条件

前提条件と認証情報のセットアップについては、AWS認証情報のセットアップをご覧ください。

インスタンスのアタッチ

アクション識別子はaws.autoscaling.attachInstancesです。

1つ以上のEC2インスタンスを既存のAuto Scalingグループにアタッチします。インスタンスをアタッチすると、アタッチした数だけ希望するキャパシティが増加します。1回の呼び出しにつき最大20個のインスタンスをアタッチできます。インスタンスは実行中または停止状態である必要があり、アタッチによってグループの最大サイズを超えてはなりません。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

例

awsRoleArn

弦

オプション。

IAMロールARN。エグゼキューターは、AWSで認証を行うためにSTS経由でこのロールを引き受けます。静的認証情報よりも推奨されます。少なくとも1つの認証フィールドが必要です。

arn:aws:iam::123456789012:role/my-workflow-role

awsAccessKeyId

弦

オプション。

AWSアクセスキーID。シークレット参照として渡す必要があります。

${{ :secrets:awsAccessKeyId }}

awsSecretAccessKey

弦

オプション。

AWSシークレットアクセスキー。シークレット参照として渡す必要があります。

${{ :secrets:awsSecretAccessKey }}

awsSessionToken

弦

オプション。

一時的な認証情報のためのAWSセッショントークン。シークレット参照として渡す必要があります。

${{ :secrets:awsSessionToken }}

リージョン

弦

必須。

Auto Scalingグループが配置されているAWSリージョン。

"us-east-1"

autoScalingGroupName

弦

必須。

Auto Scalingグループの名前。

"my-asg"

instanceIds

リスト

必須。

アタッチするEC2インスタンスIDです。

["i-0123456789abcdef0", "i-0fedcba9876543210"]

selectors

リスト

オプション。

アクションの出力から特定のフィールドを抽出するためのJQセレクター。

[{"name": "success", "expression": ".success"}]

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

AWS APIレスポンスオブジェクトです。完全なレスポンス構文については、

attach_instances — Boto3 ドキュメント

を参照してください。

success

ブール値

true

アクションが成功した場合、それ以外の場合は

false

。

errorMessage

弦

アクションが失敗した場合のエラーメッセージ。成功した場合は

null

。

次の例では、EC2インスタンスをAuto Scalingグループにアタッチします。

ワークフローの例

name: asg-attach-instances
workflowInputs:
arnRole:
type: String
asgName:
type: String
steps:
- name: attachInstances
type: action
action: aws.autoscaling.attachInstances
version: '1'
inputs:
awsRoleArn: ${{ .workflowInputs.arnRole }}
region: us-east-1
autoScalingGroupName: ${{ .workflowInputs.asgName }}
instanceIds:
- i-0123456789abcdef0
next: end

インスタンスのデタッチ

アクション識別子はaws.autoscaling.detachInstancesです。

Auto Scalingグループから1つ以上のEC2インスタンスをデタッチします。1回の呼び出しで最大20のインスタンスをデタッチできます。インスタンスはInServiceまたはStandbyの状態である必要があります。shouldDecrementDesiredCapacityがfalseの場合、ASGは希望する容量を維持するために代替インスタンスをリリースします。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

例

awsRoleArn

弦

オプション。

IAMロールARN。エグゼキューターは、AWSで認証を行うためにSTS経由でこのロールを引き受けます。静的認証情報よりも推奨されます。少なくとも1つの認証フィールドが必要です。

arn:aws:iam::123456789012:role/my-workflow-role

awsAccessKeyId

弦

オプション。

AWSアクセスキーID。シークレット参照として渡す必要があります。

${{ :secrets:awsAccessKeyId }}

awsSecretAccessKey

弦

オプション。

AWSシークレットアクセスキー。シークレット参照として渡す必要があります。

${{ :secrets:awsSecretAccessKey }}

awsSessionToken

弦

オプション。

一時的な認証情報のためのAWSセッショントークン。シークレット参照として渡す必要があります。

${{ :secrets:awsSessionToken }}

リージョン

弦

必須。

Auto Scalingグループが配置されているAWSリージョン。

"us-east-1"

autoScalingGroupName

弦

必須。

Auto Scalingグループの名前。

"my-asg"

instanceIds

リスト

必須。

デタッチするEC2インスタンスID。

["i-0123456789abcdef0"]

shouldDecrementDesiredCapacity

ブール値

必須。

true

の場合、デタッチされたインスタンスの数だけ希望する容量を減らします。

false

の場合、ASGは代替をリリースします。

true

selectors

リスト

オプション。

アクションの出力から特定のフィールドを抽出するためのJQセレクター。

[{"name": "activities", "expression": ".response.Activities"}]

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

AWS APIレスポンスオブジェクト。完全なレスポンス構文については、

detach_instances — Boto3 documentation

を参照してください。

success

ブール値

true

アクションが成功した場合、それ以外の場合は

false

。

errorMessage

弦

アクションが失敗した場合のエラーメッセージ。成功した場合は

null

。

次の例では、インスタンスをデタッチし、希望する容量を減らします。

ワークフローの例

name: asg-detach-instances
workflowInputs:
arnRole:
type: String
steps:
- name: detachInstances
type: action
action: aws.autoscaling.detachInstances
version: '1'
inputs:
awsRoleArn: ${{ .workflowInputs.arnRole }}
region: us-east-1
autoScalingGroupName: my-asg
instanceIds:
- i-0123456789abcdef0
shouldDecrementDesiredCapacity: true
next: end

希望する容量を設定

アクション識別子はaws.autoscaling.setDesiredCapacityです。

Auto Scalingグループの希望するインスタンス数を更新します。新しい値は、グループのMinSizeとMaxSizeの間である必要があります。honorCooldownがtrueの場合、ASGがクールダウン期間中であればリクエストは拒否されます。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

例

awsRoleArn

弦

オプション。

IAMロールARN。エグゼキューターは、AWSで認証を行うためにSTS経由でこのロールを引き受けます。静的認証情報よりも推奨されます。少なくとも1つの認証フィールドが必要です。

arn:aws:iam::123456789012:role/my-workflow-role

awsAccessKeyId

弦

オプション。

AWSアクセスキーID。シークレット参照として渡す必要があります。

${{ :secrets:awsAccessKeyId }}

awsSecretAccessKey

弦

オプション。

AWSシークレットアクセスキー。シークレット参照として渡す必要があります。

${{ :secrets:awsSecretAccessKey }}

awsSessionToken

弦

オプション。

一時的な認証情報のためのAWSセッショントークン。シークレット参照として渡す必要があります。

${{ :secrets:awsSessionToken }}

リージョン

弦

必須。

Auto Scalingグループが配置されているAWSリージョン。

"us-east-1"

autoScalingGroupName

弦

必須。

Auto Scalingグループの名前。

"my-asg"

希望する容量

Int

必須。

ターゲットのインスタンス数です。グループの

MinSize

と

MaxSize

の間である必要があります。

3

honorCooldown

ブール値

オプション。

true

の場合、ASGがクールダウン期間中であればリクエストを拒否します。デフォルトは

false

です。

false

selectors

リスト

オプション。

アクションの出力から特定のフィールドを抽出するためのJQセレクター。

[{"name": "success", "expression": ".success"}]

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

AWS APIレスポンスオブジェクトです。完全なレスポンス構文については、

set_desired_capacity — Boto3 documentation

をご覧ください。

success

ブール値

true

アクションが成功した場合、それ以外の場合は

false

。

errorMessage

弦

アクションが失敗した場合のエラーメッセージ。成功した場合は

null

。

以下の例では、希望する容量を5インスタンスに設定します。

ワークフローの例

name: asg-set-capacity
workflowInputs:
arnRole:
type: String
steps:
- name: setDesiredCapacity
type: action
action: aws.autoscaling.setDesiredCapacity
version: '1'
inputs:
awsRoleArn: ${{ .workflowInputs.arnRole }}
region: us-east-1
autoScalingGroupName: my-asg
desiredCapacity: 5
honorCooldown: false
next: end

スケーリングポリシーを実行する

アクション識別子はaws.autoscaling.executePolicyです。

Auto Scalingグループで名前付きスケーリングポリシーを実行します。ポリシーはグループにすでに存在している必要があります。ステップスケーリングポリシーの場合、metricValueとbreachThresholdはポリシーの閾値を上書きできます。honorCooldownがtrueで、ASGがクールダウン中の場合、呼び出しは成功しますが、スケーリングアクティビティはトリガーされません。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

例

awsRoleArn

弦

オプション。

IAMロールARN。エグゼキューターは、AWSで認証を行うためにSTS経由でこのロールを引き受けます。静的認証情報よりも推奨されます。少なくとも1つの認証フィールドが必要です。

arn:aws:iam::123456789012:role/my-workflow-role

awsAccessKeyId

弦

オプション。

AWSアクセスキーID。シークレット参照として渡す必要があります。

${{ :secrets:awsAccessKeyId }}

awsSecretAccessKey

弦

オプション。

AWSシークレットアクセスキー。シークレット参照として渡す必要があります。

${{ :secrets:awsSecretAccessKey }}

awsSessionToken

弦

オプション。

一時的な認証情報のためのAWSセッショントークン。シークレット参照として渡す必要があります。

${{ :secrets:awsSessionToken }}

リージョン

弦

必須。

Auto Scalingグループが配置されているAWSリージョン。

"us-east-1"

autoScalingGroupName

弦

必須。

Auto Scalingグループの名前。

"my-asg"

ポリシー名

弦

必須。

実行するスケーリングポリシーの名前またはARN。

"my-scale-out-policy"

honorCooldown

ブール値

オプション。

true

であり、ASGがクールダウン中の場合、呼び出しは成功しますが、スケーリングアクティビティはトリガーされません。

false

metricValue

弦

オプション。

ステップスケーリングポリシーのメトリクス値のオーバーライド。

"50.0"

breachThreshold

弦

オプション。

ステップスケーリングポリシーの違反閾値のオーバーライド。

"70.0"

selectors

リスト

オプション。

アクションの出力から特定のフィールドを抽出するためのJQセレクター。

[{"name": "success", "expression": ".success"}]

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

AWS APIレスポンスオブジェクトです。完全なレスポンス構文については、

execute_policy — Boto3 documentation

をご覧ください。

success

ブール値

true

アクションが成功した場合、それ以外の場合は

false

。

errorMessage

弦

アクションが失敗した場合のエラーメッセージ。成功した場合は

null

。

次の例では、名前付きスケールアウトポリシーを実行します。

ワークフローの例

name: asg-execute-policy
workflowInputs:
arnRole:
type: String
steps:
- name: executePolicy
type: action
action: aws.autoscaling.executePolicy
version: '1'
inputs:
awsRoleArn: ${{ .workflowInputs.arnRole }}
region: us-east-1
autoScalingGroupName: my-asg
policyName: my-scale-out-policy
honorCooldown: false
next: end

インスタンスの更新を開始します

アクション識別子はaws.autoscaling.startInstanceRefreshです。

最新のリリーステンプレートまたは設定を使用して、インスタンスのローリング置換を開始します。グループごとに一度にアクティブにできる更新は1つだけです — すでに進行中の場合、呼び出しはInstanceRefreshInProgressで失敗します。ステータスをポーリングするには、aws.autoscaling.describeInstanceRefreshesを使用します。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

例

awsRoleArn

弦

オプション。

IAMロールARN。エグゼキューターは、AWSで認証を行うためにSTS経由でこのロールを引き受けます。静的認証情報よりも推奨されます。少なくとも1つの認証フィールドが必要です。

arn:aws:iam::123456789012:role/my-workflow-role

awsAccessKeyId

弦

オプション。

AWSアクセスキーID。シークレット参照として渡す必要があります。

${{ :secrets:awsAccessKeyId }}

awsSecretAccessKey

弦

オプション。

AWSシークレットアクセスキー。シークレット参照として渡す必要があります。

${{ :secrets:awsSecretAccessKey }}

awsSessionToken

弦

オプション。

一時的な認証情報のためのAWSセッショントークン。シークレット参照として渡す必要があります。

${{ :secrets:awsSessionToken }}

リージョン

弦

必須。

Auto Scalingグループが配置されているAWSリージョン。

"us-east-1"

autoScalingGroupName

弦

必須。

Auto Scalingグループの名前。

"my-asg"

戦略

弦

オプション。

リフレッシュ戦略。

"Rolling"

のみがサポートされている値です。

"Rolling"

プリファレンス

地図

オプション。

更新プリファレンス。

MinHealthyPercentage

は、置換中に正常な状態を維持するインスタンスの数を制御します(デフォルトは90%)。

InstanceWarmup

は、インスタンスが

InService

に達してから次のバッチを置換するまでの待機時間を設定します。

{"MinHealthyPercentage": 90, "InstanceWarmup": 300}

desiredConfiguration

地図

オプション。

この更新のリリーステンプレートまたは設定を上書きします。

{"LaunchTemplate": {"LaunchTemplateId": "lt-0123456789abcdef0", "Version": "2"}}

selectors

リスト

オプション。

アクションの出力から特定のフィールドを抽出するためのJQセレクター。

[{"name": "instanceRefreshId", "expression": ".response.InstanceRefreshId"}]

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

更新を識別する

InstanceRefreshId

(文字列UUID)が含まれます。完全なレスポンス構文については、

start_instance_refresh — Boto3 documentation

を参照してください。

success

ブール値

true

アクションが成功した場合、それ以外の場合は

false

。

errorMessage

弦

アクションが失敗した場合のエラーメッセージ。成功した場合は

null

。

次の例では、最小で90%の正常なインスタンスを使用して、ローリングインスタンスの更新を開始します。

ワークフローの例

name: asg-start-refresh
workflowInputs:
arnRole:
type: String
steps:
- name: startInstanceRefresh
type: action
action: aws.autoscaling.startInstanceRefresh
version: '1'
inputs:
awsRoleArn: ${{ .workflowInputs.arnRole }}
region: us-east-1
autoScalingGroupName: my-asg
strategy: Rolling
preferences:
MinHealthyPercentage: 90
InstanceWarmup: 300
selectors:
- name: instanceRefreshId
expression: '.response.InstanceRefreshId'
next: end

インスタンスの更新のキャンセル

アクション識別子はaws.autoscaling.cancelInstanceRefreshです。

進行中のインスタンスの更新をキャンセルします。キャンセルできるのは進行中の更新のみです — 更新がアクティブでないときにこれを呼び出すと、ActiveInstanceRefreshNotFoundで失敗します。すでに置換されたインスタンスは元に戻りません;置換されたインスタンスを元に戻すには、aws.autoscaling.rollbackInstanceRefreshを使用します。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

例

awsRoleArn

弦

オプション。

IAMロールARN。エグゼキューターは、AWSで認証を行うためにSTS経由でこのロールを引き受けます。静的認証情報よりも推奨されます。少なくとも1つの認証フィールドが必要です。

arn:aws:iam::123456789012:role/my-workflow-role

awsAccessKeyId

弦

オプション。

AWSアクセスキーID。シークレット参照として渡す必要があります。

${{ :secrets:awsAccessKeyId }}

awsSecretAccessKey

弦

オプション。

AWSシークレットアクセスキー。シークレット参照として渡す必要があります。

${{ :secrets:awsSecretAccessKey }}

awsSessionToken

弦

オプション。

一時的な認証情報のためのAWSセッショントークン。シークレット参照として渡す必要があります。

${{ :secrets:awsSessionToken }}

リージョン

弦

必須。

Auto Scalingグループが配置されているAWSリージョン。

"us-east-1"

autoScalingGroupName

弦

必須。

Auto Scalingグループの名前。

"my-asg"

selectors

リスト

オプション。

アクションの出力から特定のフィールドを抽出するためのJQセレクター。

[{"name": "instanceRefreshId", "expression": ".response.InstanceRefreshId"}]

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

キャンセルされた更新の

InstanceRefreshId

が含まれます。完全なレスポンス構文については、

cancel_instance_refresh — Boto3 documentation

を参照してください。

success

ブール値

true

アクションが成功した場合、それ以外の場合は

false

。

errorMessage

弦

アクションが失敗した場合のエラーメッセージ。成功した場合は

null

。

以下の例では、進行中のインスタンスリフレッシュをキャンセルします。

ワークフローの例

name: asg-cancel-refresh
workflowInputs:
arnRole:
type: String
steps:
- name: cancelRefresh
type: action
action: aws.autoscaling.cancelInstanceRefresh
version: '1'
inputs:
awsRoleArn: ${{ .workflowInputs.arnRole }}
region: us-east-1
autoScalingGroupName: my-asg
selectors:
- name: instanceRefreshId
expression: '.response.InstanceRefreshId'
next: end

インスタンスの更新をロールバックします

アクション識別子はaws.autoscaling.rollbackInstanceRefreshです。

進行中のインスタンスの更新をロールバックし、置き換えられたインスタンスを以前のリリーステンプレートまたは設定に戻します。ロールバックをサポートするには、グループでチェックポイントが有効になっている必要があります。ロールバックの対象となる更新がない場合、呼び出しはActiveInstanceRefreshNotFoundで失敗します。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

例

awsRoleArn

弦

オプション。

IAMロールARN。エグゼキューターは、AWSで認証を行うためにSTS経由でこのロールを引き受けます。静的認証情報よりも推奨されます。少なくとも1つの認証フィールドが必要です。

arn:aws:iam::123456789012:role/my-workflow-role

awsAccessKeyId

弦

オプション。

AWSアクセスキーID。シークレット参照として渡す必要があります。

${{ :secrets:awsAccessKeyId }}

awsSecretAccessKey

弦

オプション。

AWSシークレットアクセスキー。シークレット参照として渡す必要があります。

${{ :secrets:awsSecretAccessKey }}

awsSessionToken

弦

オプション。

一時的な認証情報のためのAWSセッショントークン。シークレット参照として渡す必要があります。

${{ :secrets:awsSessionToken }}

リージョン

弦

必須。

Auto Scalingグループが配置されているAWSリージョン。

"us-east-1"

autoScalingGroupName

弦

必須。

Auto Scalingグループの名前。

"my-asg"

selectors

リスト

オプション。

アクションの出力から特定のフィールドを抽出するためのJQセレクター。

[{"name": "instanceRefreshId", "expression": ".response.InstanceRefreshId"}]

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

ロールバックされたリフレッシュの

InstanceRefreshId

が含まれます。完全なレスポンス構文については、

rollback_instance_refresh — Boto3 documentation

を参照してください。

success

ブール値

true

アクションが成功した場合、それ以外の場合は

false

。

errorMessage

弦

アクションが失敗した場合のエラーメッセージ。成功した場合は

null

。

次の例では、進行中のインスタンスの更新をロールバックします。

ワークフローの例

name: asg-rollback-refresh
workflowInputs:
arnRole:
type: String
steps:
- name: rollbackRefresh
type: action
action: aws.autoscaling.rollbackInstanceRefresh
version: '1'
inputs:
awsRoleArn: ${{ .workflowInputs.arnRole }}
region: us-east-1
autoScalingGroupName: my-asg
selectors:
- name: instanceRefreshId
expression: '.response.InstanceRefreshId'
next: end

スケーリングプロセスを一時停止

アクション識別子はaws.autoscaling.suspendProcessesです。

Auto Scalingグループの1つ以上のスケーリングプロセスを一時停止します。不要なスケーリングアクティビティを防ぐため、デプロイメントやメンテナンスウィンドウ中に使用してください。scalingProcessesを省略すると、すべてのプロセスが一時停止されます。一時停止されたプロセスは、aws.autoscaling.resumeProcessesで明示的に再開されるまで一時停止されたままになります。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

例

awsRoleArn

弦

オプション。

IAMロールARN。エグゼキューターは、AWSで認証を行うためにSTS経由でこのロールを引き受けます。静的認証情報よりも推奨されます。少なくとも1つの認証フィールドが必要です。

arn:aws:iam::123456789012:role/my-workflow-role

awsAccessKeyId

弦

オプション。

AWSアクセスキーID。シークレット参照として渡す必要があります。

${{ :secrets:awsAccessKeyId }}

awsSecretAccessKey

弦

オプション。

AWSシークレットアクセスキー。シークレット参照として渡す必要があります。

${{ :secrets:awsSecretAccessKey }}

awsSessionToken

弦

オプション。

一時的な認証情報のためのAWSセッショントークン。シークレット参照として渡す必要があります。

${{ :secrets:awsSessionToken }}

リージョン

弦

必須。

Auto Scalingグループが配置されているAWSリージョン。

"us-east-1"

autoScalingGroupName

弦

必須。

Auto Scalingグループの名前。

"my-asg"

scalingProcesses

リスト

オプション。

中断するプロセス。すべてのプロセスを中断するには、省略します。有効な値:

Launch

、

Terminate

、

HealthCheck

、

ReplaceUnhealthy

、

AZRebalance

、

AlarmNotification

、

ScheduledActions

、

AddToLoadBalancer

、

InstanceRefresh

。

["Launch", "Terminate", "HealthCheck"]

selectors

リスト

オプション。

アクションの出力から特定のフィールドを抽出するためのJQセレクター。

[{"name": "success", "expression": ".success"}]

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

AWS APIレスポンスオブジェクトです。完全なレスポンス構文については、「

suspend_processes — Boto3 documentation

」を参照してください。

success

ブール値

true

アクションが成功した場合、それ以外の場合は

false

。

errorMessage

弦

アクションが失敗した場合のエラーメッセージ。成功した場合は

null

。

次の例では、デプロイメントの前にリリース、Terminate、およびHealthCheckプロセスを一時停止します。

ワークフローの例

name: asg-suspend-for-deploy
workflowInputs:
arnRole:
type: String
steps:
- name: suspendProcesses
type: action
action: aws.autoscaling.suspendProcesses
version: '1'
inputs:
awsRoleArn: ${{ .workflowInputs.arnRole }}
region: us-east-1
autoScalingGroupName: my-asg
scalingProcesses:
- Launch
- Terminate
- HealthCheck
next: end

スケーリングプロセスを再開する

アクション識別子はaws.autoscaling.resumeProcessesです。

一時停止された1つ以上のスケーリングプロセスを再開します。デプロイメントまたはメンテナンスウィンドウの後に使用して、通常のスケーリング動作を復元します。scalingProcessesを省略すると、一時停止されたすべてのプロセスが再開されます。現在一時停止されているプロセスがない場合、呼び出しは何も影響を与えずに成功します。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

例

awsRoleArn

弦

オプション。

IAMロールARN。エグゼキューターは、AWSで認証を行うためにSTS経由でこのロールを引き受けます。静的認証情報よりも推奨されます。少なくとも1つの認証フィールドが必要です。

arn:aws:iam::123456789012:role/my-workflow-role

awsAccessKeyId

弦

オプション。

AWSアクセスキーID。シークレット参照として渡す必要があります。

${{ :secrets:awsAccessKeyId }}

awsSecretAccessKey

弦

オプション。

AWSシークレットアクセスキー。シークレット参照として渡す必要があります。

${{ :secrets:awsSecretAccessKey }}

awsSessionToken

弦

オプション。

一時的な認証情報のためのAWSセッショントークン。シークレット参照として渡す必要があります。

${{ :secrets:awsSessionToken }}

リージョン

弦

必須。

Auto Scalingグループが配置されているAWSリージョン。

"us-east-1"

autoScalingGroupName

弦

必須。

Auto Scalingグループの名前。

"my-asg"

scalingProcesses

リスト

オプション。

再開するプロセス。すべての一時停止中のプロセスを再開するには、省略します。

["Launch", "Terminate", "HealthCheck"]

selectors

リスト

オプション。

アクションの出力から特定のフィールドを抽出するためのJQセレクター。

[{"name": "success", "expression": ".success"}]

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

AWS APIレスポンスオブジェクトです。完全なレスポンス構文については、

resume_processes — Boto3 documentation

を参照してください。

success

ブール値

true

アクションが成功した場合、それ以外の場合は

false

。

errorMessage

弦

アクションが失敗した場合のエラーメッセージ。成功した場合は

null

。

以下の例では、デプロイメント後にスケーリングプロセスを再開します。

ワークフローの例

name: asg-resume-after-deploy
workflowInputs:
arnRole:
type: String
steps:
- name: resumeProcesses
type: action
action: aws.autoscaling.resumeProcesses
version: '1'
inputs:
awsRoleArn: ${{ .workflowInputs.arnRole }}
region: us-east-1
autoScalingGroupName: my-asg
scalingProcesses:
- Launch
- Terminate
- HealthCheck
next: end

グループ内のインスタンスを終了

アクション識別子はaws.autoscaling.terminateInstanceInAutoScalingGroupです。

ライフサイクルフックを尊重しながら、Auto Scalingグループ内の特定のインスタンスを終了します。インスタンスを自動的に置換するにはshouldDecrementDesiredCapacityをfalseに設定し、グループを縮小するにはtrueに設定します。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

例

awsRoleArn

弦

オプション。

IAMロールARN。エグゼキューターは、AWSで認証を行うためにSTS経由でこのロールを引き受けます。静的認証情報よりも推奨されます。少なくとも1つの認証フィールドが必要です。

arn:aws:iam::123456789012:role/my-workflow-role

awsAccessKeyId

弦

オプション。

AWSアクセスキーID。シークレット参照として渡す必要があります。

${{ :secrets:awsAccessKeyId }}

awsSecretAccessKey

弦

オプション。

AWSシークレットアクセスキー。シークレット参照として渡す必要があります。

${{ :secrets:awsSecretAccessKey }}

awsSessionToken

弦

オプション。

一時的な認証情報のためのAWSセッショントークン。シークレット参照として渡す必要があります。

${{ :secrets:awsSessionToken }}

リージョン

弦

必須。

Auto Scalingグループが配置されているAWSリージョン。

"us-east-1"

instanceId

弦

必須。

終了するEC2インスタンスのID。

"i-0123456789abcdef0"

shouldDecrementDesiredCapacity

ブール値

必須。

true

の場合、希望する容量を1減らします。

false

の場合、代替インスタンスが自動的にリリースされます。

false

selectors

リスト

オプション。

アクションの出力から特定のフィールドを抽出するためのJQセレクター。

[{"name": "activityStatus", "expression": ".response.Activity.StatusCode"}]

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

ActivityId

、

StatusCode

、および

Progress

を含む

Activity

オブジェクトが含まれます。完全なレスポンス構文については、

terminate_instance_in_auto_scaling_group — Boto3 documentation

を参照してください。

success

ブール値

true

アクションが成功した場合、それ以外の場合は

false

。

errorMessage

弦

アクションが失敗した場合のエラーメッセージ。成功した場合は

null

。

次の例では、異常なインスタンスを終了し、代替をリリースします。

ワークフローの例

name: asg-terminate-unhealthy-instance
workflowInputs:
arnRole:
type: String
steps:
- name: terminateInstance
type: action
action: aws.autoscaling.terminateInstanceInAutoScalingGroup
version: '1'
inputs:
awsRoleArn: ${{ .workflowInputs.arnRole }}
region: us-east-1
instanceId: i-0123456789abcdef0
shouldDecrementDesiredCapacity: false
selectors:
- name: activityStatus
expression: '.response.Activity.StatusCode'
next: end

インスタンスをスタンバイに移動する

アクション識別子はaws.autoscaling.enterStandbyです。

1つ以上のインスタンスをスタンバイモードに移行し、終了させずにアクティブなローテーションから外します。特定のインスタンスでのメンテナンスに使用します。インスタンスをサービスに戻すには、aws.autoscaling.exitStandbyと組み合わせます。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

例

awsRoleArn

弦

オプション。

IAMロールARN。エグゼキューターは、AWSで認証を行うためにSTS経由でこのロールを引き受けます。静的認証情報よりも推奨されます。少なくとも1つの認証フィールドが必要です。

arn:aws:iam::123456789012:role/my-workflow-role

awsAccessKeyId

弦

オプション。

AWSアクセスキーID。シークレット参照として渡す必要があります。

${{ :secrets:awsAccessKeyId }}

awsSecretAccessKey

弦

オプション。

AWSシークレットアクセスキー。シークレット参照として渡す必要があります。

${{ :secrets:awsSecretAccessKey }}

awsSessionToken

弦

オプション。

一時的な認証情報のためのAWSセッショントークン。シークレット参照として渡す必要があります。

${{ :secrets:awsSessionToken }}

リージョン

弦

必須。

Auto Scalingグループが配置されているAWSリージョン。

"us-east-1"

autoScalingGroupName

弦

必須。

Auto Scalingグループの名前。

"my-asg"

instanceIds

リスト

オプション。

スタンバイに移動するインスタンスID。すべてのインスタンスを移動する場合は省略します。

["i-0123456789abcdef0"]

shouldDecrementDesiredCapacity

ブール値

必須。

true

の場合、スタンバイ状態になるインスタンスの数だけ希望する容量を減らします。

true

selectors

リスト

オプション。

アクションの出力から特定のフィールドを抽出するためのJQセレクター。

[{"name": "activities", "expression": ".response.Activities"}]

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

各インスタンスのスタンバイへの移行を記述する

Activities

配列が含まれます。完全なレスポンス構文については、

enter_standby — Boto3 ドキュメント

を参照してください。

success

ブール値

true

アクションが成功した場合、それ以外の場合は

false

。

errorMessage

弦

アクションが失敗した場合のエラーメッセージ。成功した場合は

null

。

次の例では、メンテナンスのためにインスタンスをスタンバイ状態に移行します。

ワークフローの例

name: asg-enter-standby
workflowInputs:
arnRole:
type: String
steps:
- name: enterStandby
type: action
action: aws.autoscaling.enterStandby
version: '1'
inputs:
awsRoleArn: ${{ .workflowInputs.arnRole }}
region: us-east-1
autoScalingGroupName: my-asg
instanceIds:
- i-0123456789abcdef0
shouldDecrementDesiredCapacity: true
next: end

スタンバイを終了

アクション識別子はaws.autoscaling.exitStandbyです。

1つ以上のインスタンスをスタンバイモードからアクティブなローテーションに戻します。メンテナンスが完了したら、aws.autoscaling.enterStandbyと組み合わせます。instanceIdsを省略した場合、すべてのスタンバイインスタンスがサービスに戻されます。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

例

awsRoleArn

弦

オプション。

IAMロールARN。エグゼキューターは、AWSで認証を行うためにSTS経由でこのロールを引き受けます。静的認証情報よりも推奨されます。少なくとも1つの認証フィールドが必要です。

arn:aws:iam::123456789012:role/my-workflow-role

awsAccessKeyId

弦

オプション。

AWSアクセスキーID。シークレット参照として渡す必要があります。

${{ :secrets:awsAccessKeyId }}

awsSecretAccessKey

弦

オプション。

AWSシークレットアクセスキー。シークレット参照として渡す必要があります。

${{ :secrets:awsSecretAccessKey }}

awsSessionToken

弦

オプション。

一時的な認証情報のためのAWSセッショントークン。シークレット参照として渡す必要があります。

${{ :secrets:awsSessionToken }}

リージョン

弦

必須。

Auto Scalingグループが配置されているAWSリージョン。

"us-east-1"

autoScalingGroupName

弦

必須。

Auto Scalingグループの名前。

"my-asg"

instanceIds

リスト

オプション。

アクティブなローテーションに戻すインスタンスID。すべてのスタンバイインスタンスを終了するには省略します。

["i-0123456789abcdef0"]

selectors

リスト

オプション。

アクションの出力から特定のフィールドを抽出するためのJQセレクター。

[{"name": "activities", "expression": ".response.Activities"}]

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

各インスタンスのサービスへの復帰を記述する

Activities

配列が含まれます。完全なレスポンス構文については、

exit_standby — Boto3 documentation

を参照してください。

success

ブール値

true

アクションが成功した場合、それ以外の場合は

false

。

errorMessage

弦

アクションが失敗した場合のエラーメッセージ。成功した場合は

null

。

次の例では、メンテナンス後にインスタンスをスタンバイから復帰させます。

ワークフローの例

name: asg-exit-standby
workflowInputs:
arnRole:
type: String
steps:
- name: exitStandby
type: action
action: aws.autoscaling.exitStandby
version: '1'
inputs:
awsRoleArn: ${{ .workflowInputs.arnRole }}
region: us-east-1
autoScalingGroupName: my-asg
instanceIds:
- i-0123456789abcdef0
next: end

スケジュールされたアクションを作成または更新する

アクション識別子はaws.autoscaling.putScheduledUpdateGroupActionです。

Auto Scalingグループのスケジュールされたスケーリングアクションを作成または更新します。cronベースのスケジュールにはrecurrenceを使用し、1回限りの変更にはstartTimeを使用します。アクションを削除するにはaws.autoscaling.deleteScheduledActionと組み合わせます。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

例

awsRoleArn

弦

オプション。

IAMロールARN。エグゼキューターは、AWSで認証を行うためにSTS経由でこのロールを引き受けます。静的認証情報よりも推奨されます。少なくとも1つの認証フィールドが必要です。

arn:aws:iam::123456789012:role/my-workflow-role

awsAccessKeyId

弦

オプション。

AWSアクセスキーID。シークレット参照として渡す必要があります。

${{ :secrets:awsAccessKeyId }}

awsSecretAccessKey

弦

オプション。

AWSシークレットアクセスキー。シークレット参照として渡す必要があります。

${{ :secrets:awsSecretAccessKey }}

awsSessionToken

弦

オプション。

一時的な認証情報のためのAWSセッショントークン。シークレット参照として渡す必要があります。

${{ :secrets:awsSessionToken }}

リージョン

弦

必須。

Auto Scalingグループが配置されているAWSリージョン。

"us-east-1"

autoScalingGroupName

弦

必須。

Auto Scalingグループの名前。

"my-asg"

scheduledActionName

弦

必須。

作成または更新するスケジュールされたアクションの名前。

"scale-down-nights"

開始時間

弦

オプション。

アクションが有効になる日時のISO 8601 UTCタイムスタンプ。

"2024-06-01T20:00:00Z"

エンドタイム

弦

オプション。

定期的なアクションが停止する日時のISO 8601 UTCタイムスタンプ。

"2024-12-31T23:59:59Z"

繰り返し

弦

オプション。

定期的なスケジュールのためのCron式。

"0 20 * * *"

timeZone

弦

オプション。

繰り返しのcron式用のIANAタイムゾーン。

"America/New_York"

最小サイズ

Int

オプション。

スケジュールされた時間に適用する最小グループサイズ。

1

最大サイズ

Int

オプション。

スケジュールされた時間に適用する最大グループサイズ。

10

希望する容量

Int

オプション。

スケジュールされた時間に適用する希望する容量。

2

selectors

リスト

オプション。

アクションの出力から特定のフィールドを抽出するためのJQセレクター。

[{"name": "success", "expression": ".success"}]

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

AWS APIレスポンスオブジェクトです。完全なレスポンス構文については、

put_scheduled_update_group_action — Boto3 documentation

をご覧ください。

success

ブール値

true

アクションが成功した場合、それ以外の場合は

false

。

errorMessage

弦

アクションが失敗した場合のエラーメッセージ。成功した場合は

null

。

以下の例では、夜間のスケールダウンアクションを作成します。

ワークフローの例

name: asg-create-scheduled-action
workflowInputs:
arnRole:
type: String
steps:
- name: putScheduledAction
type: action
action: aws.autoscaling.putScheduledUpdateGroupAction
version: '1'
inputs:
awsRoleArn: ${{ .workflowInputs.arnRole }}
region: us-east-1
autoScalingGroupName: my-asg
scheduledActionName: scale-down-nights
recurrence: "0 20 * * *"
timeZone: America/New_York
desiredCapacity: 2
minSize: 1
next: end

スケジュールされたアクションを削除する

アクション識別子はaws.autoscaling.deleteScheduledActionです。

Auto Scalingグループからスケジュールされたスケーリングアクションを削除します。1回の呼び出しにつき1つのアクションのみを削除できます。アクション名が存在しない場合、呼び出しはValidationErrorで失敗します。アクションを削除しても、すでに進行中のスケーリングアクティビティには影響しません。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

例

awsRoleArn

弦

オプション。

IAMロールARN。エグゼキューターは、AWSで認証を行うためにSTS経由でこのロールを引き受けます。静的認証情報よりも推奨されます。少なくとも1つの認証フィールドが必要です。

arn:aws:iam::123456789012:role/my-workflow-role

awsAccessKeyId

弦

オプション。

AWSアクセスキーID。シークレット参照として渡す必要があります。

${{ :secrets:awsAccessKeyId }}

awsSecretAccessKey

弦

オプション。

AWSシークレットアクセスキー。シークレット参照として渡す必要があります。

${{ :secrets:awsSecretAccessKey }}

awsSessionToken

弦

オプション。

一時的な認証情報のためのAWSセッショントークン。シークレット参照として渡す必要があります。

${{ :secrets:awsSessionToken }}

リージョン

弦

必須。

Auto Scalingグループが配置されているAWSリージョン。

"us-east-1"

autoScalingGroupName

弦

必須。

Auto Scalingグループの名前。

"my-asg"

scheduledActionName

弦

必須。

削除するスケジュールされたアクションの名前。

"scale-down-nights"

selectors

リスト

オプション。

アクションの出力から特定のフィールドを抽出するためのJQセレクター。

[{"name": "success", "expression": ".success"}]

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

AWS APIレスポンスオブジェクトです。完全なレスポンス構文については、

delete_scheduled_action — Boto3 documentation

を参照してください。

success

ブール値

true

アクションが成功した場合、それ以外の場合は

false

。

errorMessage

弦

アクションが失敗した場合のエラーメッセージ。成功した場合は

null

。

以下の例では、スケジュールされたスケーリングアクションを削除します。

ワークフローの例

name: asg-delete-scheduled-action
workflowInputs:
arnRole:
type: String
steps:
- name: deleteScheduledAction
type: action
action: aws.autoscaling.deleteScheduledAction
version: '1'
inputs:
awsRoleArn: ${{ .workflowInputs.arnRole }}
region: us-east-1
autoScalingGroupName: my-asg
scheduledActionName: scale-down-nights
next: end

Auto Scalingグループの更新

アクション識別子はaws.autoscaling.updateAutoScalingGroupです。

既存のAuto Scalingグループの設定を更新します — 最小/最大サイズ、希望する容量、ヘルスチェック設定、リリーステンプレートなど。以下にリストされていないboto3 update_auto_scaling_group APIからの追加フィールドを渡すには、parametersマップを使用します。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

例

awsRoleArn

弦

オプション。

IAMロールARN。エグゼキューターは、AWSで認証を行うためにSTS経由でこのロールを引き受けます。静的認証情報よりも推奨されます。少なくとも1つの認証フィールドが必要です。

arn:aws:iam::123456789012:role/my-workflow-role

awsAccessKeyId

弦

オプション。

AWSアクセスキーID。シークレット参照として渡す必要があります。

${{ :secrets:awsAccessKeyId }}

awsSecretAccessKey

弦

オプション。

AWSシークレットアクセスキー。シークレット参照として渡す必要があります。

${{ :secrets:awsSecretAccessKey }}

awsSessionToken

弦

オプション。

一時的な認証情報のためのAWSセッショントークン。シークレット参照として渡す必要があります。

${{ :secrets:awsSessionToken }}

リージョン

弦

必須。

Auto Scalingグループが配置されているAWSリージョン。

"us-east-1"

autoScalingGroupName

弦

必須。

更新するAuto Scalingグループの名前。

"my-asg"

最小サイズ

Int

オプション。

新しい最小グループサイズ。

1

最大サイズ

Int

オプション。

新しい最大グループサイズ。

10

希望する容量

Int

オプション。

新しい希望するインスタンス数。

3

defaultCooldown

Int

オプション。

秒単位のデフォルトのクールダウン期間。

300

ヘルスチェックタイプ

弦

オプション。

ヘルスチェックタイプ。許可される値:

EC2

、

ELB

。

"ELB"

healthCheckGracePeriod

Int

オプション。

インスタンスのリリース後、ヘルスチェックが開始されるまでの秒数です。

300

パラメーター

地図

オプション。

上記にリストされていない追加のboto3

update_auto_scaling_group

フィールド。

{"LaunchTemplate": {"LaunchTemplateId": "lt-0123456789abcdef0", "Version": "$Latest"}, "TerminationPolicies": ["OldestInstance"]}

selectors

リスト

オプション。

アクションの出力から特定のフィールドを抽出するためのJQセレクター。

[{"name": "success", "expression": ".success"}]

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

AWS APIレスポンスオブジェクトです。完全なレスポンス構文については、

update_auto_scaling_group — Boto3 documentation

をご覧ください。

success

ブール値

true

アクションが成功した場合、それ以外の場合は

false

。

errorMessage

弦

アクションが失敗した場合のエラーメッセージ。成功した場合は

null

。

次の例では、最小/最大境界、ヘルスチェックタイプ、およびリリーステンプレートを更新します。

ワークフローの例

name: asg-update-group
workflowInputs:
arnRole:
type: String
steps:
- name: updateAutoScalingGroup
type: action
action: aws.autoscaling.updateAutoScalingGroup
version: '1'
inputs:
awsRoleArn: ${{ .workflowInputs.arnRole }}
region: us-east-1
autoScalingGroupName: my-asg
minSize: 2
maxSize: 20
desiredCapacity: 5
healthCheckType: ELB
healthCheckGracePeriod: 300
parameters:
LaunchTemplate:
LaunchTemplateId: lt-0123456789abcdef0
Version: $Latest
TerminationPolicies:
- OldestInstance
next: end

Auto Scalingグループを記述する

アクション識別子はaws.autoscaling.describeAutoScalingGroupsです。

1つ以上のAuto Scalingグループを記述し、設定とインスタンスの状態を返します。autoScalingGroupNamesを省略した場合、リージョン内のすべてのグループが返されます。大規模な結果セットをページネーションするには、maxRecordsとnextTokenを使用します。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

例

awsRoleArn

弦

オプション。

IAMロールARN。エグゼキューターは、AWSで認証を行うためにSTS経由でこのロールを引き受けます。静的認証情報よりも推奨されます。少なくとも1つの認証フィールドが必要です。

arn:aws:iam::123456789012:role/my-workflow-role

awsAccessKeyId

弦

オプション。

AWSアクセスキーID。シークレット参照として渡す必要があります。

${{ :secrets:awsAccessKeyId }}

awsSecretAccessKey

弦

オプション。

AWSシークレットアクセスキー。シークレット参照として渡す必要があります。

${{ :secrets:awsSecretAccessKey }}

awsSessionToken

弦

オプション。

一時的な認証情報のためのAWSセッショントークン。シークレット参照として渡す必要があります。

${{ :secrets:awsSessionToken }}

リージョン

弦

必須。

Auto Scalingグループが配置されているAWSリージョン。

"us-east-1"

autoScalingGroupNames

リスト

オプション。

記述するグループの名前。リージョン内のすべてのグループを返すには、省略します。

["my-asg", "my-other-asg"]

maxRecords

Int

オプション。

返すグループの最大数です。最大100。

10

nextToken

弦

オプション。

以前のレスポンスからのページネーショントークンです。

"abcdefgh"

selectors

リスト

オプション。

アクションの出力から特定のフィールドを抽出するためのJQセレクター。

[{"name": "desiredCapacity", "expression": ".response.AutoScalingGroups[0].DesiredCapacity"}]

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

各グループの設定とインスタンスの状態を含む

AutoScalingGroups

配列が含まれています。完全なレスポンス構文については、

describe_auto_scaling_groups — Boto3 documentation

をご覧ください。

success

ブール値

true

アクションが成功した場合、それ以外の場合は

false

。

errorMessage

弦

アクションが失敗した場合のエラーメッセージ。成功した場合は

null

。

次の例では、グループの希望する容量、最小値、最大値、およびインスタンス数を取得します。

ワークフローの例

name: asg-describe-group
workflowInputs:
arnRole:
type: String
steps:
- name: describeGroups
type: action
action: aws.autoscaling.describeAutoScalingGroups
version: '1'
inputs:
awsRoleArn: ${{ .workflowInputs.arnRole }}
region: us-east-1
autoScalingGroupNames:
- my-asg
selectors:
- name: desiredCapacity
expression: '.response.AutoScalingGroups[0].DesiredCapacity'
- name: minSize
expression: '.response.AutoScalingGroups[0].MinSize'
- name: maxSize
expression: '.response.AutoScalingGroups[0].MaxSize'
- name: instanceCount
expression: '.response.AutoScalingGroups[0].Instances | length'
next: end

インスタンスリフレッシュの記述

アクション識別子はaws.autoscaling.describeInstanceRefreshesです。

Auto Scalingグループの1つ以上のインスタンス更新のステータスを記述します。aws.autoscaling.startInstanceRefreshによって開始された更新をポーリングするために使用します。instanceRefreshIdsを省略した場合、グループのすべての更新が新しい順に返されます。完了、キャンセル、および失敗した更新は履歴に保持されます。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

例

awsRoleArn

弦

オプション。

IAMロールARN。エグゼキューターは、AWSで認証を行うためにSTS経由でこのロールを引き受けます。静的認証情報よりも推奨されます。少なくとも1つの認証フィールドが必要です。

arn:aws:iam::123456789012:role/my-workflow-role

awsAccessKeyId

弦

オプション。

AWSアクセスキーID。シークレット参照として渡す必要があります。

${{ :secrets:awsAccessKeyId }}

awsSecretAccessKey

弦

オプション。

AWSシークレットアクセスキー。シークレット参照として渡す必要があります。

${{ :secrets:awsSecretAccessKey }}

awsSessionToken

弦

オプション。

一時的な認証情報のためのAWSセッショントークン。シークレット参照として渡す必要があります。

${{ :secrets:awsSessionToken }}

リージョン

弦

必須。

Auto Scalingグループが配置されているAWSリージョン。

"us-east-1"

autoScalingGroupName

弦

必須。

Auto Scalingグループの名前。

"my-asg"

instanceRefreshIds

リスト

オプション。

記述する特定の更新のID。グループのすべての更新を取得するには、省略します。

["08b91cf7-8fa6-48af-b6a6-d227f40f1b9b"]

maxRecords

Int

オプション。

返すリフレッシュの最大数。デフォルトは50、最大は100です。

10

nextToken

弦

オプション。

以前のレスポンスからのページネーショントークンです。

"abcdefgh"

selectors

リスト

オプション。

アクションの出力から特定のフィールドを抽出するためのJQセレクター。

[{"name": "status", "expression": ".response.InstanceRefreshes[0].Status"}]

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

Status

、

PercentageComplete

、およびその他の更新の詳細を含む

InstanceRefreshes

配列が含まれます。完全なレスポンス構文については、「

describe_instance_refreshes — Boto3 documentation

」を参照してください。

success

ブール値

true

アクションが成功した場合、それ以外の場合は

false

。

errorMessage

弦

アクションが失敗した場合のエラーメッセージ。成功した場合は

null

。

次の例では、前のステップで開始された更新のステータスをポーリングします。

ワークフローの例

name: asg-poll-refresh
workflowInputs:
arnRole:
type: String
steps:
- name: describeRefresh
type: action
action: aws.autoscaling.describeInstanceRefreshes
version: '1'
inputs:
awsRoleArn: ${{ .workflowInputs.arnRole }}
region: us-east-1
autoScalingGroupName: my-asg
instanceRefreshIds:
- ${{ .steps.startRefresh.outputs.instanceRefreshId }}
selectors:
- name: refreshStatus
expression: '.response.InstanceRefreshes[0].Status'
- name: percentComplete
expression: '.response.InstanceRefreshes[0].PercentageComplete'
next: end

スケーリングアクティビティを記述する

アクション識別子はaws.autoscaling.describeScalingActivitiesです。

進行中および最近完了したイベントを含む、Auto Scalingグループのスケーリング・アクティビティを記述します。activityIdsを省略すると、グループのすべてのアクティビティが最新のものから順に返されます。アクティビティには、成功および失敗したスケールインおよびスケールアウト・イベントの両方が含まれます。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

例

awsRoleArn

弦

オプション。

IAMロールARN。エグゼキューターは、AWSで認証を行うためにSTS経由でこのロールを引き受けます。静的認証情報よりも推奨されます。少なくとも1つの認証フィールドが必要です。

arn:aws:iam::123456789012:role/my-workflow-role

awsAccessKeyId

弦

オプション。

AWSアクセスキーID。シークレット参照として渡す必要があります。

${{ :secrets:awsAccessKeyId }}

awsSecretAccessKey

弦

オプション。

AWSシークレットアクセスキー。シークレット参照として渡す必要があります。

${{ :secrets:awsSecretAccessKey }}

awsSessionToken

弦

オプション。

一時的な認証情報のためのAWSセッショントークン。シークレット参照として渡す必要があります。

${{ :secrets:awsSessionToken }}

リージョン

弦

必須。

Auto Scalingグループが配置されているAWSリージョン。

"us-east-1"

autoScalingGroupName

弦

オプション。

クエリするグループの名前。すべてのグループのアクティビティを返すには、省略します。

"my-asg"

activityIds

リスト

オプション。

返す特定のアクティビティのID。

["3b05db05-2f6e-4e86-af95-29f1f4c2a2b7"]

includeDeletedGroups

ブール値

オプション。

true

の場合、削除されたグループのアクティビティが含まれます。

false

maxRecords

Int

オプション。

返すアクティビティの最大数。最大100。

10

nextToken

弦

オプション。

以前のレスポンスからのページネーショントークンです。

"abcdefgh"

selectors

リスト

オプション。

アクションの出力から特定のフィールドを抽出するためのJQセレクター。

[{"name": "latestStatus", "expression": ".response.Activities[0].StatusCode"}]

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

ActivityId

、

StatusCode

、

Cause

、およびタイミングフィールドを含む

Activities

配列が含まれています。完全なレスポンス構文については、

describe_scaling_activities — Boto3 documentation

をご覧ください。

success

ブール値

true

アクションが成功した場合、それ以外の場合は

false

。

errorMessage

弦

アクションが失敗した場合のエラーメッセージ。成功した場合は

null

。

次の例では、最新の5つのスケーリングアクティビティを取得します。

ワークフローの例

name: asg-check-activities
workflowInputs:
arnRole:
type: String
steps:
- name: describeActivities
type: action
action: aws.autoscaling.describeScalingActivities
version: '1'
inputs:
awsRoleArn: ${{ .workflowInputs.arnRole }}
region: us-east-1
autoScalingGroupName: my-asg
maxRecords: 5
selectors:
- name: latestActivity
expression: '.response.Activities[0].StatusCode'
next: end

スケジュールされたアクションの記述

アクション識別子はaws.autoscaling.describeScheduledActionsです。

Auto Scalingグループのスケジュールされたスケーリングアクションを記述します。scheduledActionNamesを省略すると、グループのすべてのアクションが返されます。startTimeとendTimeでフィルタリングして、結果を時間枠に絞り込みます — scheduledActionNamesが指定されている場合、これらのフィルターは無視されます。

次の表は、このアクションで利用可能なすべての入力フィールドについて説明しています。

入力

タイプ

説明

例

awsRoleArn

弦

オプション。

IAMロールARN。エグゼキューターは、AWSで認証を行うためにSTS経由でこのロールを引き受けます。静的認証情報よりも推奨されます。少なくとも1つの認証フィールドが必要です。

arn:aws:iam::123456789012:role/my-workflow-role

awsAccessKeyId

弦

オプション。

AWSアクセスキーID。シークレット参照として渡す必要があります。

${{ :secrets:awsAccessKeyId }}

awsSecretAccessKey

弦

オプション。

AWSシークレットアクセスキー。シークレット参照として渡す必要があります。

${{ :secrets:awsSecretAccessKey }}

awsSessionToken

弦

オプション。

一時的な認証情報のためのAWSセッショントークン。シークレット参照として渡す必要があります。

${{ :secrets:awsSessionToken }}

リージョン

弦

必須。

Auto Scalingグループが配置されているAWSリージョン。

"us-east-1"

autoScalingGroupName

弦

オプション。

クエリするグループの名前。省略すると、すべてのグループのアクションがリストされます。

"my-asg"

scheduledActionNames

リスト

オプション。

返す特定のアクションの名前。不明な名前は暗黙的に無視されます。

["scale-down-nights", "scale-up-mornings"]

開始時間

弦

オプション。

結果をフィルタリングするためのISO 8601 UTCタイムスタンプの下限。

"2024-01-01T00:00:00Z"

エンドタイム

弦

オプション。

結果をフィルタリングするためのISO 8601 UTCタイムスタンプの上限。

"2024-12-31T23:59:59Z"

maxRecords

Int

オプション。

返すアクションの最大数。最大100。

10

nextToken

弦

オプション。

以前のレスポンスからのページネーショントークンです。

"abcdefgh"

selectors

リスト

オプション。

アクションの出力から特定のフィールドを抽出するためのJQセレクター。

[{"name": "scheduledActions", "expression": ".response.ScheduledUpdateGroupActions"}]

次の表は、このアクションによって返されるすべての出力フィールドについて説明しています。

出力

タイプ

説明

response

オブジェクト

各アクションのname、recurrence、timezone、およびcapacityフィールドを含む

ScheduledUpdateGroupActions

配列が含まれます。完全なレスポンス構文については、

describe_scheduled_actions — Boto3 documentation

を参照してください。

success

ブール値

true

アクションが成功した場合、それ以外の場合は

false

。

errorMessage

弦

アクションが失敗した場合のエラーメッセージ。成功した場合は

null

。

次の例では、グループのすべてのスケジュールされたアクションをリストします。

ワークフローの例

name: asg-list-scheduled-actions
workflowInputs:
arnRole:
type: String
steps:
- name: describeScheduledActions
type: action
action: aws.autoscaling.describeScheduledActions
version: '1'
inputs:
awsRoleArn: ${{ .workflowInputs.arnRole }}
region: us-east-1
autoScalingGroupName: my-asg
selectors:
- name: scheduledActions
expression: '.response.ScheduledUpdateGroupActions'
next: end
Copyright © 2026 New Relic株式会社。

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.