リクエストタイプが永続リクエストの場合、
スポットインスタンスの中断後、リクエストが再度開かれます
インスタンスを停止できます
リクエストタイプがワンタイムリクエストの場合、
スポットインスタンスの中断後、リクエストが終了です
インスタンスを停止できません
-- 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
-- 2. サービスにリンクされたロールの作成
aws iam list-roles | grep AWSServiceRoleForEC2Spot
-- ロールがない場合、作成する
aws iam create-service-linked-role --aws-service-name spot.amazonaws.com
-- 3. スポットインスタンスを作成する
aws ec2 run-instances \
--image-id ami-0404778e217f54308 \
--instance-type t3.nano \
--key-name key1 \
--instance-market-options '{"MarketType": "spot","SpotOptions": {"SpotInstanceType": "one-time"}}'
-- 4. スポットインスタンスの確認
aws ec2 describe-spot-instance-requests
aws ec2 describe-spot-instance-requests \
--query "SpotInstanceRequests[*].{InstanceId:InstanceId}"
-- 5. クリーンアップ
-- EC2インスタンスの削除
aws ec2 describe-instances
aws ec2 terminate-instances \
--instance-ids i-11111111111111111
-- ロールの削除
-- AWSServiceRoleForEC2Spotは削除できない
-- - this role is only modifiable by AWS