Um Amazon Web Services (AWS) mittels PowerShell abzufragen, müssen erst ein paar Voraussetzungen erfüllt werden. Hier der Links zur HowTo von Amazon:
http://docs.aws.amazon.com/powershell/latest/userguide/pstools-getting-set-up.html#pstools-getting-set-up
Jedoch verkürze ich in diesem Beitrag das Vorgehen.
- AWS Tools herunterladen und installieren: https://aws.amazon.com/de/powershell/
- AccessKey und SecretKey erstellen, bzw. herunterladen/dokumentieren
- In AWS anmelden und auf den eigenen Account gehen –> My Security Credentials
- Den entsprechenden User suchen und anklicken
- Den Reiter „Security Credentials“ auswählen (und wenn nicht bereits geschehen, auf „Create Access Key“ klicken)
- Die „Access key ID“ und „Secret access key“ notieren oder einfach das CSV-File herunterladen
- In AWS anmelden und auf den eigenen Account gehen –> My Security Credentials
- In PowerShell muss die Ausführung von Skripten erlaubt werden: Ausführung von Skripten erlauben
- Nun kann man eine PowerShell öffnen und das AWS-Modul importieren:
Import-Module "C:\Program Files (x86)\AWS Tools\PowerShell\AWSPowerShell\AWSPowerShell.psd1"
- Credentials für AWS einstellen
Hier den AccessKey sowie den SecretKey von oben nehmen. Der Profilname kann frei gewählt werdenSet-AWSCredentials -AccessKey "AccessKey" -SecretKey "SecretKey" -StoreAs "ProfileName"
- Je nach Befehl muss noch eine Region gewählt werden. Die Regionen können wir folgt abgefragt werden:
Get-AWSRegion Region Name IsShellDefault ------ ---- -------------- ap-northeast-1 Asia Pacific (Tokyo) False ap-northeast-2 Asia Pacific (Seoul) False ap-south-1 Asia Pacific (Mumbai) False ap-southeast-1 Asia Pacific (Singapore) False ap-southeast-2 Asia Pacific (Sydney) False ca-central-1 Canada (Central) False eu-central-1 EU Central (Frankfurt) False eu-west-1 EU West (Ireland) False eu-west-2 EU West (London) False sa-east-1 South America (Sao Paulo) False us-east-1 US East (Virginia) False us-east-2 US East (Ohio) False us-west-1 US West (N. California) False us-west-2 US West (Oregon) False
Sollte der Befehl also eine Region brauchen, kann diese wie folgt definiert werden. Wobei die Region von o.g. Befehl entnommen wird. Der Profilname muss dann der Profilname sein, der ebenfalls weiter oben gewählt wurde:
Initialize-AWSDefaults -ProfileName "ProfileName" -Region "eu-central-1"
- Nun können z.B. die EC2 Instanzen dieser Region abgefragt werden:
Get-EC2Instance
- Zum Wechseln der Region, wieder die AWSDefaults wie oben initialisieren, jedoch mit einer anderen Region.
- Um anschließend wieder alles aufzuräumen, können folgenden Befehle genutzt werden:
Clear-DefaultAWSRegion Remove-AWSCredentialProfile -ProfileName $ProfileName -Force