Skip to content

Instantly share code, notes, and snippets.

@rodolfofadino
Created July 2, 2012 01:34
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rodolfofadino/3030388 to your computer and use it in GitHub Desktop.
Save rodolfofadino/3030388 to your computer and use it in GitHub Desktop.
Start instances EC2 AWS
Add-Type -Path "C:\Program Files (x86)\AWS SDK for .NET\bin\AWSSDK.dll"
$instancias = New-Object System.Collections.Generic.List[System.Collections.Hashtable]
$instancias.Add(@{"maquina" = "i-xxxxx"; "ip" = ""; endpoint= "https://ec2.sa-east-1.amazonaws.com/"})
##$instancias.Add(@{"maquina" = "i-xxxxx"; "ip" = "111.111.1.11"; endpoint= "https://ec2.sa-east-1.amazonaws.com/"})
##$instancias.Add(@{"maquina" = "i-xxxxx"; "ip" = "111.111.1.11"; endpoint= "https://ec2.sa-east-1.amazonaws.com/"})
##$instancias.Add(@{"maquina" = "i-xxxxx"; "ip" = "111.111.1.11"; endpoint= "https://ec2.sa-east-1.amazonaws.com/"})
$secretKeyID="Secret key"
$secretAccessKeyID="Access key"
##Urls de endpoint
##US East (Northern Virginia) Region ec2.us-east-1.amazonaws.com HTTP and HTTPS
##US West (Oregon) Region ec2.us-west-2.amazonaws.com HTTP and HTTPS
##US West (Northern California) Region ec2.us-west-1.amazonaws.com HTTP and HTTPS
##EU (Ireland) Region ec2.eu-west-1.amazonaws.com HTTP and HTTPS
##Asia Pacific (Singapore) Region ec2.ap-southeast-1.amazonaws.com HTTP and HTTPS
##Asia Pacific (Tokyo) Region ec2.ap-northeast-1.amazonaws.com HTTP and HTTPS
##South America (Sao Paulo) Region ec2.sa-east-1.amazonaws.com HTTP and HTTPS
foreach ($item in $instancias)
{
$config = New-Object Amazon.EC2.AmazonEC2Config
$config.WithServiceURL($item.endpoint)
$client = [Amazon.AWSClientFactory]::CreateAmazonEC2Client($secretAccessKeyID,$secretKeyID,$config)
$request = New-Object Amazon.EC2.Model.StartInstancesRequest
$request.WithInstanceId($item.maquina)
$client.StartInstances($request)
if($item.ip.Length -gt 0)
{
$associateRequest= New-Object Amazon.EC2.Model.AssociateAddressRequest
$associateRequest.WithInstanceId($item.maquina)
$associateRequest.WithPublicIp($item.ip)
$client.AssociateAddress($associateRequest)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment