[AWSJP.COM トップ]
[AWS CLI サンプルコード トップへ]





【AWS CLI サンプルコード】aws 操作基本コマンド集

Powershell で AWS API を操作するサンプルコードの紹介です。Windows 環境を想定しています。




ホスト名からインスタンスIDを取得する

PS >$IDS = (aws ec2 describe-instances --filters="Name=tag:Name,Values=*" --region ap-northeast-1|Convertfrom-Json).Reservations.Instances.InstanceID



インスタンスを開始する

PS>aws ec2 start-instances --instance-ids $IDS --region ap-northeast-1



インスタンスを停止する

PS>aws ec2 stop-instances --instance-ids $IDS --region ap-northeast-1


(*)インスタンスが起動中など停止できない場合はこのコマンドは無視される。

再起動する

PS>aws ec2 reboot-instances --instance-ids $IDS --region ap-northeast-1


(*)インスタンスが起動中など再起動できない場合はこのコマンドは無視される。

ステータスを確認する(stopped,pinding,runningなど)

PS> (aws ec2 describe-instances --filters="Name=tag:Name,Values=*" --region ap-northeast-1|Convertfrom-Json).Reservations.Instances.State



システムステータスを確認する

PS> (aws ec2 describe-instance-status --instance-ids $IDS --region ap-northeast-1|Convertfrom-Json).InstanceStatuses.SystemStatus.Status



インスタンスからAMIを生成する

PS > aws ec2 create-image --instance-id $IDS --name "AMI-TEST-IMAGE"



AMIの登録を解除する

PS > aws ec2 deregister-image --image-id ami-abcde



EBSからスナップショットを作成する

PS > aws ec2 create-snapshot --volume-id vol-abcde



スナップショットの削除

PS > aws ec2 delete-snapshot --snapshot-id snap-abcdef



(*)
このスナップショットがAMIに登録されている場合は削除できない。まずはAMIの登録解除が先。
An error occurred (InvalidSnapshot.InUse) when calling the DeleteSnapshot operation: The snapshot snap-abcdef is currently in use by ami-abcdef

(*)PS > aws ec2 deregister-image --image-id ami-abcde で解除


アタッチされているロールを確認

aws ec2 describe-instances --region ap-northeast-1 --instance-ids i-abcdefg --query 'Reservations[*].Instances[*].IamInstanceProfile'



IDSをすべて列挙してループ処理する

PS > (aws ec2 describe-instances| convertfrom-json).Reservations.Instances.InstanceID | Foreach { write-host $_}

例:
Function GetSystemStatus ($IDS)
{
(aws ec2 describe-instance-status --instance-ids $IDS --region ap-northeast-1|Convertfrom-Json).InstanceStatuses.SystemStatus.Status
}

(aws ec2 describe-instances| convertfrom-json).Reservations.Instances.InstanceID | Foreach { write-host ($_ +":" + (GetSystemStatus $_))}










[AWS CLI サンプルコード トップへ]
[awsjp.com トップ]


本サイト内掲載されている情報は、著作権法により保護されています。いかなる場合でも権利者の許可なくコピー、配布することはできません。 Copyright(c) awsjp.com 2018-2019