Doc AWS SDK ExamplesWord リポジトリには、さらに多くの GitHub の例があります。 AWS SDK
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS SDK または CLI UpdateAutoScalingGroup
で使用する
以下のコード例は、UpdateAutoScalingGroup
の使用方法を示しています。
アクション例は、より大きなプログラムからのコードの抜粋であり、コンテキスト内で実行する必要があります。次のコード例で、このアクションのコンテキストを確認できます。
- .NET
-
- AWS SDK for .NET
-
注記
GitHub には他にもあります。用例一覧を検索し、AWS コード例リポジトリ
での設定と実行の方法を確認してください。 /// <summary> /// Update the capacity of an Auto Scaling group. /// </summary> /// <param name="groupName">The name of the Auto Scaling group.</param> /// <param name="launchTemplateName">The name of the EC2 launch template.</param> /// <param name="maxSize">The maximum number of instances that can be /// created for the Auto Scaling group.</param> /// <returns>A Boolean value indicating the success of the action.</returns> public async Task<bool> UpdateAutoScalingGroupAsync( string groupName, string launchTemplateName, int maxSize) { var templateSpecification = new LaunchTemplateSpecification { LaunchTemplateName = launchTemplateName, }; var groupRequest = new UpdateAutoScalingGroupRequest { MaxSize = maxSize, AutoScalingGroupName = groupName, LaunchTemplate = templateSpecification, }; var response = await _amazonAutoScaling.UpdateAutoScalingGroupAsync(groupRequest); if (response.HttpStatusCode == System.Net.HttpStatusCode.OK) { Console.WriteLine($"You successfully updated the Auto Scaling group {groupName}."); return true; } else { return false; } }
-
API の詳細については、UpdateAutoScalingGroup AWS SDK for .NET リファレンスの API を参照してください。
-
- C++
-
- C++ のSDK
-
注記
GitHub には他にもあります。用例一覧を検索し、AWS コード例リポジトリ
での設定と実行の方法を確認してください。 Aws::Client::ClientConfiguration clientConfig; // Optional: Set to the AWS Region (overrides config file). // clientConfig.region = "us-east-1"; Aws::AutoScaling::AutoScalingClient autoScalingClient(clientConfig); Aws::AutoScaling::Model::UpdateAutoScalingGroupRequest request; request.SetAutoScalingGroupName(groupName); request.SetMaxSize(3); Aws::AutoScaling::Model::UpdateAutoScalingGroupOutcome outcome = autoScalingClient.UpdateAutoScalingGroup(request); if (!outcome.IsSuccess()) { std::cerr << "Error with AutoScaling::UpdateAutoScalingGroup. " << outcome.GetError().GetMessage() << std::endl; }
-
API の詳細については、UpdateAutoScalingGroup AWS SDK for C++ リファレンスの API を参照してください。
-
- CLI
-
- AWS CLI
-
例 1: Auto Scaling グループのサイズ制限を更新するには
この例では、最小サイズが 2、最大サイズが 10 で、指定された Auto Scaling グループを更新します。
aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name
my-asg
\ --min-size2
\ --max-size10
このコマンドでは何も出力されません。
詳細については、Amazon Word Auto Scaling ユーザーガイドの「Auto Scaling グループの容量制限の設定」を参照してください。 EC2 Auto Scaling
例 2: Elastic Load Balancing ヘルスチェックを追加し、使用するアベイラビリティーゾーンとサブネットを指定するには
この例では、指定された Auto Scaling グループを更新して、Elastic Load Balancing のヘルスチェックを追加します。このコマンドは、複数のアベイラビリティーゾーンのサブネット IDs のリスト
--vpc-zone-identifier
を使用して、 の値も更新します。aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name
my-asg
\ --health-check-typeELB
\ --health-check-grace-period600
\ --vpc-zone-identifier"subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782"
このコマンドでは何も出力されません。
詳細については、Amazon EC2 Auto Scaling ユーザーガイドのElastic Load Balancing」と「Amazon Word Auto Scaling」を参照してください。 EC2 Auto Scaling
例 3: プレイスメントグループと終了ポリシーを更新するには
この例では、プレイスメントグループと終了ポリシーを更新します。
aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name
my-asg
\ --placement-groupmy-placement-group
\ --termination-policies"OldestInstance"
このコマンドでは何も出力されません。
詳細については、Amazon Word Auto Scaling ユーザーガイドの「Auto Scaling グループ」を参照してください。 EC2 Auto Scaling
例 4: 起動テンプレートの最新バージョンを使用するには
この例では、最新の起動テンプレートバージョンを使用するように、指定された Auto Scaling グループを更新します。
aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name
my-asg
\ --launch-template LaunchTemplateId=lt-1234567890abcde12,Version='$Latest'このコマンドでは何も出力されません。
詳細については、Amazon EC2 Auto Scaling ユーザーガイドの「テンプレートを起動する」を参照してください。
例 5: 特定のバージョンの起動テンプレートを使用するには
この例では、最新バージョンやデフォルトバージョンではなく、指定された起動テンプレートのバージョンを使用するように、指定された Auto Scaling グループを更新します。
aws autoscaling update-auto-scaling-group \ --auto-scaling-group-name
my-asg
\ --launch-template LaunchTemplateName=my-template-for-auto-scaling,Version='2'このコマンドでは何も出力されません。
詳細については、Amazon EC2 Auto Scaling ユーザーガイドの「テンプレートを起動する」を参照してください。
例 6: 混合インスタンスポリシーを定義し、容量のリバランスを有効にするには
この例では、指定された Auto Scaling グループを更新して、混合インスタンスポリシーを使用し、容量のリバランスを有効にします。この構造により、スポット容量とオンデマンド容量でグループを指定し、アーキテクチャごとに異なる起動テンプレートを使用できます。
aws autoscaling update-auto-scaling-group \ --cli-input-json
file://~/config.json
config.json
の内容:{ "AutoScalingGroupName": "my-asg", "CapacityRebalance": true, "MixedInstancesPolicy": { "LaunchTemplate": { "LaunchTemplateSpecification": { "LaunchTemplateName": "my-launch-template-for-x86", "Version": "$Latest" }, "Overrides": [ { "InstanceType": "c6g.large", "LaunchTemplateSpecification": { "LaunchTemplateName": "my-launch-template-for-arm", "Version": "$Latest" } }, { "InstanceType": "c5.large" }, { "InstanceType": "c5a.large" } ] }, "InstancesDistribution": { "OnDemandPercentageAboveBaseCapacity": 50, "SpotAllocationStrategy": "capacity-optimized" } } }
このコマンドでは何も出力されません。
詳細については、Amazon Word Auto Scaling ユーザーガイドの「複数のインスタンスタイプを持つ Auto Scaling グループと購入オプション」を参照してください。 EC2 Auto Scaling
-
API の詳細については、AWS CLI 「 コマンドリファレンス」のUpdateAutoScalingGroup
」を参照してください。
-
- Java
-
- Java 2.x のSDK
-
注記
GitHub には他にもあります。用例一覧を検索し、AWS コード例リポジトリ
での設定と実行の方法を確認してください。 public static void updateAutoScalingGroup(AutoScalingClient autoScalingClient, String groupName, String launchTemplateName) { try { AutoScalingWaiter waiter = autoScalingClient.waiter(); LaunchTemplateSpecification templateSpecification = LaunchTemplateSpecification.builder() .launchTemplateName(launchTemplateName) .build(); UpdateAutoScalingGroupRequest groupRequest = UpdateAutoScalingGroupRequest.builder() .maxSize(3) .autoScalingGroupName(groupName) .launchTemplate(templateSpecification) .build(); autoScalingClient.updateAutoScalingGroup(groupRequest); DescribeAutoScalingGroupsRequest groupsRequest = DescribeAutoScalingGroupsRequest.builder() .autoScalingGroupNames(groupName) .build(); WaiterResponse<DescribeAutoScalingGroupsResponse> waiterResponse = waiter .waitUntilGroupInService(groupsRequest); waiterResponse.matched().response().ifPresent(System.out::println); System.out.println("You successfully updated the auto scaling group " + groupName); } catch (AutoScalingException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } }
-
API の詳細については、UpdateAutoScalingGroup AWS SDK for Java 2.x リファレンスの API を参照してください。
-
- Kotlin
-
- Kotlin のSDK
-
注記
GitHub には他にもあります。用例一覧を検索し、AWS コード例リポジトリ
での設定と実行の方法を確認してください。 suspend fun updateAutoScalingGroup( groupName: String, launchTemplateNameVal: String, serviceLinkedRoleARNVal: String, ) { val templateSpecification = LaunchTemplateSpecification { launchTemplateName = launchTemplateNameVal } val groupRequest = UpdateAutoScalingGroupRequest { maxSize = 3 serviceLinkedRoleArn = serviceLinkedRoleARNVal autoScalingGroupName = groupName launchTemplate = templateSpecification } val groupsRequestWaiter = DescribeAutoScalingGroupsRequest { autoScalingGroupNames = listOf(groupName) } AutoScalingClient { region = "us-east-1" }.use { autoScalingClient -> autoScalingClient.updateAutoScalingGroup(groupRequest) autoScalingClient.waitUntilGroupExists(groupsRequestWaiter) println("You successfully updated the Auto Scaling group $groupName") } }
-
API の詳細については、「Word for Kotlin UpdateAutoScalingGroup
リファレンス」を参照してください。 AWS SDK API
-
- PHP
-
- PHP に関する SDK
-
注記
GitHub には他にもあります。用例一覧を検索し、AWS コード例リポジトリ
での設定と実行の方法を確認してください。 public function updateAutoScalingGroup($autoScalingGroupName, $args) { if (array_key_exists('MaxSize', $args)) { $maxSize = ['MaxSize' => $args['MaxSize']]; } else { $maxSize = []; } if (array_key_exists('MinSize', $args)) { $minSize = ['MinSize' => $args['MinSize']]; } else { $minSize = []; } $parameters = ['AutoScalingGroupName' => $autoScalingGroupName]; $parameters = array_merge($parameters, $minSize, $maxSize); return $this->autoScalingClient->updateAutoScalingGroup($parameters); }
-
API の詳細については、UpdateAutoScalingGroup AWS SDK for PHP リファレンスの API を参照してください。
-
- PowerShell
-
- ツール for PowerShell
-
例 1: この例では、指定した Auto Scaling グループの最小サイズと最大サイズを更新します。
Update-ASAutoScalingGroup -AutoScalingGroupName my-asg -MaxSize 5 -MinSize 1
例 2: この例では、指定した Auto Scaling グループのデフォルトのクールダウン期間を更新します。
Update-ASAutoScalingGroup -AutoScalingGroupName my-asg -DefaultCooldown 10
例 3: この例では、指定した Auto Scaling グループのアベイラビリティーゾーンを更新します。
Update-ASAutoScalingGroup -AutoScalingGroupName my-asg -AvailabilityZone @("us-west-2a", "us-west-2b")
例 4: この例では、指定した Auto Scaling グループを更新して、Elastic Load Balancing のヘルスチェックを使用します。
Update-ASAutoScalingGroup -AutoScalingGroupName my-asg -HealthCheckType ELB -HealthCheckGracePeriod 60
-
APIの詳細については、「コマンドレットリファレンス」のUpdateAutoScalingGroup」を参照してください。 AWS Tools for PowerShell
-
- Python
-
- Python 用 SDK (Boto3)
-
注記
GitHub には他にもあります。用例一覧を検索し、AWS コード例リポジトリ
での設定と実行の方法を確認してください。 class AutoScalingWrapper: """Encapsulates Amazon EC2 Auto Scaling actions.""" def __init__(self, autoscaling_client): """ :param autoscaling_client: A Boto3 Amazon EC2 Auto Scaling client. """ self.autoscaling_client = autoscaling_client def update_group(self, group_name: str, **kwargs: Any) -> None: """ Updates an Auto Scaling group. :param group_name: The name of the group to update. :param kwargs: Keyword arguments to pass through to the service. :return: None :raises ClientError: If there is an error updating the Auto Scaling group. """ try: self.autoscaling_client.update_auto_scaling_group( AutoScalingGroupName=group_name, **kwargs ) logger.info(f"Successfully updated Auto Scaling group {group_name}.") except ClientError as err: error_code = err.response["Error"]["Code"] logger.error(f"Failed to update Auto Scaling group {group_name}.") if error_code == "ResourceInUse": logger.error( "The Auto Scaling group '%s' is currently in use and cannot be modified. Please try again later.", group_name, ) elif error_code == "ScalingActivityInProgress": logger.error( f"A scaling activity is currently in progress for the Auto Scaling group '{group_name}'." "Please wait for the activity to complete before attempting to update the group." ) logger.error(f"Full error:\n\t{err}") raise
-
API の詳細については、UpdateAutoScalingGroup for AWS Python (Boto3) SDK APIリファレンス」を参照してください。
-
- Rust
-
- Rust のSDK
-
注記
GitHub には他にもあります。用例一覧を検索し、AWS コード例リポジトリ
での設定と実行の方法を確認してください。 async fn update_group(client: &Client, name: &str, size: i32) -> Result<(), Error> { client .update_auto_scaling_group() .auto_scaling_group_name(name) .max_size(size) .send() .await?; println!("Updated AutoScaling group"); Ok(()) }
-
API の詳細については、UpdateAutoScalingGroup
AWS SDK for Rust API リファレンス」を参照してください。
-