{EC2}スポットフリート

 

https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/spot-fleet.html
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/work-with-spot-fleets.html#create-spot-fleet

 

 

-- 1. コマンド等のインストール

-- 1.1 aws cli version 2 インストール

curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
aws --version

 

-- 1.2 jqインストール
sudo yum -y install jq


-- 2. スポットフリートのリクエス

vim a.json

{
  "TargetCapacity": 2,
  "IamFleetRole": "arn:aws:iam::999999999999:role/aws-service-role/spotfleet.amazonaws.com/AWSServiceRoleForEC2SpotFleet",
  "LaunchSpecifications": [
      {
          "ImageId": "ami-0404778e217f54308",
          "KeyName": "key1",
          "InstanceType": "t3.nano"
      }
  ]
}


aws ec2 request-spot-fleet \
--spot-fleet-request-config file://a.json

 

aws ec2 describe-spot-fleet-requests

aws ec2 describe-spot-fleet-instances \
--spot-fleet-request-id sfr-11111111-1111-1111-1111-111111111111

aws ec2 describe-spot-fleet-request-history \
--spot-fleet-request-id sfr-11111111-1111-1111-1111-111111111111 \
--start-time 2022-05-18T00:00:00Z


インスタンスを1台終了して、別のインスタンスが自動で起動することを確認

 

-- 3. クリーンアップ

aws ec2 cancel-spot-fleet-requests \
--spot-fleet-request-id sfr-11111111-1111-1111-1111-111111111111 \
--terminate-instances