aws toolkit for visual studio - benutzerhandbuch · aws toolkit for visual studio benutzerhandbuch...

122
AWS Toolkit for Visual Studio Benutzerhandbuch AWS Toolkit for Visual Studio: Benutzerhandbuch Copyright © 2019 Amazon Web Services, Inc. and/or its affiliates. All rights reserved.

Upload: others

Post on 30-Aug-2019

19 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual StudioBenutzerhandbuch

AWS Toolkit for Visual Studio: BenutzerhandbuchCopyright © 2019 Amazon Web Services, Inc. and/or its affiliates. All rights reserved.

Page 2: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio Benutzerhandbuch

Amazon's trademarks and trade dress may not be used in connection with any product or service that is not Amazon's,in any manner that is likely to cause confusion among customers, or in any manner that disparages or discreditsAmazon. All other trademarks not owned by Amazon are the property of their respective owners, who may or may notbe affiliated with, connected to, or sponsored by Amazon.

Page 3: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio Benutzerhandbuch

Table of ContentsVerwenden des AWS Toolkit for Visual Studio ........................................................................................ 1

Toolkit for Visual Studio ............................................................................................................... 1AWS Explorer .................................................................................................................... 1Verwaltung von Anmeldeinformationen und Regionen .............................................................. 1Amazon EC2 ..................................................................................................................... 1AWS Lambda ..................................................................................................................... 1AWS CodeCommit .............................................................................................................. 2Amazon DynamoDB ............................................................................................................ 2Amazon S3 ........................................................................................................................ 2Amazon RDS ..................................................................................................................... 2AWS Elastic Beanstalk ........................................................................................................ 2AWS CloudFormation .......................................................................................................... 2AWS Identity and Access Management (IAM) ......................................................................... 2

Einrichtung des AWS Toolkit for Visual Studio ....................................................................................... 3Einrichten des AWS Toolkit for Visual Studio ................................................................................. 3

Voraussetzungen ................................................................................................................ 3Installieren der Toolkit for Visual Studio ................................................................................. 3Deinstallieren des Toolkit for Visual Studio ............................................................................. 4Ältere Versionen des Toolkit for Visual Studio ......................................................................... 4

Bereitstellen von AWS-Anmeldeinformationen ................................................................................ 4Hinzufügen eines Profils für den SDK Credential Store ............................................................. 5Hinzufügen eines Profils zur AWS-Anmeldeinformationsprofildatei .............................................. 6

Toolkit for Visual Studio verwenden ............................................................................................. 7Profile und Toolkit for Visual Studio-Fensterbindung ................................................................. 7

Arbeiten mit AWS-Services ................................................................................................................. 8Verwalten von Amazon EC2-Instances ......................................................................................... 8

Die Ansichten für Amazon Machine Images und Amazon EC2 Instances ..................................... 8Starten einer Amazon EC2 Instance .................................................................................... 10Herstellen einer Verbindung mit einer Amazon EC2 Instance ................................................... 11Beenden einer Amazon EC2 Instance. ................................................................................. 12

Verwaltung von Amazon ECS-Instances ...................................................................................... 13Ändern von Service-Eigenschaften ...................................................................................... 13Beenden einer Aufgabe ..................................................................................................... 13Löschen eines Service ....................................................................................................... 13Löschen eines Clusters ...................................................................................................... 14Erstellen eines Repositorys ................................................................................................ 14Löschen eines Repositorys ................................................................................................. 14

Verwalten von Sicherheitsgruppen im AWS Explorer ...................................................................... 14Erstellen einer Sicherheitsgruppe ........................................................................................ 14Hinzufügen von Berechtigungen zu einer Sicherheitsgruppe .................................................... 15

Erstellen eines AMI aus einer EC2 Instance ................................................................................. 15Startberechtigungen für ein Amazon Machine Image festlegen ........................................................ 16Amazon Virtual Private Cloud (VPC) ........................................................................................... 16

Erstellen einer öffentlichen/privaten VPC für die Bereitstellung mit AWS Elastic Beanstalk ............. 17Bereitstellen mit dem AWS Toolkit ............................................................................................. 18

Bereitstellen in Elastic Beanstalk ........................................................................................ 19Bereitstellen für einen Amazon EC2-Container-Service .......................................................... 42Standalone-Bereitstellungstool ........................................................................................... 49

Verwenden des AWS CloudFormation-Vorlageneditors für Visual Studio. ........................................... 62Erstellen eines AWS CloudFormation-Vorlageprojekts in Visual Studio ...................................... 62Bereitstellen einer AWS CloudFormation-Vorlage in Visual Studio ............................................. 63Schätzen der Kosten Ihres AWS CloudFormation-Vorlagenprojekts in Visual Studio ..................... 63Formatieren einer AWS CloudFormation-Vorlage in Visual Studio ............................................. 64

Verwenden von Amazon S3 aus AWS Explorer ............................................................................ 64

iii

Page 4: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio Benutzerhandbuch

Erstellen eines Amazon S3-Buckets ..................................................................................... 64Verwalten von Amazon S3-Buckets in AWS Explorer .............................................................. 65Hochladen von Dateien und Ordnern in Amazon S3 ............................................................... 66Amazon S3-Dateivorgänge von AWS Toolkit for Visual Studio .................................................. 66

Verwenden von DynamoDB aus AWS Explorer ............................................................................ 68Erstellen einer DynamoDB-Tabelle ...................................................................................... 68Anzeigen einer DynamoDB-Tabelle als Raster ...................................................................... 68Bearbeiten und Hinzufügen von Attributen und Werten ........................................................... 69Scannen einer DynamoDB-Tabelle ...................................................................................... 69

Verwenden von AWS CodeCommit mit Visual Studio Team Explorer ............................................... 70Anmeldeinformationstypen für AWS CodeCommit .................................................................. 70Herstellen einer Verbindung mit AWS CodeCommit ................................................................ 71Erstellen eines Repositorys ................................................................................................ 72Einrichten von Git-Anmeldeinformationen .............................................................................. 73Klonen eines Repositorys ................................................................................................... 75Verwenden von Repositorys ............................................................................................... 76

Amazon RDS im AWS Explorer .................................................................................................. 77Start einer Amazon RDS Database-Instance ........................................................................ 77Erstellen einer Microsoft SQL Server-Datenbank in einer RDS-Instance .................................... 80Amazon RDS-Sicherheitsgruppen ....................................................................................... 80

Verwenden von Amazon SimpleDB aus AWS Explorer .................................................................. 82Verwenden von Amazon SQS aus AWS Explorer ......................................................................... 82

Erstellen einer Warteschlange ............................................................................................. 83Löschen einer Warteschlange ............................................................................................. 83Verwalten von Warteschlangeneigenschaften ........................................................................ 83Senden einer Mitteilung an eine Warteschlange ..................................................................... 84

Identitäts- und Zugriffsverwaltung ................................................................................................ 84Erstellen und Konfigurieren eines IAM-Benutzers ................................................................... 84Erstellen einer IAM-Gruppe ................................................................................................ 85Hinzufügen eines IAM-Benutzers zu einer IAM-Gruppe ........................................................... 86Generieren von Anmeldeinformationen für einen IAM-Benutzer ................................................ 86Erstellen Sie eine IAM-Rolle. .............................................................................................. 87Erstellen einer IAM-Richtlinie .............................................................................................. 88

Verwenden der AWS Lambda-Vorlagen im AWS Toolkit for Visual Studio ......................................... 88Tutorial: Verwenden des AWS Lambda-Projekts im AWS Toolkit for Visual Studio ...................... 89Tutorial: Tutorial: Erstellen und testen einer serverlosen Anwendung mit AWS Lambda ................ 96Tutorial: Erstellen einer Amazon Rekognition Lambda-Anwendung ......................................... 105Tutorial: Verwenden von AmazonProtokollierungs-Frameworks mit AWS Lambda zur Erstellungvon Anwendungsprotokollen .............................................................................................. 113

Bereitstellen eines AWS Lambda-Projekts mit der .NET Core-CLI .................................................. 114Liste der über die CLI verfügbaren Lambda-Befehle ............................................................. 115Veröffentlichen eines .NET Core Lambda-Projekts über die .NET Core CLI ............................... 115

Dokumentverlauf ............................................................................................................................ 118

iv

Page 5: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchToolkit for Visual Studio

Verwenden des AWS Toolkit forVisual StudioToolkit for Visual Studio

Die Toolkit for Visual Studio ist ein Plug-in für die Visual Studio IDE, das Ihnen das Entwickeln, Debuggenund Bereitstellen von .NET-Anwendungen, die Amazon Web Services verwenden, erleichtert. Das Toolkitfor Visual Studio wird für Visual Studio-Versionen 2013 und höher unterstützt. Weitere Informationen zumHerunterladen und Installieren des Kits finden Sie unter Install the Toolkit for Visual Studio (p. 3).

Note

Das Toolkit for Visual Studio ist auch für die Versionen Visual Studio 2008, 2010 und 2012verfügbar. Diese Versionen werden jedoch nicht unterstützt. Weitere Informationen finden Sieunter Install the Toolkit for Visual Studio (p. 3).

Das Toolkit for Visual Studio enthält die folgenden Funktionen zur Verbesserung IhrerEntwicklungsumgebung:

AWS ExplorerÜber das AWS Explorer-Toolfenster im View (Anzeigen)-Menü der IDE können Sie in der Visual StudioIDE mit vielen AWS-Services interagieren. Zu den unterstützten Daten-Services gehören Amazon SimpleStorage Service (Amazon S3), Amazon SimpleDB, Amazon Simple Notification Service (Amazon SNS),Amazon Simple Queue Service (Amazon SQS), und Amazon CloudFront. AWS Explorer bietet außerdemZugriff auf das Amazon Elastic Compute Cloud (Amazon EC2) Management, die AWS Identity and AccessManagement (IAM) Benutzer- und Richtlinienverwaltung, die Bereitstellung von serverlosen Anwendungenund Funktionen für AWS Lambda und die Bereitstellung von Webanwendungen für AWS Elastic Beanstalkund AWS CloudFormation.

Verwaltung von Anmeldeinformationen und RegionenAWS Explorer unterstützt mehrere AWS-Konten (einschließlich IAM-Benutzerkonten) und Regionen undermöglicht es Ihnen, auf einfache Weise zwischen den Anzeigen verschiedener Konten zu wechseln.Außerdem können Ressourcen und Services in unterschiedlichen Regionen angezeigt werden.

Amazon EC2Ab AWS Explorer können Sie verfügbare Amazon Machine Images (AMIs) anzeigen, Amazon EC2-Instances aus diesen AMIs erstellen und sich dann mit diesen Instances über Windows RemoteDesktop verbinden. AWS Explorer ermöglicht zudem unterstützende Funktionen, wie die Möglichkeit,Schlüsselpaare und Sicherheitsgruppen zu erstellen und zu verwalten.

AWS LambdaSie können Lambda verwenden, um Ihre serverlosen .NET-Core C # -Funktionen und serverlosenAnwendungen zu hosten. Verwenden Sie Vorlagen, um schnell neue serverlose Projekte zu erstellen undeinen Ausgangspunkt für die Entwicklung Ihrer serverlosen Anwendung zu haben.

1

Page 6: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchAWS CodeCommit

AWS CodeCommitCodeCommit ist mit dem Team Explorer von Visual Studio integriert. Dadurch können Sie ganz einfachRepositorys in CodeCommit klonen und erstellen sowie mit Quellcode-Änderungen in IDE arbeiten.

Amazon DynamoDBDynamoDB ist ein schneller, hochgradig skalierbarer, hochverfügbarer, wirtschaftlicher, nicht relationalerDatenbank-Service. Das Toolkit for Visual Studio verfügt über die Funktionalität für das Arbeiten mitAmazon DynamoDB in einem Entwicklungskontext. Mit dem Toolkit for Visual Studio können Sie Attributein DynamoDB-Tabellen erstellen und bearbeiten sowie Scanoperationen in Tabellen ausführen.

Amazon S3Sie haben die Möglichkeit, Inhalte schnell und einfach per Drag & Drop auf Amazon S3-Bucketshochzuladen oder Inhalte von Amazon S3 herunterzuladen. Darüber hinaus können Sie Berechtigungen,Metadaten und Tags bequem für Objekte in Buckets angeben.

Amazon RDSAWS Explorer kann Sie beim Erstellen und Verwalten von Amazon RDS-Assets in Visual Studiounterstützen. Amazon RDS-Instances, die Microsoft SQL Server verwenden, können außerdem zumServer Explorer von Visual Studio hinzugefügt werden.

AWS Elastic BeanstalkSie können Sie Elastic Beanstalk nutzen, um Ihre .NET-Webanwendungsprojekte auf AWS bereitzustellen.Sie haben die Möglichkeit, Ihre Anwendung in einer Umgebung mit einer einzelnen Instance oder einerkomplett lastverteilten, automatisch skalierten Umgebung in IDE bereitzustellen. Zudem können Sieneue Versionen Ihrer Anwendung schnell und bequem bereitstellen, ohne Visual Studio zu verlassen.Wenn Ihre Anwendung SQL Server in Amazon RDS nutzt, kann der Bereitstellungsassistent auch dieVerbindung zwischen Ihrer Anwendungsumgebung in Elastic Beanstalk und der Datenbank-Instance inAmazon RDS einrichten. Die Toolkit for Visual Studio enthält auch das Standalone-Bereitstellungstoolfür Befehlszeilen. Verwenden Sie das Bereitstellungstool, um die automatische Bereitstellung in denErstellungsvorgang aufzunehmen oder um die Bereitstellung in anderen Skriptszenarien außerhalb vonVisual Studio einzuschließen.

AWS CloudFormationSie können das Toolkit for Visual Studio zum Bearbeiten von AWS CloudFormation JSON-Formatvorlagenverwenden, wobei der Editor IntelliSense und die Syntax-Hervorhebung unterstützt werden. Mit einerAWS CloudFormation-Vorlage beschreiben Sie die Ressourcen, die Sie zum Hosten Ihrer Anwendunginstanziieren möchten. Anschließend stellen Sie innerhalb der IDE die Vorlage auf AWS CloudFormationbereit. Die in der Vorlage beschriebenen Ressourcen werden für Sie bereitgestellt. So können Sie sichganz auf die Entwicklung der Anwendungsfunktionalität konzentrieren.

AWS Identity and Access Management (IAM)Im AWS Explorer können Sie IAM-Benutzer, -Rollen und -Richtlinien erstellen sowie Benutzern Richtlinienhinzufügen.

2

Page 7: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchEinrichten des AWS Toolkit for Visual Studio

Einrichtung des AWS Toolkit forVisual Studio

Die Themen in diesem Abschnitt helfen Ihnen, den Toolkit for Visual Studio einzurichten und zu verwenden.

Themen• Einrichten des AWS Toolkit for Visual Studio (p. 3)• Bereitstellen von AWS-Anmeldeinformationen (p. 4)• Toolkit for Visual Studio verwenden (p. 7)

Einrichten des AWS Toolkit for Visual StudioDieses Thema beschreibt die Installation und Konfiguration des Toolkit for Visual Studio.

VoraussetzungenZum Installieren und Konfigurieren des Toolkit for Visual Studio benötigen Sie Folgendes:

• Ein AWS-Konto. Dieses Konto ermöglicht Ihnen die Verwendung von AWS-Services. Um ein AWS-Konto zu erhalten, wählen Sie auf der AWS-Homepage die Option Create an AWS Account (AWS-Kontoerstellen) aus.

• Ein unterstütztes Betriebssystem: Windows 10, Windows 8 oder Windows 7.

Wir empfehlen, die neuesten Service Packs und Updates für die verwendete Windows-Version zuinstallieren.

• Visual Studio 2013 oder höher (einschließlich Community Editions).

Wir empfehlen, die neuesten Service Packs und Updates zu installieren.

Note

Das Toolkit for Visual Studio ist weiterhin verfügbar, wenn Sie Visual Studio in den Versionen2008, 2010 oder 2012 (einschließlich Express Edition, sofern verfügbar) verwenden. Es wirdjedoch nicht unterstützt. Für Express Edition umfasst die Installation nur die AWS-Projektvorlagenund das Standalone-Bereitstellungstool (p. 49). Visual Studio Express Edition unterstützt keineDrittanbietererweiterungen wie AWS Explorer. Links zu diesen älteren Versionen des Toolkit forVisual Studio finden Sie unten auf dieser Seite.

Installieren der Toolkit for Visual StudioDas Toolkit for Visual Studio 2017 wird über den Visual Studio Marketplace bereitgestellt. Sie können dasToolkit auch über das Dialogfeld „Extensions und Updates“ in Visual Studio installieren und aktualisieren.

Die Versionen 2013 und 2015 des Toolkit for Visual Studio sind ein Teil der AWS-Tools für Windows. Siekönnen die AWS-Tools für Windows für diese Versionen wie folgt installieren.

1. Navigieren Sie zur Seite AWS Toolkit for Visual Studio.

3

Page 8: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchDeinstallieren des Toolkit for Visual Studio

2. Wählen Sie im Abschnitt Download (Herunterladen) die Option „Toolkit for Visual Studio 2013-2015“ aus,um das Installationsprogramm herunterzuladen.

3. Um mit der Installation zu beginnen, führen Sie das heruntergeladene Installationsprogramm aus undbefolgen Sie die Anweisungen.

Note

Standardmäßig wird das Toolkit for Visual Studio im Verzeichnis „Program Files“ installiert. Dafürsind Administratorrechte erforderlich. Um das Toolkit for Visual Studio als Nicht-Administrator zuinstallieren, geben Sie ein anderes Installationsverzeichnis an.

Deinstallieren des Toolkit for Visual StudioUm das Toolkit for Visual Studio zu deinstallieren, müssen Sie die AWS-Tools für Windows deinstallieren.

1. Öffnen Sie in der Systemsteuerung Programme und Funktionen.

Note

Um Programme und Funktionen direkt zu öffnen, führen Sie über eine Eingabeaufforderung denfolgenden Befehl aus: appwiz.cpl

1. Wählen Sie die AWS-Tools für Windows und dann Deinstallieren aus.2. Wählen Sie nach Aufforderung die Option Ja aus.

Beim Deinstallieren der AWS-Tools für Windows wird das Verzeichnis „Samples“ nicht entfernt. DiesesVerzeichnis wird für den Fall beibehalten, dass Sie die Beispiele darin geändert haben. Sie müssen diesesVerzeichnis manuell entfernen.

Ältere Versionen des Toolkit for Visual StudioVisual Studio 2008—Installieren Sie das Toolkit for Visual Studio für Visual Studio 2008 unter https://sdk-for-net.amazonwebservices.com/latest/AWSToolkitForVisualStudio2008.msi.

Visual Studio 2010 und 2012—Installieren Sie das Toolkit for Visual Studio für Visual Studio 2010 und 2012unter https://sdk-for-net.amazonwebservices.com/latest/AWSToolkitForVisualStudio2010-2012.msi.

Bereitstellen von AWS-AnmeldeinformationenBevor Sie das Toolkit for Visual Studio verwenden können, müssen Sie eine oder mehrere Gruppen vongültigen AWS-Anmeldeinformationen angeben. Diese Anmeldeinformationen können Sie für den Zugriff aufIhre AWS-Ressourcen über das Toolkit for Visual Studio verwenden. Sie dienen außerdem zum Signierenprogrammgesteuerter Webservice-Abfragen, sodass AWS überprüfen kann, ob die Anforderung von einerautorisierten Quelle stammt.

Important

AWS-Anmeldeinformationen bestehen aus einem Zugriffsschlüssel und einem geheimenSchlüssel. Es wird empfohlen, nicht die Root-Anmeldeinformationen Ihres Kontos zu verwenden.Erstellen Sie stattdessen IAM-Benutzer und verwenden Sie dann deren Anmeldeinformationen.Weitere Informationen finden Sie unter Using IAM Users und Best Practices for Managing AWSAccess Keys.

4

Page 9: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchHinzufügen eines Profils für den SDK Credential Store

Die Toolkit for Visual Studio unterstützt mehrere Gruppen von Anmeldeinformationen aus einer beliebigenAnzahl von Konten. Jede Gruppe wird als profile bezeichnet. Wenn Sie Toolkit for Visual Studio ein Profilhinzuzufügen, werden die Anmeldeinformationen verschlüsselt und im SDK Credential Store gespeichert.Diese Funktion wird auch vom AWS SDK for .NET und den AWS-Tools for Windows PowerShellverwendet. Der SDK Credential Store ist an Ihr Windows-Benutzerkonto auf Ihrem Computer gebundenund kann nicht anderswo entschlüsselt oder verwendet werden.

Zusätzlich zum verschlüsselten SDK Credential Store kann das Toolkit for Visual Studio auchAnmeldeinformationen aus der freigegebenen Nur-Text-Anmeldeinformationsdatei lesen, die von anderenAWS-SDKs und der AWS-Befehlszeilenschnittstelle (CLI) verwendet wird. Um das Toolkit for Visual Studiozu verwenden, muss mindestens ein Anmeldeprofil aus dem SDK Credential Store oder der gemeinsamenAnmeldeinformationsdatei verfügbar sein.

Note

Mit dem Toolkit for Visual Studio erstellte Anmeldeprofile werden ausschließlich im verschlüsseltenSDK Credential Store gespeichert. Multi-Factor Authentication (MFA)-Profile werden von Toolkitfor Visual Studio nicht unterstützt.

Hinzufügen eines Profils für den SDK Credential StoreSo fügen Sie dem SDK Credential Store ein Profil hinzu:

1. Öffnen Sie den AWS Explorer in Visual Studio. Klicken Sie im Menü View (Ansicht) auf AWS Explorer.Oder drücken Sie Ctrl+K und dann A.

2. Wählen Sie das Symbol New Account Profile (Neues Kontoprofil) rechts neben der Liste Profile (Profil)aus.

Das Dialogfeld „New Account Profile (Neues Kontoprofil)“ wird geöffnet.3. Um ein Anmeldeprofil zu erstellen, geben Sie die folgenden Daten in das Dialogfeld ein. Wenn

Sie ein Konto in der AWS Management Console erstellen oder einen IAM-Benutzer erstellenund Anmeldeinformationen für den Benutzer einrichten, werden Sie aufgefordert, die generierten

5

Page 10: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchHinzufügen eines Profils zur AWS-

Anmeldeinformationsprofildatei

Anmeldeinformationen herunterzuladen und zu speichern. Sie können Import from cvs file (Aus CVS-Datei importieren) auswählen, um zu der Datei mit den Informationen für Zugriff und geheimen Schlüsselzu navigieren und sie automatisch in das Dialogfeld zu importieren.Profile Name (Profilname)

(Erforderlich:) der Anzeigename des Profils.Access Key ID (Zugriffsschlüssel-ID)

(Erforderlich:) der Zugriffsschlüssel.Secret Access Key (Secret-Zugriffsschlüssel)

(Erforderlich:) der geheime Schlüssel.Account Number (Kontonummer)

(Optional:) die Kontonummer der Anmeldeinformationen. Das Toolkit for Visual Studio verwendet dieKontonummer zum Erstellen der Amazon-Ressourcennamen (ARNs).

Kontotyp

(Erforderlich:) der Kontotyp. Dieser Eintrag legt fest, welche Regionen im AWS Explorer angezeigtwerden, wenn Sie dieses Profil angeben. Für Standard AWS Account (Standard-AWS-Konto):• Wenn Sie „AWS GovCloud (US) Account“ auswählen, zeigt der AWS Explorer die Region AWS

GovCloud (US) an.• Wenn Sie Amazon AWS Account – China (Beijing) Region auswählen, zeigt der AWS Explorer

nur Region China (Peking) an.4. Um das Profil dem SDK Credential Store hinzuzufügen, wählen Sie OK aus.

Nachdem Sie das erste Profil hinzugefügt haben, haben Sie außerdem folgende Möglichkeiten:

• Um ein weiteres Profil hinzuzufügen, wiederholen Sie den Vorgang.• Um ein Profil zu löschen, wählen Sie es aus und wählen Sie dann das Symbol Delete Profile (Profil

löschen) aus.• Um ein Profil zu bearbeiten, wählen Sie das Symbol Edit Profile (Profil bearbeiten) aus, um das

<problematic>`</problematic>Dialogfeld „Edit Profile (Profile bearbeiten)“ zu öffnen.

Wenn Sie beispielsweise die Anmeldeinformationen eines IAM-Benutzers rotiert haben (eine empfohleneVorgehensweise), können Sie das Profil bearbeiten, um die Anmeldeinformationen des Benutzers imSDK Credential Store zu aktualisieren. Weitere Informationen finden Sie unter IAM Credential Rotation.

Sie können dem SDK Credential Store auch Profile hinzufügen, wenn Sie ein AWS-Projekt erstellen.Bevor Visual Studio die Projektdateien erstellt, wird das Dialogfeld AWS Access Credentials (AWS-Anmeldeinformationen)angezeigt. Sie können ein vorhandenes Profil aus dem SDK Credential Storeauswählen oder eines erstellen.

Hinzufügen eines Profils zur AWS-AnmeldeinformationsprofildateiSie können Ihre Anmeldeinformationen in der AWS-Anmeldeinformationsprofildatei auf Ihrem lokalenSystem festlegen. Diese befindet sich unter C:\Users\USERNAME\.aws\credentials für Windows

Diese Datei sollte Zeilen im folgenden Format enthalten:

[default]

6

Page 11: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchToolkit for Visual Studio verwenden

aws_access_key_id = your_access_key_idaws_secret_access_key = your_secret_access_key

Setzen Sie bei your_access_key_id und your_secret_access_key Ihre eigenen Werte für die AWS-Anmeldeinformationen ein.

Sie können eine Rolle verwenden, indem Sie ein Profil für die Rolle erstellen. Das folgende Beispiel zeigtein Rollenprofil mit Namen assumed-role, das vom Standardprofil übernommen wird.

[assume-role-test]role_arn = arn:aws:iam::123456789012:role/assumed-rolesource_profile = default

In diesem Fall ist das Standardprofil ein IAM-Benutzer mit Anmeldeinformationen und der Berechtigungfür die Übernahme einer Rolle namens assumed-role. Für den Zugriff auf die Rolle erstellen Sie einbenanntes Profil, in diesem Fall assume-role-test. Anstatt dieses Profil mit Anmeldeinformationen zukonfigurieren, geben Sie den ARN der Rolle und den Namen des Profils an, das darauf zugreifen kann.

Für eine EC2-Instance: Geben Sie eine IAM-Rolle an und gewähren Sie Ihrer EC2-Instance Zugriff aufdiese Rolle. Eine detaillierte Besprechung der Funktionsweise finden Sie unter IAM-Rollen für Amazon EC2im Amazon EC2 User Guide for Linux Instances.

Toolkit for Visual Studio verwendenProfile und Toolkit for Visual Studio-FensterbindungDas AWS Explorer-Fenster ist jeweils an ein einziges Profil und eine Region gebunden.

• Fenster, die vom AWS Explorer geöffnet werden, verwenden das aktuelle gebundene Profil und diegebundene Region. Sobald das Fenster geöffnet ist, können Sie zu einem anderen Profil oder eineranderen Region im AWS Explorer wechseln.

• Veröffentlichen und Standardwert anderer Assistenten für das Profil und die Region des AWS Explorers.Sie können diese ändern. Alle Ressourcen, die durch den Assistenten angelegt werden, oder Fenster,die geöffnet werden, wenn der Assistent geschlossen wird, verwenden weiterhin das Profil und dieRegion, die in dem Assistenten ausgewählt wurden.

• Wenn Sie mehrere Visual Studio-Dateien offen haben, kann jede davon an ein anderes Profil und eineandere Region gebunden sein. Der AWS Explorer speichert das zuletzt verwendete Profil und die zuletztverwendete Region. Die letzte geschlossene Visual Studio-Instance behält ihre Werte bei.

7

Page 12: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchVerwalten von Amazon EC2-Instances

Arbeiten mit AWS-ServicesMit dem AWS Explorer können Sie gleichzeitig mehrere Amazon Web Services anzeigen lassen undbearbeiten. In diesem Abschnitt finden Sie Informationen darüber, wie Sie in Visual Studio auf die AWSExplorer-Ansicht zugreifen und diese verwenden.

Es wird davon ausgegangen, dass Sie das AWS Toolkit for Visual Studio bereits auf Ihrem Systeminstalliert haben.

Themen• Verwalten von Amazon EC2-Instances (p. 8)• Verwaltung von Amazon ECS-Instances (p. 13)• Verwalten von Sicherheitsgruppen im AWS Explorer (p. 14)• Erstellen eines AMI aus einer EC2 Instance (p. 15)• Startberechtigungen für ein Amazon Machine Image festlegen (p. 16)• Amazon Virtual Private Cloud (VPC) (p. 16)• Bereitstellen mit dem AWS Toolkit (p. 18)• Verwenden des AWS CloudFormation-Vorlageneditors für Visual Studio. (p. 62)• Verwenden von Amazon S3 aus AWS Explorer (p. 64)• Verwenden von DynamoDB aus AWS Explorer (p. 68)• Verwenden von AWS CodeCommit mit Visual Studio Team Explorer (p. 70)• Amazon RDS im AWS Explorer (p. 77)• Verwenden von Amazon SimpleDB aus AWS Explorer (p. 82)• Verwenden von Amazon SQS aus AWS Explorer (p. 82)• Identitäts- und Zugriffsverwaltung (p. 84)• Verwenden der AWS Lambda-Vorlagen im AWS Toolkit for Visual Studio (p. 88)• Bereitstellen eines AWS Lambda-Projekts mit der .NET Core-CLI (p. 114)

Verwalten von Amazon EC2-InstancesAWS Explorer bietet eine detaillierte Ansicht von Amazon Machine Images (AMI) und Amazon ElasticCompute Cloud (Amazon EC2) -Instances. Innerhalb der Visual Studio-Entwicklungsumgebung können Siein diesen Ansichten eine Amazon EC2 Instance von einem AMI starten, eine Verbindung zu dieser Instanceherstellen und die Instance entweder stoppen oder beenden. Sie können die Instances-Ansicht verwenden,um aus Ihren Instances AMIs zu erstellen. Weitere Informationen finden Sie unter Create an AMI from anAmazon EC2 Instance (p. 15).

Die Ansichten für Amazon Machine Images undAmazon EC2 InstancesSie können im AWS Explorer Ansichten von Amazon Machine Images (AMIs) und Amazon EC2 Instancesanzeigen lassen. Erweitern Sie im AWS Explorer den Knoten Amazon EC2.

Um die AMIs-Ansicht anzuzeigen, öffnen Sie im ersten AMIs-Subknoten das Kontextmenü (Rechtsklick)und wählen dann View (Anzeigen).

Um die Amazon EC2 Instances-Ansicht anzuzeigen, öffnen Sie im Instances-Knoten das Kontextmenü(Rechtsklick) und wählen dann View (Anzeigen).

8

Page 13: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchDie Ansichten für Amazon MachineImages und Amazon EC2 Instances

Sie können die jeweilige Ansicht auch durch Doppelklicken auf den jeweiligen Knoten anzeigen.

• Die Ansichten beziehen sich auf die im AWS Explorer angegebene Region (z. B. die Region USA West(Nordkalifornien)).

• Sie können die Reihenfolge der Spalten durch Klicken und Ziehen ändern. Klicken Sie auf dieSpaltenüberschrift, um die Werte in einer Spalte zu sortieren.

• Anhand der Dropdown-Listen und des Filterfelds in Viewing (Anzeigen) können Sie Ansichtenkonfigurieren. Die erste Ansicht zeigt AMIs aller Plattformtypen an (Windows oder Linux), die dem imAWS Explorer angegebenen Konto gehören.

Spalten ein-/ausblenden

Sie können auch über die Dropdown-Liste Show/Hide (Einblenden/Ausblenden) oben in der Ansichtfestlegen, welche Spalten angezeigt werden. Ihre Spaltenauswahl bleibt bestehen, wenn Sie die Ansichtschließen und erneut öffnen.

BenutzeroberflächeShow/Hide Columns (Spalten einblenden/ausblenden) für AMI- und Instances-Ansichten

Markieren von AMIs, Instances und Volumes

Sie können auch die Dropdown-Liste Show/Hide (Einblenden/Ausblenden) verwenden, um Tags für AMIs,Amazon EC2 Instances oder Volumes, die Ihnen gehören, hinzuzufügen. Tags sind Name-Wert-Paare,mit denen Sie Ihren AMIs, Instances und Volumes Metadaten anfügen können. Tagnamen beziehen sichsowohl auf Ihr Konto als auch separat auf Ihre AMIs und Instances. Beispielsweise gibt es keinen Konflikt,wenn Sie denselben Tagnamen für Ihre AMIs und Ihre Instances verwenden. Bei den Tagnamen muss dieGroß- und Kleinschreibung nicht berücksichtigt werden.

Weiter Informationen über Tags finden Sie im Abschnitt Using Tags im Amazon EC2 User Guide for LinuxInstances.

So fügen Sie ein Tag hinzu

1. Geben Sie in das Feld Add (Hinzufügen) einen Namen für das Tag ein. Wählen Sie die grüneSchaltfläche mit dem Pluszeichen (+), und dann Apply (Anwenden).

Hinzufügen eines Tags zu einem AMI oder einer Amazon EC2 Instance

Das neue Tag wird in Kursivschrift angezeigt. Das bedeutet, dass noch keine Werte mit diesem Tagverknüpft wurden.

Der Tagname erscheint in der Listenansicht als neue Spalte. Wenn mindestens ein Wert mit dem Tagverknüpft ist, wird das Tag in der AWS-Konsole angezeigt.

2. Wenn Sie einem Tag einen Wert hinzufügen möchten, doppelklicken Sie in die Spalte für dieses Tagund geben einen Wert ein. Um den Tagwert zu löschen, doppelklicken Sie auf die Zelle und löschen denText.

Wenn Sie das Tag aus der Dropdown-Liste Show/Hide (Einblenden/Ausblenden) entfernen,verschwindet die entsprechende Spalte aus der Ansicht. Das Tag bleibt jedoch erhalten, gemeinsam mitallen Tagwerten, die mit AMIs, Instances oder Volumes verknüpft sind.

Note

Wenn Sie ein Tag aus der Dropdown-Liste Show/Hide (Einblenden/Ausblenden) entfernen,das keine verknüpften Werte hat, wird dieses Tag vom AWS Toolkit komplett gelöscht. Es wirddann nicht mehr in der Listenansicht und auch nicht mehr in der Dropdown-Liste Show/Hide(Einblenden/Ausblenden) angezeigt. Wenn Sie dieses Tag erneut nutzen möchten, verwendenSie das Dialogfeld Show/Hide (Einblenden/Ausblenden), um es wieder zu erstellen.

9

Page 14: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchStarten einer Amazon EC2 Instance

Starten einer Amazon EC2 InstanceAWS Explorer bietet die Funktionalität, die für das Starten einer Amazon EC2 Instance erforderlich ist. Indiesem Abschnitt wird ein Amazon Machine Image (AMI) ausgewählt, konfiguriert und dann als AmazonEC2 Instance gestartet.

So starten Sie eine Windows Server Amazon EC2 Instance

1. Wählen Sie oben in der AMIs-Ansicht aus der Dropdown-Liste auf der linken Seite Amazon Images aus.Wählen Sie in der Dropdown-Liste rechts Windows aus. Geben Sie in das Filterfeld ebs für Elastic BlockStorage ein. Es kann einen Moment dauern, bis die Ansicht aktualisiert ist.

2. Wählen Sie ein AMI aus der Liste aus, öffnen Sie das Kontextmenü (Rechtsklick) und wählen SieLaunch Instance (Instance starten) aus.

AMI-Liste3. Konfigurieren Sie im Dialogfeld Launch New Amazon EC2 Instance (Neue Amazon EC2-Instance

starten) das AMI für Ihre Anwendung.Instance-Typ

Wählen Sie den Typ der zu startenden EC2 Instance aus. Eine Liste der Instance-Typen sowiePreisinformationen finden Sie auf der Seite EC2 Pricing.

Name

Geben Sie einen Namen für die Instance ein. Dieser Name darf nicht mehr als 256 Zeichenenthalten.

Schlüsselpaar

Ein Schlüsselpaar wird verwendet, um das Windows-Passwort abzurufen, mit dem Sie sich über dasRemote Desktop Protocol (RDP) bei der EC2 Instance anmelden. Wählen Sie ein Schlüsselpaaraus, für das Sie Zugriff auf den privaten Schlüssel haben oder wählen Sie die Option für dieErstellung eines Schlüsselpaars. Wenn Sie das Schlüsselpaar im Toolkit erstellen, kann dieses denprivaten Schlüssel für Sie speichern.

Die im AWSToolKit enthaltenen Schlüsselpaare sind verschlüsselt. Sie können sie unter%LOCALAPPDATA%\AWSToolkit\keypairs finden (normalerweise C:\Users\<user>\AppData\Local\AWSToolkit\keypairs). Sie können das verschlüsselte Schlüsselpaar ineine .pem-Datei exportieren.a. Wählen Sie in Visual Studio View (Anzeigen) und klicken Sie auf AWS Explorer.b. Klicken Sie auf Amazon EC2 und wählen Sie Key Pairs (Schlüsselpaare).c. Die Schlüsselpaare werden aufgelistet, und die über das Toolkit erstellten/verwalteten

Schüsselpaare werden als Stored in AWSToolkit (In AWSToolkit gespeichert) markiert.d. Klicken Sie mit der rechten Maustaste auf das Schlüsselpaar, das Sie erstellt haben, und

wählen Sie Export Private Key (Privaten Schüssel exportieren) aus. Der private Schlüssel bleibtunverschlüsselt und wird am angegebenen Speicherort gespeichert.

Sicherheitsgruppe

Die Sicherheitsgruppe steuert den Netzwerkverkehrstyp, den die EC2 Instance akzeptiert. WählenSie eine Sicherheitsgruppe aus, die eingehenden Datenverkehr auf Port 3389, dem von RDPverwendeten Port, zulässt, sodass Sie eine Verbindung zur EC2 Instance herstellen können.Weitere Informationen zum Erstellen von Sicherheitsgruppen mit dem Toolkit finden Sie unterManaging Security Groups from AWS Explorer (p. 14).

Instance-Profil

Das Instance-Profil ist ein logischer Container für eine IAM-Rolle. Wenn Sie ein Instance-Profilauswählen, ordnen Sie der EC2 Instance die entsprechende IAM-Rolle zu. IAM-Rollen werden

10

Page 15: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchHerstellen einer Verbindung mit einer Amazon EC2 Instance

anhand von Richtlinien konfiguriert, die den Zugriff auf AWS-Services und Konto-Ressourcenregeln. Wenn eine EC2 Instance einer IAM-Rolle zugeordnet ist, wird Anwendungssoftware,die auf der Instance ausgeführt wird, mit den durch die IAM-Rolle festgelegten Berechtigungenausgeführt. Auf diese Weise kann Anwendungssoftware ausgeführt werden, ohne dass eigeneAWS-Anmeldeinformationen angegeben werden müssen. Die Software wird dadurch sicherer.Weitere Informationen über IAM-Rollen finden Sie im IAM User Guide.

EC2-Dialogfeld Launch AMI (AMI starten)4. Wählen Sie Launch (Starten) aus.

Öffnen Sie im AWS Explorer im Instances-Subknoten von Amazon EC2 das Kontextmenü (Rechtsklick)und wählen Sie View (Anzeigen) aus. Daraufhin zeigt das AWS-Toolkit die Liste der Amazon EC2Instances an, die mit dem aktiven Konto verknüpft sind. Möglicherweise müssen Sie die SchaltflächeRefresh (Aktualisieren) wählen, damit die neue Instance angezeigt wird. Wenn die Instance zum erstenMal angezeigt wird, kann sie sich noch wenige Minuten im ausstehenden Modus befinden. Nach einpaar Minuten wechselt sie jedoch in einen Ausführungsmodus.

Herstellen einer Verbindung mit einer Amazon EC2InstanceSie können Windows Remote Desktop verwenden, um eine Verbindung mit einer Windows Server-Instance herzustellen. Für die Authentifizierung haben Sie die Möglichkeit, mit dem AWS Toolkit dasAdministratorpasswort für die Instance abzurufen, oder Sie können einfach das mit der Instance verknüpfte,gespeicherte Schlüsselpaar verwenden. Im folgenden Verfahren wird das gespeicherte Schlüsselpaarverwendet.

So stellen Sie eine Verbindung zur Windows Server-Instance unter Verwendung von Windows RemoteDesktop her

1. Klicken Sie in der EC2 Instance-Liste mit der rechten Maustaste auf die Windows Server-Instance, mitder Sie sich verbinden möchten. Wählen Sie aus dem Kontextmenü Open Remote Desktop (RemoteDesktop öffnen).

Wenn Sie sich mit dem Administratorpasswort authentifizieren möchten, müssen Sie hierfür GetWindows Passwords (Windows-Passwörter abrufen) wählen.

EC2 Instance-Kontextmenü2. Wählen Sie im Dialogfeld Open Remote Desktop (Remote Desktop öffnen) die Option Use EC2 keypair

to log on (EC2-Schlüsselpaar für Anmeldung verwenden) und dann OK.

Wenn Sie kein Schlüsselpaar mit dem AWS Toolkit gespeichert haben, geben Sie die PEM-Datei an, dieden privaten Schlüssel enthält.

Dialogfeld "Open Remote Desktop (Remotedesktop öffnen)"3. Das Fenster Remote Desktop öffnet sich. Sie müssen sich nicht anmelden, da die Authentifizierung

mit dem Schlüsselpaar erfolgt ist. Ihre Sitzung wird als Administrator in der Amazon EC2 Instanceausgeführt.

Wenn nce erst kürzlich gestartet wurde und Sie keine Verbindung herstellen können, gibt es dafür zweimögliche Ursachen:• Der Remote Desktop Service ist noch nicht in Betrieb. Warten Sie einige Minuten und versuchen Sie

es dann erneut.• Die Passwortinformationen wurden noch nicht in die Instance übertragen. In diesem Fall wird eine

Meldung ähnlich der Folgenden wird angezeigt.

11

Page 16: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBeenden einer Amazon EC2 Instance.

Passwort noch nicht verfügbar

In der folgenden Abbildung ist ein Benutzer zu sehen, der über Remote Desktop als Administratorverbunden ist.

Remotedesktop

Beenden einer Amazon EC2 Instance.Sie können eine laufende Amazon EC2 Instance in Visual Studio unter Verwendung des AWS Toolkitstoppen oder beenden. Um die Instance beenden zu können, muss die EC2 Instance ein Amazon EBS-Volume verwenden. Wenn die EC2 Instance nicht mit einem Amazon EBS-Volume ausgeführt wird, stehtIhnen lediglich die Option zur Verfügung, die Instance zu beenden.

Wenn Sie die Instance stoppen, werden auf dem EBS-Volume gespeicherte Daten beibehalten. Wenn Siedie Instance beenden, gehen alle Daten auf dem lokalen Speichergerät der Instance verloren. In beidenFällen (Stoppen oder Beenden) wird Ihnen ab diesem Zeitpunkt keine Gebühren mehr für die EC2 Instanceberechnet. Wenn Sie eine Instance stoppen, wird Ihnen jedoch weiterhin der EBS-Speicher in Rechnunggestellt, der nach dem Stoppen der Instance bestehen bleibt.

Eine weitere Möglichkeit zum Beenden einer Instanz besteht darin, mit Remote Desktop eineVerbindung mit der Instance herzustellen und dann aus dem Windows Start-Menü den Befehl Shutdown(Herunterfahren) zu verwenden. Sie können die Instance so konfigurieren, dass sie bei diesem Szenarioentweder gestoppt oder beendet wird.

So stoppen Sie eine Amazon EC2 Instance

1. Erweitern Sie im AWS Explorer den Knoten Amazon EC2, öffnen Sie das Kontextmenü (Rechtsklick) fürInstances und wählen Sie dann View (Anzeigen) aus. Klicken Sie in der Liste Instances mit der rechtenMaustaste auf die Instanz, die Sie stoppen möchten, und wählen Sie aus dem Kontextmenü Stop(Anhalten) aus. Wählen Sie Yes (Ja) aus, um zu bestätigen, dass Sie die Instance stoppen möchten.

2. Wählen Sie oben in der Liste Instances die Option Refresh (Aktualisieren), damit die Statusänderung derAmazon EC2 instance angezeigt wird. Da die Instance eher gestoppt als beendet wurde, ist das mit derInstance verknüpfte EBS-Volume noch aktiv.

Beendete Instances bleiben sichtbar

Wenn Sie eine Instance beenden, bleibt diese weiterhin in der Instance-Liste neben den laufendenoder gestoppten Instances sichtbar. Irgendwann fordert AWS diese Instances wieder zurück und sieverschwinden aus der Liste. Beendete Instances werden Ihnen nicht in Rechnung gestellt.

So legen Sie das Verhalten einer EC2 Instance beim Herunterfahren fest

Mit dem AWS Toolkit können Sie festlegen, ob eine Amazon EC2-Instance gestoppt oder beendet werdensoll, wenn im Start-Menü Shutdown (Herunterfahren) ausgewählt wird.

1. Klicken Sie in der Liste Instances mit der rechten Maustaste auf eine Amazon EC2 Instance und wählenSie dann Change shutdown behavior (Verhalten beim Herunterfahren ändern) aus.

Menüelement Change Shutdown Behavior (Verhalten beim Herunterfahren ändern)2. Wählen Sie im Dialogfeld Change Shutdown Behavior (Verhalten beim Herunterfahren ändern) in der

Dropdown-Liste Shutdown Behavior (Verhalten beim Herunterfahren) die Option Stop (Anhalten) oderTerminate (Beenden) aus.

12

Page 17: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchVerwaltung von Amazon ECS-Instances

Verwaltung von Amazon ECS-InstancesAWS Explorer bietet eine detaillierte Ansicht der Amazon Elastic Container Service (Amazon ECS)-Cluster und Container-Repositorys. Sie können Cluster- und Container-Details über die Visual Studio-Entwicklungsumgebung erstellen, löschen und verwalten.

Ändern von Service-EigenschaftenSie können Service-Details, Service-Ereignisse und Service-Eigenschaften in der Cluster-Ansicht anzeigen.

1. Öffnen Sie im AWS Explorer das Kontextmenü (Rechtsklick) für den zu verwaltenden Cluster, undwählen Sie dann View (Anzeigen) aus.

2. Klicken Sie in der ECS-Cluster-Ansicht auf Services auf der linken Seite, und klicken Sie dann aufder Registerkarte Details in der Details-Ansicht. Sie können auf Events (Ereignisse) klicken, umEreignismeldungen anzuzeigen, und auf Deployments (Bereitstellungen), um den Bereitstellungsstatusanzuzeigen.

3. Klicken Sie auf Edit (Bearbeiten). Sie können die gewünschte Aufgabenanzahl und den minimalen undmaximalen Prozentsatz fehlerfreier Aufgaben ändern.

4. Klicken Sie auf Save (Speichern), um die Änderungen zu übernehmen oder Cancel (Abbrechen), um zuvorhandenen Werten zurückzukehren.

Beenden einer AufgabeIn der Cluster-Ansicht können Sie den aktuellen Status von Aufgaben anzeigen und eine oder mehrereAufgaben beenden.

So beenden Sie eine Aufgabe

1. Öffnen Sie im AWS Explorer das Kontextmenü (Rechtsklick) für den Cluster, der zu beendendeAufgaben enthält, und wählen Sie dann View (Anzeigen) aus.

2. Klicken Sie in der ECS-Cluster-Ansicht auf Tasks (Aufgaben) auf der linken Seite.3. Stellen Sie sicher, dass Desired Task Status (Gewünschter Aufgabenstatus) auf Running gesetzt ist.

Wählen Sie die einzelnen Aufgaben aus, die beendet werden sollen, und klicken Sie dann auf Stop(Beenden) oder klicken Sie auf Stop All (Alle beenden), um alle ausgeführten Aufgaben auszuwählenund zu beenden.

4. Klicken Sie im Dialogfeld Stop Tasks (Aufgaben anhalten) auf Yes (Ja).

Löschen eines ServiceÜber die Cluster-Ansicht können Sie Services aus einem Cluster löschen.

So löschen Sie einen Cluster-Service

1. Öffnen Sie im AWS Explorer das Kontextmenü (Rechtsklick) für den Cluster, der einen zu löschendenService enthält, und wählen Sie dann View (Anzeigen) aus.

2. Klicken Sie in der ECS-Cluster-Ansicht auf Services auf der linken Seite, und klicken Sie dann auf Delete(Löschen).

3. Wenn es einen Load Balancer und eine Zielgruppe in Ihrem Cluster gibt, können Sie diese im DialogfeldDelete Cluster (Cluster löschen) löschen. Sie werden nicht verwendet, wenn der Service gelöscht wird.

4. Wählen Sie im Dialogfeld Delete Cluster (Cluster löschen) die Option OK aus. Wenn der Cluster gelöschtwird, wird er aus dem AWS Explorer entfernt.

13

Page 18: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchLöschen eines Clusters

Löschen eines ClustersSie können einen Amazon Elastic Container Service-Cluster aus dem AWS Explorer löschen.

Löschen eines Clusters

1. Öffnen Sie im AWS Explorer das Kontextmenü (rechte Maustaste) für den Cluster, den Sie löschenmöchten, unter dem Knoten Clusters (Cluster) von Amazon ECS, und wählen Sie dann Delete(Löschen).

2. Wählen Sie im Dialogfeld Delete Cluster die Option OK aus. Wenn der Cluster gelöscht wird, wird er ausdem AWS Explorer entfernt.

Erstellen eines RepositorysSie können im AWS Explorer ein Amazon Elastic Container Registry-Repository erstellen.

So erstellen Sie ein Repository

1. Öffnen Sie im AWS Explorer das Kontextmenü (rechte Maustaste) des Knotens Repositories(Repositorys) unter Amazon ECS und wählen Sie dann Create Repository (Repository erstellen).

2. Geben Sie im Dialogfeld Create Repository (Repository erstellen) einen Namen für ein Repository einund wählen Sie dann OK aus.

Löschen eines RepositorysSie können im AWS Explorer ein Amazon Elastic Container Registry-Repository löschen.

So löschen Sie ein Repository

1. Öffnen Sie im AWS Explorer das Kontextmenü (rechte Maustaste) des Knotens Repositories(Repositorys) unter Amazon ECS und wählen Sie dann Delete Repository (Repository löschen).

2. Im Dialogfeld Delete Repository (Repository löschen) können Sie das Repository auch dann löschen,wenn es Images enthält. Andernfalls wird es nur gelöscht werden, wenn es leer ist. Klicken Sie auf Yes(Ja).

Verwalten von Sicherheitsgruppen im AWS ExplorerDas Toolkit for Visual Studio ermöglicht Ihnen das Erstellen und Konfigurieren von Sicherheitsgruppen, dieSie mit Amazon Elastic Compute Cloud (Amazon EC2) Instances und AWS CloudFormation verwendenkönnen. Wenn Sie Amazon EC2 Instances starten oder eine Anwendung auf AWS CloudFormationbereitstellen, geben Sie eine Sicherheitsgruppe an, die mit den Amazon EC2 Instances verknüpft werdensoll. (Bei der Bereitstellung auf AWS CloudFormation werden Amazon EC2 Instances erstellt.)

Eine Sicherheitsgruppe ist wie eine Firewall für eingehenden Netzwerkverkehr. Mit der Sicherheitsgruppewird angegeben, welche Netzwerkverkehrstypen auf einer Amazon EC2 Instance zulässig sind. Siekönnen auch festlegen, dass nur eingehender Datenverkehr von bestimmten IP-Adressen oder nur vonangegebenen Benutzern oder anderen Sicherheitsgruppen akzeptiert wird.

Erstellen einer SicherheitsgruppeIn diesem Abschnitt erstellen Sie eine Sicherheitsgruppe. Für die Sicherheitsgruppe sind nach ihrerErstellung noch keine Berechtigungen konfiguriert. Das Konfigurieren von Berechtigungen erfolgt übereinen zusätzlichen Arbeitsschritt.

14

Page 19: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchHinzufügen von Berechtigungen zu einer Sicherheitsgruppe

So erstellen Sie eine Sicherheitsgruppe

1. Öffnen Sie im AWS Explorer unter dem Amazon EC2-Knoten das Kontextmenü (Rechtsklick) auf demSecurity Groups (Sicherheitsgruppen)-Knoten und wählen Sie dann View (Anzeigen).

2. Wählen Sie auf der Registerkarte EC2 Security Groups (EC2-Sicherheitsgruppen) die Option CreateSecurity Group (Sicherheitsgruppe erstellen).

3. Geben Sie im Dialogfeld Create Security Group (Sicherheitsgruppe erstellen) einen Namen und eineBeschreibung für die Sicherheitsgruppe ein und wählen Sie dann OK aus.

Hinzufügen von Berechtigungen zu einerSicherheitsgruppeIn diesem Abschnitt werden Berechtigungen für die Sicherheitsgruppe hinzugefügt, um Web-Datenverkehrüber HTTP- und HTTPS-Protokolle zuzulassen. Sie können auch anderen Computern erlauben, sichmithilfe des Windows Remote Desktop Protocol (RDP) zu verbinden.

So fügen Sie einer Sicherheitsgruppe Berechtigungen hinzu

1. Wählen Sie auf der Registerkarte EC2 Security Groups (EC2-Sicherheitsgruppen) eineSicherheitsgruppe aus und klicken Sie dann auf die Schaltfläche Add Permission (Berechtigunghinzufügen).

2. Wählen Sie im Dialogfeld Add IP Permission (IP-Berechtigung hinzufügen) das Optionsfeld Protocol,Port and Network (Protokoll, Port und Netzwerk) und dann aus der Dropdown-Liste Protocol (Protokoll)die Option HTTP. Der Portbereich stellt sich automatisch auf Port 80 ein (Standard-Port für HTTP).Das Feld Source CIDR hat die Standardeinstellung 0.0.0.0/0, womit festgelegt wird, dass HTTP-Netzwerkverkehr von allen externen IP-Adressen akzeptiert wird. Klicken Sie auf OK.

Öffnen Sie Port 80 (HTTP) für diese Sicherheitsgruppe3. Wiederholen Sie diesen Vorgang für HTTPS und RDP. Ihre Sicherheitsgruppen-Berechtigungen sollten

jetzt wie folgt aussehen:

Sie können auch Berechtigungen in der Sicherheitsgruppe konfigurieren, indem Sie eine Benutzer-IDund einen Sicherheitsgruppennamen angeben. In diesem Fall akzeptieren Amazon EC2 Instances indieser Sicherheitsgruppe eingehenden Netzwerkverkehr von Amazon EC2 Instances in der angegebenenSicherheitsgruppe. Sie müssen auch die Benutzer-ID angeben, um den Sicherheitsgruppennameneindeutig zu machen. Die Namen von Sicherheitsgruppen müssen nicht in AWS insgesamt einzigartig sein.Weitere Informationen zu Sicherheitsgruppen erhalten Sie unter EC2 documentation.

Erstellen eines AMI aus einer EC2 InstanceSie können in der Amazon EC2 Instances (Amazon EC2-Instances)-Ansicht Amazon Machine Images(AMIs) aus laufenden oder gestoppten Instances erstellen.

So erstellen Sie ein AMI aus einer Instance:

1. Klicken Sie mit der rechten Maustaste auf die Instance, die Sie als Grundlage für ein AMI verwendenmöchten, und wählen Sie Create Image (Image erstellen) aus dem Kontextmenü.

Kontextmenü Create Image (Image erstellen)2. Geben Sie im Dialogfeld Create Image (Image erstellen) einen einzigartigen Namen und eine

Beschreibung ein und wählen Sie dann Create Image (Image erstellen) aus.

Dialogfeld Create Image (Image erstellen)

15

Page 20: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchStartberechtigungen für ein

Amazon Machine Image festlegen

Es kann einige Minuten dauern, bis das AMI erstellt ist. Nach der Erstellung erscheint es in der AnsichtAMIs im AWS Explorer. Um diese Ansicht anzuzeigen, doppelklicken Sie im AWS Explorer auf denAmazon EC2 | AMIs-Knoten. Wählen Sie in der Dropdown-Liste Viewing (Anzeigen) die Option OwnedBy Me (In meinem Besitz) aus, um Ihre AMIs anzuzeigen. Möglicherweise müssen Sie die SchaltflächeRefresh (Aktualisieren) wählen, damit das AMI angezeigt wird. Wenn das AMI zum ersten Mal angezeigtwird, kann es sich noch kurze Zeit im ausstehenden Modus befinden. Nach ein paar Minuten wechselt esjedoch in einen verfügbaren Zustand.

Liste der erstellten AMIs

Startberechtigungen für ein Amazon Machine Imagefestlegen

In der Ansicht AMIs im AWS Explorer haben Sie die Möglichkeit, Startberechtigungen für Ihre AmazonMachine Images (AMI) einzurichten. Sie können das Dialogfeld Set AMI Permissions (AMI-Berechtigungenfestlegen) verwenden, um Berechtigungen von AMIs zu kopieren.

So richten Sie Berechtigungen für ein AMI ein:

1. Öffnen Sie in der Ansicht AMIs im AWS Explorer das Kontextmenü (Rechtsklick) für ein AMI und wählenSie dann Edit Permission (Berechtigungen bearbeiten) aus.

2. Im Dialogfeld Set AMI Permissions (AMI-Berechtigungen festlegen) sind drei Optionen verfügbar:• Wählen Sie Add (Hinzufügen), um eine Startberechtigung zu gewähren, und geben Sie die

Kontonummer für den AWS-Benutzer ein, an den Sie diese Berechtigung vergeben.• Um einem AWS-Benutzer die Startberechtigung wieder zu entziehen, wählen Sie dessen

Kontonummer und dann Remove (Entfernen).• Wenn Sie Berechtigungen von einem AMI auf ein anderes kopieren möchten, wählen Sie ein AMI aus

der Liste aus und klicken dann auf Copy from (Kopieren von). Die Benutzer, die über Berechtigungenfür ausgewählte AMI verfügen, erhalten Startberechtigungen für das aktuelle AMI. Sie können diesenVorgang mit anderen AMIs in der Liste Copy-from (Kopieren von) wiederholen, um Berechtigungenvon mehreren AMIs auf das Ziel-AMI zu kopieren.

Die Liste Copy-from (Kopieren von) enthält nur die AMIs des Kontos, das zum Zeitpunkt der Anzeigeder AMIs-Ansicht im AWS Explorer aktiv war. Folglich werden in der Liste Copy-from (Kopieren von)möglicherweise gar keine AMIs angezeigt, wenn das aktive Konto keine weiteren AMIs besitzt.

Dialogfeld Copy AMI permissions (AMI-Berechtigungen kopieren)

Amazon Virtual Private Cloud (VPC)Mit Amazon Virtual Private Cloud (Amazon VPC) können Sie Amazon Web Services (AWS)-Ressourcenin einem virtuellen Netzwerk starten, das Sie definiert haben. Dieses virtuelle Netzwerk entspricht einemherkömmlichen Netzwerk, wie Sie es in Ihrem Rechenzentrum betreiben, kann jedoch die Vorzüge derskalierbaren Infrastruktur von AWS nutzen. Weitere Informationen finden Sie im Amazon VPC User Guide.

Das Toolkit for Visual Studio ermöglicht Entwicklern den Zugriff auf VPC-Funktionalität, die auch über dieAWS-Managementkonsole verfügbar gemacht wird, aber aus der Visual Studio-Entwicklungsumgebungheraus. Der Knoten Amazon VPC im AWS Explorer umfasst Unterknoten für die folgenden Bereiche.

• VPCs• Subnetze• Elastische IP-Adressen

16

Page 21: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchErstellen einer öffentlichen/privaten VPC fürdie Bereitstellung mit AWS Elastic Beanstalk

• Internet-Gateways• Netzwerk-ACLs• Routing-Tabellen• Sicherheitsgruppen

Erstellen einer öffentlichen/privaten VPC für dieBereitstellung mit AWS Elastic BeanstalkIn diesem Abschnitt wird beschrieben, wie Sie eine Amazon VPC mit öffentlichen und privaten Subnetzenerstellen. Das öffentliche Subnetz enthält eine Amazon EC2 Instance, die eine Network AddressTranslation (NAT) durchführt, damit Instances im privaten Subnetz mit dem öffentlichen Internetkommunizieren können. Die zwei Subnetze müssen sich in derselben Availability Zone (AZ) befinden.

Dies ist die minimal erforderliche VPC-Konfiguration für die Bereitstellung einer AWS Elastic Beanstalk-Umgebung in einer VPC. In diesem Szenario befinden sich die Elastic Load Balancing Instances, die IhreAnwendung hosten, im privaten Subnetz. Der Load Balancer von Amazon EC2, der den eingehendenDatenverkehr an Ihre Anwendung weiterleitet, befindet sich im öffentlichen Subnetz.

Weitere Informationen zur Network Address Translation (NAT) finden Sie im Amazon Virtual Private CloudUser Guide unter NAT Instances. Ein Beispiel für die Konfiguration der Bereitstellung für die Verwendungeiner VPC finden Sie unter Deploying to Elastic Beanstalk (p. 19).

So erstellen Sie eine öffentliche/private VPC

1. Öffnen Sie im AWS Explorer im Knoten Amazon VPC den Unterknoten VPCs und wählen Sie CreateVPC (VPC erstellen) aus.

2. Konfigurieren Sie die VPC wie folgt:• Geben Sie einen Namen für Ihre VPC ein.• Aktivieren Sie die Kontrollkästchen With Public Subnet (Mit öffentlichem Subnetz) und With Private

Subnet (Mit privatem Subnetz).• Wählen Sie in der Dropdown-Liste Availability Zone für jedes Subnetz eine Availability Zone aus.

Verwenden Sie unbedingt dieselbe AZ für beide Subnetze.• Geben Sie für das private Subnetz in NAT Key Pair Name (NAT-Schlüsselpaarname) ein

Schlüsselpaar an. Dieses Schlüsselpaar wird für die Amazon EC2-Instance verwendet, die dieNetwork Address Translation vom privaten Subnetz in das öffentliche Internet durchführt.

• Aktivieren Sie das Kontrollkästchen Configure default security group to allow traffic to NAT(Datenverkehrt zum NAT für Standardsicherheitsgruppe zulassen).

Geben Sie einen Namen für Ihre VPC ein. Aktivieren Sie die Kontrollkästchen With Public Subnet(Mit öffentlichem Subnetz) und With Private Subnet (Mit privatem Subnetz). Wählen Sie in derDropdown-Liste Availability Zone für jedes Subnetz eine Availability Zone aus. Verwenden Sie unbedingtdieselbe AZ für beide Subnetze. Geben Sie für das private Subnetz in NAT Key Pair Name (NAT-Schlüsselpaarname) ein Schlüsselpaar an. Dieses Schlüsselpaar wird für die Amazon EC2 Instanceverwendet, die die Network Address Translation vom privaten Subnetz in das öffentliche Internetdurchführt. Aktivieren Sie das Kontrollkästchen Configure default security group to allow traffic to NAT(Datenverkehrt zum NAT für Standardsicherheitsgruppe zulassen).

Klicken Sie auf OK.

Sie können die neue VPC auf der Registerkarte VPCs im AWS Explorer anzeigen.

Es dauert einen Moment, bis die NAT-Instance gestartet wird. Wenn sie verfügbar ist, können Sie sieanzeigen, indem Sie den Knoten Amazon EC2 im AWS Explorer erweitern und dann den UnterknotenInstances öffnen.

17

Page 22: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen mit dem AWS Toolkit

Es wird automatisch ein AWS Elastic Beanstalk (Amazon EBS)-Volume für die NAT-Instance erstellt.Weitere Informationen zu Elastic Beanstalk finden Sie im Amazon EC2 User Guide for Linux Instancesunter AWS Elastic Beanstalk (EBS).

Wenn Sie eine Anwendung in einer AWS Elastic Beanstalk-Umgebung bereitstellen (p. 19) und dasStarten der Umgebung in einer VPC auswählen, füllt das Toolkit das Dialogfeld Publish to AWS (Für AWSveröffentlichen) mit den Konfigurationsdaten für Ihre VPC aus.

Das Toolkit trägt nur Informationen von VPCs in das Dialogfeld ein, die im Toolkit erstellt wurden, nicht vonVPCs, die über die AWS-Managementkonsole erstellt wurden. Der Grund hierfür ist, dass das Toolkit beimErstellen einer VPC die Komponenten der VPC mit Tags versieht, um auf ihre Daten zugreifen zu können.

Der folgende Screenshot vom Bereitstellungs-Assistenten zeigt ein Beispiel für ein Dialogfeld mit Wertenvon einer im Toolkit erstellten VPC.

So löschen Sie eine VPC

Zum Löschen der VPC müssen Sie zunächst alle Amazon EC2 Instances in der VPC beenden.

1. Wenn Sie eine Anwendung in der VPC in einer AWS Elastic Beanstalk-Umgebung bereitgestellthaben, löschen Sie diese Umgebung. Dadurch werden alle Elastic Load Balancing Instances, die IhreAnwendung hosten, und der Amazon EC2-Load Balancer gelöscht.

Wenn Sie versuchen, die Instances, auf denen Ihre Anwendung gehostet wird, direkt zu beenden,ohne die Umgebung zu löschen, erstellt der Auto Scaling-Service automatisch neue Instances, um diegelöschten zu ersetzen. Weitere Informationen finden Sie im Auto Scaling Developer Guide.

2. Löschen Sie die NAT-Instance für die VPC.

Sie müssen das Amazon EBS-Volume, das der NAT-Instance zugeordnet ist, nicht löschen, um die VPCzu löschen. Wenn Sie das Volume jedoch nicht löschen, wird es weiterhin in Rechnung gestellt, auchwenn Sie die NAT-Instance und die VPC gelöscht haben.

3. Wählen Sie auf der Registerkarte VPC den Link Delete (Löschen) aus, um die VPC zu löschen.4. Wählen Sie im Dialogfeld Delete VPC (VPC löschen) die Option OK aus.

Bereitstellen mit dem AWS ToolkitDas Toolkit for Visual Studio unterstützt die Bereitstellung von Anwendungen auf AWS Elastic Beanstalk-Containern oder AWS CloudFormation-Stacks.

• Unter Deploying to Elastic Beanstalk (p. 19) wird beschrieben, wie Sie die Visual Studio IDE zumBereitstellen von Anwendungen auf Elastic Beanstalk nutzen.

• Unter Deploying to Amazon EC2 Container Service (p. 42) wird beschrieben, wie Sie die Visual StudioIDE zum Bereitstellen von Anwendungen in Amazon ECS nutzen.

• Unter Standalone Deployment Tool (p. 49) wird beschrieben, wie Sie das Standalone-Bereitstellungstool nutzen, um entweder Elastic Beanstalk-Container oder AWS CloudFormation-Stacksüber ein Befehlsfenster bereitzustellen.

Note

Wenn Sie Visual Studio Express Edition verwenden:

• können Sie das Standalone Deployment Tool (p. 49) nutzen, um Anwendungen auf ElasticBeanstalk-Containern bereitzustellen.

• Sie können die Docker-CLI nutzen, um Anwendungen in Amazon ECS-Containernbereitzustellen.

18

Page 23: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

• können Sie die AWS-Managementkonsole nutzen, um Anwendungen auf Elastic Beanstalk-Containern bereitzustellen.

Für Elastic Beanstalk-Bereitstellungen erstellen Sie zunächst ein Web-Bereitstellungspaket.Weitere Informationen finden Sie unter Gewusst wie: Erstellen eines Webbereitstellungspaketsin Visual Studio. Für eine Amazon ECS-Bereitstellung benötigen Sie ein Docker-Image. WeitereInformationen finden Sie unter Visual Studio Tools for Docker.

Themen• Bereitstellen in Elastic Beanstalk (p. 19)• Bereitstellen für einen Amazon EC2-Container-Service (p. 42)• Standalone-Bereitstellungstool (p. 49)

Bereitstellen in Elastic BeanstalkAWS Elastic Beanstalk ist ein Service, der den Prozess der Bereitstellung von AWS-Ressourcen für IhreAnwendung vereinfacht. Elastic Beanstalk bietet die gesamte AWS-Infrastruktur, die für die BereitstellungIhrer Anwendung erforderlich ist. Diese Infrastruktur umfasst:

• Amazon EC2 Instances, die als Host für die ausführbaren Dateien und die Inhalte Ihrer Anwendungdienen.

• Eine Auto Scaling-Gruppe für die entsprechende Anzahl von Amazon EC2 Instances zur UnterstützungIhrer Anwendung.

• Ein Elastic Load Balancing Load Balancer, der eingehenden Datenverkehr an die Amazon EC2 Instancemit der größten Bandbreite weiterleitet.

Das Toolkit for Visual Studio bietet einen Assistenten, der die Veröffentlichung von Anwendungen überElastic Beanstalk vereinfacht. Dieser Assistent wird in den folgenden Abschnitten beschrieben.

Weitere Informationen über Elastic Beanstalk finden Sie in der Elastic Beanstalk documentation.

Themen• Bereitstellen einer traditionellen ASP.NET-Anwendung in Elastic Beanstalk (p. 19)• Bereitstellen einer ASP.NET Core-Anwendung in Elastic Beanstalk (p. 24)• So geben Sie die AWS-Sicherheitsanmeldeinformationen für Ihre Anwendung an (p. 26)• So veröffentlichen Sie Ihre Anwendung in einer Elastic Beanstalk Umgebung neu (p. 26)• Benutzerdefinierte Elastic Beanstalk-Anwendungsbereitstellungen (p. 27)• Anpassung von ASP.NET Core Elastic Beanstalk-Bereitstellungen (p. 28)• Unterstützung mehrerer Anwendungen für .NET und Elastic Beanstalk (p. 31)• Bereitstellung für Elastic Beanstalk (Legacy) (p. 33)• Bereitstellen in AWS CloudFormation (Legacy) (p. 38)

Bereitstellen einer traditionellen ASP.NET-Anwendung in ElasticBeanstalkIn diesem Abschnitt wird beschrieben, wie Sie mit dem Publish to Elastic Beanstalk (Für Elastic Beanstalkbereitstellen)-Assistenten, der Teil des Toolkit for Visual Studio ist, eine Anwendung über ElasticBeanstalk bereitstellen. Als Übung können Sie eine Instance von einem in Visual Studio integriertenWebanwendungs-Starterprojekt oder Ihr eigenes Projekt verwenden.

19

Page 24: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

Note

Diese Thema bietet Informationen zur Bereitstellung herkömmlicher ASP.NET-Anwendungenmit dem Assistenten. Der Assistent unterstützt auch die Bereitstellung von ASP.NET Core-Anwendungen. Weitere Informationen zu ASP.NET-Core finden Sie unter Deploying an ASP.NETCore Application to Elastic Beanstalk (p. 24).Note

Bevor Sie den Publish to Elastic Beanstalk (Für Elastic Beanstalk bereitstellen)-Assistentenverwenden können, müssen Sie Web Deploy herunterladen und installieren. Der Assistent nutztWeb Deploy, um Internet Information Services (IIS)-Webservern Webanwendungen und Websitesbereitzustellen.

So erstellen Sie ein Beispiel-Webanwendungs-Starterprojekt

1. Wählen Sie im File (Datei)-Menü von Visual Studio New (Neu) aus und dann Project.2. Erweitern Sie in der Navigationsbereich des Dialogfelds New Project (Neues Projekt) die Option Installed

(Installiert), erweitern Sie Templates (Vorlagen) und Visual C#, und wählen Sie dann Web aus.3. Wählen Sie aus der Liste der Web-Projektvorlagen eine Vorlage, in deren Beschreibung die Wörter Web

und Application enthalten sind. Wählen Sie für dieses Beispiel ASP.NET Web Forms Application(ASP.NET Web Forms-Anwendung) aus.

4. Geben Sie im Feld Name die Zeichenfolge AEBWebAppDemo ein.5. Geben Sie im Feld Location (Speicherort) den Pfad zu einem Projektmappenordner auf Ihrem

Entwicklungscomputer ein oder klicken Sie auf Browse (Durchsuchen), um einen Projektordnerauszuwählen. Klicken Sie anschließend auf Select Folder (Ordner auswählen).

6. Bestätigen Sie die Auswahl des Felds Create directory for solution (Verzeichnis für Lösung erstellen).Prüfen Sie, ob in der Dropdown-Liste Solution (Lösung) die Option Create new solution (Neue Lösungerstellen) ausgewählt ist und klicken Sie dann auf OK. Visual Studio erstellt, basierend auf derASP.NET-Web Forms Application-Projektvorlage, eine Projektmappe und ein Projekt. Anschließendzeigt Visual Studio den Projektmappen-Explorer an, in dem die neue Lösung und das Projekt zu sehensind.

So stellen Sie mit dem "Publish to Elastic Beanstalk"-Assistenten eine Anwendungbereit

1. Öffnen Sie im Projektmappen-Explorer das Kontextmenü (Rechtsklick) für den ProjektordnerAEBWebAppDemo des Projekts, das Sie im vorangegangenen Abschnitt erstellt haben, oder öffnen Siedas Kontextmenü des Projektordners Ihrer eigenen Anwendung und wählen Sie Publish to AWS ElasticBeanstalk.

Der Publish to Elastic Beanstalk (Veröffentlichen zu Elastic Beanstalk)-Assistent wird angezeigt.2. Wählen Sie in Profil aus der Dropdown-Liste Account profile to use for deployment (Zur Bereitstellung zu

verwendendes Kontoprofil) das AWS-Kontoprofil aus, das Sie für die Bereitstellung nutzen möchten.

Wenn Sie ein AWS-Konto haben, das Sie verwenden möchten, aber noch kein AWS-Kontoprofil dafürerstellt haben, können Sie die Schaltfläche mit dem Plussymbol (+) wählen, um ein AWS-Kontoprofilhinzufügen.

3. Wählen Sie in der Dropdown-Liste Region die Region aus, für die Elastic Beanstalk die Anwendungbereitstellen soll.

4. In Deployment Target (Bereitstellungsziel) können Sie entweder Create a new application environment(Neue Anwendungsumgebung erstellen) wählen, um eine Anwendung zum ersten Mal bereitzustellen,oder Redeploy to an existing environment (Für eine bestehende Umgebung erneut bereitstellen),um eine bereits verwendete Anwendung erneut bereitzustellen. (Die vorherigen Bereitstellungenkönnen entweder mit dem Bereitstellungsassistenten ausgeführt worden sein oder mit dem StandaloneDeployment Tool (Standalone-Bereitstellungstool) (p. 49).) Wenn Sie Redeploy to an existing

20

Page 25: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

environment (Für eine bestehende Umgebung erneut bereitstellen) wählen, kann es zu Verzögerungenkommen, während der Assistent Informationen aus früheren Bereitstellungen abruft, die aktuellausgeführt werden.

Note

Für die Option Redeploy to an existing environment (Für eine bestehende Umgebung erneutbereitstellen) wählen Sie aus der Liste eine Umgebung aus und klicken auf Next (Weiter). DerAssistent bringt Sie dann direkt zur Seite Application Options (Anwendungsoptionen). Wenn Siezu dieser Route gehen möchten, befolgen Sie direkt die Anweisungen weiter unten in diesemAbschnitt, in denen die Verwendung der Seite Application Options (Anwendungsoptionenbeschrieben wird.

5. Wählen Sie Next (Weiter).6. Auf der Seite Application Environment (Anwendungsumgebung), im Bereich Application (Anwendung),

finden Sie in der Dropdown-Liste Name Standardnamensvorschläge für die Anwendung. Sie können denStandardnamen ändern, indem Sie aus der Dropdown-Liste einen anderen Namen auswählen.

7. Geben Sie im Bereich Environment (Umgebung) in der Dropdown-Liste Name einen Namen fürIhre Elastic Beanstalk-Umgebung ein. In diesem Kontext bezieht sich der Begriff Umgebung auf dieInfrastruktur, die Elastic Beanstalk für Ihre Anwendung bereitstellt. Möglicherweise wurde bereitsein Standardname in dieser Dropdown-Liste vorgeschlagen. Wenn nicht bereits ein Standard-Namevorgeschlagen wurde, können Sie einen eingeben oder aus der Dropdown-Liste auswählen, falls weitereNamen verfügbar sind. Der Umgebungsname darf nicht länger als 23 Zeichen sein.

8. Im Bereich URL wird im Feld eine Standard-Subdomäne von .elasticbeanstalk.com als URL fürIhre Webanwendung vorgeschlagen. Sie können die Standard-Subdomäne ändern, indem Sie einenneuen Subdomänen-Namen eingeben.

9. Wählen Sie Check Availability (Verfügbarkeit prüfen), um sicherzustellen, dass die URL für IhreWebanwendung nicht bereits verwendet wird.

10.Wenn die URL für Ihre Webanwendung verwendet werden kann, wählen Sie Next (Weiter).

1. Wählen Sie auf der Seite AWS Options (AWS-Optionen) im Bereich Amazon EC2 Launch Configurationaus der Dropdown-Liste Container type (Containertyp) einen Amazon Machine Image-Typ (AMI) aus, derfür Ihre Anwendung verwendet werden soll.

2. Geben Sie in der Dropdown-Liste Instance type (Instance-Typ) den zu verwendenden Amazon EC2Instance-Typ an. Für dieses Beispiel empfehlen wir, Micro zu verwenden. Dadurch werden die Kostenfür die Ausführung der Instance minimiert. Weitere Informationen über Amazon EC2-Kosten finden Sieauf der Seite Amazon EC2 — Preise.

3. Wählen Sie aus der Dropdown-Liste Key pair (Schlüsselpaar) ein Amazon EC2 Instance-Schlüsselpaarfür die Anmeldung bei der Instance aus, die für Ihre Anwendung genutzt wird.

4. Optional können Sie im Feld Use custom AMI (Angepasstes AMI verwenden) ein benutzerdefiniertesAMI festlegen, mit dem das in der Drop-down-Liste Container type angegebene AMI überschrieben wird.Weitere Informationen dazu, wie Sie ein benutzerdefiniertes AMI erstellen, finden Sie unter Verwendenvon benutzerdefinierten AMIs im AWS Elastic Beanstalk Developer Guide und unter Erstellen eines AMIaus einer EC2 Instance (p. 15).

5. Wenn Sie Ihre Instances in einer VPC starten möchten, können Sie hierfür das Feld Use a VPC (EineVPC verwenden) wählen.

6. Wenn Sie eine einzelne Amazon EC2 Instance starten und dann Ihre Anwendung darin bereitstellenmöchten, wählen Sie das Feld Single instance environment (Einzel-Instance-Umgebung).

Wenn Sie dieses Feld auswählen, erstellt Elastic Beanstalk zwar eine Auto Scaling-Gruppe, konfiguriertdiese jedoch nicht. Wenn Sie die Auto Scaling-Gruppe später konfigurieren möchten, können Sie diesmithilfe der AWS Management Console vornehmen.

7. Wenn Sie die Bedingungen, unter denen Ihre Anwendung in den Instances bereitgestellt wird,kontrollieren möchten, wählen Sie das Feld Enable Rolling Deployments (Roling-Bereitstellungen

21

Page 26: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

aktivieren) aus. Sie können dieses Feld nur auswählen, wenn das Feld Single instance environment(Einzel-Instance-Umgebung) deaktiviert ist.

8. Wenn Ihre Anwendung AWS-Services wie Amazon S3 und DynamoDB nutzt, sollten Sie am besten eineIAM-Rolle verwenden, um die Anmeldeinformationen bereitzustellen. Im Bereich Deployed ApplicationPermissions (Bereitstellte Anwendungsberechtigungen) können Sie entweder eine vorhandene IAM-Rolle wählen oder eine erstellen, die der Assistent dann für das Starten Ihrer Umgebung verwendet.Bei Anwendungen, die das AWS SDK for .NET nutzen, werden automatisch die von dieser IAM-Rollebereitgestellten Anmeldeinformationen verwendet, wenn eine Anforderung an einen AWS-Serviceerfolgt.

9. Wenn Ihre Anwendung auf eine Amazon RDS-Datenbank zugreift, wählen Sie aus der Dropdown-Listeim Bereich Relational Database Access (Relationaler Datenbanzugriff) die Felder neben einer AmazonRDS-Sicherheitsgruppe aus, die der Assistent dann aktualisiert, sodass Ihre Amazon EC2 Instances aufdie Datenbank zugreifen können.

10.Wählen Sie Next (Weiter).• Wenn Sie Use a VPC (Eine VPC verwenden) ausgewählt haben, wird die Seite VPC Options (VPC-

Optionen) angezeigt.• Wenn Sie Enable Rolling Deployments (Rolling-Bereitstellungen aktivieren) ausgewählt haben,

aber Use a VPC (VPC verwenden) deaktiviert ist, wird die Seite Rolling Deployments (Rolling-Bereitstellungen) angezeigt. Gehen Sie direkt zu den Anweisungen weiter unten in diesem Abschnitt,in denen die Verwendung der Seite Rolling Deployments (Rolling-Bereitstellungen) beschrieben wird.

• Wenn Sie Use a VPC (Eine VPC verwenden) oder Enable Rolling Deployments (Rolling-Bereitstellungen aktivieren) nicht ausgewählt haben, wird die Seite Application Options(Anwendungsoptionen) angezeigt. Gehen Sie direkt zu den Anweisungen weiter unten in diesemAbschnitt, in denen die Verwendung der Seite Application Options (Anwendungsoptionen)beschrieben wird.

11.Wenn Sie Use a VPC (Eine VPC verwenden) ausgewählt haben, geben Sie auf der Seite VPC Options(VPC-Optionen) die erforderlichen Informationen an, um Ihre Anwendung in einer VPC zu starten.

Die VPC muss bereits erstellt worden sein. Wenn Sie die VPC im Toolkit for Visual Studio erstellthaben, füllt das Toolkit for Visual Studio diese Seite für Sie mit Daten. Wenn Sie die VPC in der AWS-Managementkonsole erstellt haben, geben Sie die Informationen zu Ihrer VPC auf dieser Seite ein.

Wichtige Überlegungen für die Bereitstellung in einer VPC

• Ihre VPC muss über mindestens ein öffentliches und ein privates Subnetz verfügen.• Geben Sie in der Dropdown-Liste ELB Subnet das öffentliche Subnetz an. Das Toolkit for Visual Studio

stellt den Elastic Load Balancing-Load Balancer für Ihre Anwendung auf dem öffentlichen Subnetz zurVerfügung. Das öffentliche Subnetz ist mit einer Routing-Tabelle verknüpft, die über einen Eingangverfügt, welcher auf ein Internet-Gateway verweist. Sie können ein Internet-Gateway daran erkennen,dass seine ID mit igw- (z. B.: igw-83cddaex) beginnt. Öffentliche Subnetze, die Sie mit dem Toolkit forVisual Studio erstellen, können an ihren Tagwerten als öffentlich identifiziert werden.

• Geben Sie in der Dropdown-Liste Instances Subnet das private Subnetz an. Das Toolkit for Visual Studiostellt die Amazon EC2 Instances für Ihre Anwendung auf dem privaten Subnetz zur Verfügung.

• Die Amazon EC2 Instances für Ihre Anwendung kommunizieren aus dem privaten Subnetz mit demInternet. Diese Kommunikation läuft über eine Amazon EC2 Instance im öffentlichen Subnetz ab,die Netzwerkadressen (Network Address Translation, NAT) übersetzt. Um diese Kommunikation zuermöglichen, benötigen Sie eine VPC-Sicherheitsgruppe, die zulässt, dass Datenverkehr vom privatenSubnetz zur NAT-Instance fließt. Geben Sie diese VPC-Sicherheitsgruppe in der Dropdown-ListeSecurity Group an.

Weitere Informationen zur Bereitstellung einer Elastic Beanstalk-Anwendung für eine VPC finden Sie imAWS Elastic Beanstalk Developer Guide.

22

Page 27: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

1. Nachdem Sie alle Informationen auf der Seite VPC Options (VPC-Optionen) eingegeben haben, wählenSie Next (Weiter).• Wenn Sie Enable Rolling Deployments (Rolling-Bereitstellungen aktivieren) ausgewählt haben, wird

die Seite Rolling Deployments (Rolling-Bereitstellungen) angezeigt.• Wenn Sie Enable Rolling Deployments (Rolling-Bereitstellungen aktivieren) nicht ausgewählt

haben, ist die Seite Application Options (Anwendungsoptionen) zu sehen. Gehen Sie direkt zu denAnweisungen weiter unten in diesem Abschnitt, in denen die Verwendung der Seite ApplicationOptions (Anwendungsoptionen) beschrieben wird.

2. Wenn Sie Enable Rolling Deployments (Rolling-Bereitstellungen aktivieren) ausgewählt haben, gebenSie auf der Seite Rolling Deployments (Rolling-Bereitstellungen) Informationen zur Art und Weise ein,wie neue Versionen Ihrer Anwendungen in den Instances in einer lastverteilten Umgebung bereitgestelltwerden. Wenn beispielsweise vier Instances in Ihrer Umgebung vorhanden sind und Sie den Instance-Typ ändern möchten, können Sie die Umgebung so konfigurieren, dass zwei Instances gleichzeitiggeändert werden. So stellen Sie sicher, dass die Anwendung weiterhin ausgeführt wird, während dieÄnderungen vorgenommen werden.

3. Wählen Sie im Bereich Application Versions eine Option aus, mit der die Bereitstellungen entweder nacheinem Prozentsatz oder nach der Anzahl an gleichzeitigen Instances gesteuert werden. Geben Sie dengewünschten Prozentsatz bzw. die gewünschte Zahl an.

4. Optional können Sie auch im Bereich Environment Configuration das Feld auswählen, wenn Sie dieAnzahl an Instances festlegen möchten, die während Bereitstellungen weiter ausgeführt werden. WennSie dieses Feld auswählen, legen Sie entweder die maximale Anzahl an Instances fest, die gleichzeitiggeändert werden sollen, oder die Mindestanzahl an Instances, die gleichzeitig weiter ausgeführt werdensollen, oder beides.

5. Wählen Sie Next (Weiter).6. Geben Sie auf der Seite Application Options (Anwendungsoptionen) Informationen zum Build, den

Internet Information Services (IIS) und den Anwendungseinstellungen an.7. Wählen Sie im Bereich Build and IIS Deployment Settings (Build- und IIS-Bereitstellungseinstellungen)

aus der Dropdown-Liste Project build configuration (Projekt-Buildkonfiguration) die Ziel-Buildkonfiguration aus. Wenn der Assistent diese findet, wird Release (Version) angezeigt. Andernfallserscheint die aktive Konfiguration in dieser Box.

8. Wählen Sie aus der Dropdown-Liste App pool (App-Pool) die Version des für Ihre Anwendungerforderlichen .NET Framework aus. Die richtige .NET Framework-Version sollte bereits angezeigtwerden.

9. Wenn Sie eine 32-Bit-Anwendung haben, wählen Sie das Feld Enable 32-bit application (32-Bit-Anwendungen aktivieren).

10.Geben Sie im Feld App path (App-Pfad) den Pfad an, den IIS für die Bereitstellung der Anwendungverwenden soll. Standardmäßig ist Default Web Site/ angegeben, wobei es sich in der Regel um denPfad c:\inetpub\wwwroot handelt. Wenn Sie einen anderen Pfad als Default Web Site/ angeben,platziert der Assistent eine Umleitung im Pfad Default Web Site/, die auf den von Ihnen angegebenenPfad verweist.

11.Geben Sie im Bereich Application Settings (Anwendungseinstellungen) in das Feld Health checkURL (Zustandsprüfungs-URL) eine URL ein, die Elastic Beanstalk dann prüft und so feststellt, ob IhreWebanwendung noch reaktionsfähig ist. Diese URL hängt von der Root-Server-URL ab. Die Root-Server-URL ist standardmäßig festgelegt. Wenn die komplette URL beispielsweise example.com/site-is-up.html lautet, würden Sie Folgendes eingeben: /site-is-up.html.

12.Im Bereich für Key (Schlüssel) und Value können Sie alle Schlüssel- und Wertepaare festlegen, die Sieder Web.config-Datei Ihrer Anwendung hinzufügen möchten.

Note

Im Bereich für Key (Schlüssel) und Value (Wert) können Sie auch AWS-Anmeldeinformationenfestlegen, unter denen Ihre Anwendung ausgeführt werden soll. Davon raten wir jedoch ab.Stattdessen empfehlen wir Ihnen, in der Dropdown-Liste Identity and Access Management Role(Identity and Access Management-Rolle) auf der Seite AWS Options (AWS-Optionen) eine IAM-

23

Page 28: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

Rolle festzulegen. Wenn Sie jedoch AWS-Anmeldeinformationen anstelle einer IAM-Rolle fürdas Ausführen Ihrer Anwendung verwenden müssen, wählen Sie in der Zeile Key (Schlüssel)die Option AWSAccessKey aus. Geben Sie in der Zeile Value (Wert) den Zugriffsschlüssel ein.Wiederholen Sie diese Schritte für AWSSecretKey.

13.Wählen Sie Next (Weiter).14.Prüfen Sie auf der Seite Review (Prüfen) die Optionen, die Sie konfiguriert haben, und wählen Sie das

Feld Open environment status window when wizard closes (Umgebungsstatusfenster beim Schließendes Assistenten öffnen) aus.

15.Optional können Sie die Bereitstellungskonfiguration in einer Textdatei speichern, um diese dann mitdem standalone deployment tool (p. 49) zu verwenden. Speichern Sie die Konfiguration, indemSie Generate AWSDeploy configuration (AWSDeploy-Konfiguration generieren) und Choose File(Datei auswählen) wählen und dann eine Datei angeben, in der die Konfiguration gespeichert werdensoll. Sie können die Bereitstellungskonfiguration auch in einer Textdatei speichern, nachdem dieBereitstellung abgeschlossen ist. Öffnen Sie im AWS Explorer das Kontextmenü (rechte Maustaste) fürdie Bereitstellung und wählen Sie dann Safe Configuration (Konfiguration speichern) aus.

16.Wenn alles richtig ist, klicken Sie auf Deploy (Bereitstellen).

Note

Wenn Sie die Anwendung bereitstellen, werden im aktiven Konto Gebühren für die AWS-Ressourcen, die von der Anwendung verwendet werden, fällig.

In der Statusleiste von Visual Studio und im Fenster Output (Ausgabe) werden Informationen überdie Bereitstellung angezeigt. Dieser Vorgang kann einige Minuten dauern. Wenn die Bereitstellungabgeschlossen ist, wird im Fenster Output (Ausgabe) eine Bestätigung angezeigt.

17.Zum Löschen der Bereitstellung erweitern Sie im AWS Explorer den Elastic Beanstalk-Knoten, öffnendas Kontextmenü (Rechtsklick) für den Bereitstellungs-Subknoten und wählen dann Delete (Löschen).Das Löschen kann einige Minuten dauern.

Bereitstellen einer ASP.NET Core-Anwendung in ElasticBeanstalkAWS Elastic Beanstalk ist ein Service, der den Prozess der Bereitstellung von AWS-Ressourcen fürIhre Anwendung vereinfacht. AWS Elastic Beanstalk bietet die gesamte AWS-Infrastruktur, die für dieBereitstellung Ihrer Anwendung erforderlich ist.

Das Toolkit for Visual Studio unterstützt die Bereitstellung von ASP.NET Core-Anwendungen in AWSunter Verwendung von Elastic Beanstalk. ASP.NET Core ist die überarbeitete Version von ASP.NET miteiner modularisierten Architektur, dank der die Verwaltungsabhängigkeit auf ein Minimum reduziert wird.Außerdem optimiert ASP.NET Core Ihre Anwendung, sodass sie in der Cloud ausgeführt werden kann.

AWS Elastic Beanstalk vereinfacht die Bereitstellung von Anwendungen in einer Vielzahl vonverschiedenen Sprachen für AWS. Elastic Beanstalk unterstützt sowohl traditionelle ASP.NET-Anwendungen als auch ASP.NET Core-Anwendungen. In diesem Thema wird die Bereitstellung vonASP.NET-Core-Anwendungen beschrieben.

Verwenden des Bereitstellungsassistenten

Die einfachste Art, ASP.NET Core-Anwendungen auf Elastic Beanstalk bereitzustellen, ist mit Toolkit forVisual Studio.

Wenn Sie das Toolkit bereits für die Bereitstellung herkömmlicher ASP. NET-Anwendungen eingesetzthaben, werden Sie feststellen, dass der Ablauf mit ASP.NET Core ganz ähnlich ist. Die folgenden Schritteführen Sie durch den Bereitstellungsvorgang.

24

Page 29: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

Wenn Sie das Toolkit noch nie genutzt haben, müssen Sie nach dessen Installation zunächst Ihre AWS-Anmeldeinformationen mit dem Toolkit registrieren. Weitere Anweisungen diesbezüglich finden Sieunter How to Specify the AWS Security Credentials for Your Application (p. 26) für Visual Studio-Dokumentation.

Um eine ASP.NET Core-Webanwendung bereitzustellen, klicken Sie mit der rechten Maustaste imProjektmappen-Explorer auf das Projekt und wählen Publish to AWS... (Für AWS veröffentlichen ...) aus.

Wählen Sie auf der ersten Seite des Bereitstellungsassistenten für die Veröffentlichung in AWS ElasticBeanstalk die Option zur Erstellung einer neuen Elastic Beanstalk-Anwendung. Eine Elastic Beanstalk-Anwendung ist eine logische Sammlung von Elastic Beanstalk-Komponenten, einschließlich Umgebungen,Versionen und Umgebungskonfigurationen. Der Bereitstellungsassistent erzeugt eine Anwendung, diewiederum eine Sammlung von Anwendungsversionen und Umgebungen enthält. Die Umgebungenumfassen die tatsächlichen AWS-Ressourcen, mit denen eine Anwendungsversion ausgeführt wird. JedesMal, wenn Sie eine Anwendung bereitstellen, wird eine neue Anwendungsversion erstellt und der Assistentverweist die Umgebung auf diese Version. Weitere Informationen zu diesen Konzepten finden Sie in ElasticBeanstalk Components.

Als Nächstes legen Sie Namen für die Anwendung und die erste Umgebung fest. Jeder Umgebungist ein einzigartiger CNAME zugewiesen, mit dem Sie auf die Anwendung zugreifen können, wenn dieBereitstellung abgeschlossen ist.

Auf der nächsten Seite, AWS Options, können Sie den zu verwendenden AWS-Ressourcentypkonfigurieren. Verwenden Sie für dieses Beispiel die Standardwerte, mit Ausnahme des Abschnitts Keypair (Schlüsselpaar). Schlüsselpaare ermöglichen Ihnen, das Windows-Administratorpasswort abzurufen,sodass Sie sich bei Ihrem Computer anmelden können. Wenn Sie noch kein Schlüsselpaar erstellt haben,können Sie die Option Create new key pair (Neues Schlüsselpaar erstellen) auswählen.

Berechtigungen

Auf der Seite Permissions werden der/den EC2 Instance(s), die Ihre Anwendung ausführt bzw. ausführen,AWS-Anmeldeinformationen zugewiesen. Dies ist dann wichtig, wenn Ihre Anwendung das AWS SDKfor .NET für den Zugriff auf andere AWS-Services nutzt. Wenn Sie keine anderen Services über IhreAnwendung nutzen, können Sie die Standardeinstellungen für diese Seite beibehalten.

Anwendungsoptionen

Die auf der Seite Application Options angegebenen Details unterscheiden sich von denen für dieBereitstellung herkömmlicher ASP.NET-Anwendungen. Hier legen Sie die Build-Konfiguration und dasFramework fest, die zum Verpacken Ihrer Anwendung verwendet werden, sowie den IIS-Ressourcenpfadfür die Anwendung.

Nach Abschließen der Seite Application Options klicken Sie auf Next (Weiter), um die Einstellungen zuprüfen und dann auf Deploy (Bereitstellen), um den Bereitstellungsprozess zu beginnen.

Überprüfen des Umgebungsstatus

Nachdem Sie die Anwendung verpackt und auf AWS hochgeladen haben, können Sie den Status derElastic Beanstalk-Umgebung prüfen, indem Sie im AWS Explorer in Visual Studio die Umgebungsstatus-Ansicht öffnen.

Ereignisse werden in der Statusleiste angezeigt, sobald die Umgebung online ist. Wenn alle Vorgängeabgeschlossen sind, wechselt die Umgebung in den fehlerfreien Status. Klicken Sie auf die URL, um dieWebsite anzuzeigen. Von hier aus können Sie auch die Protokolle aus der Umgebung oder vom Remote-Desktop in die Amazon EC2 Instance(s) ziehen, die Teil Ihrer Elastic Beanstalk-Umgebung sind.

Die erste Bereitstellung der Anwendung dauert etwas länger als nachfolgende erneute Bereitstellungen,da neue AWS-Ressourcen erstellt werden. Wenn Sie während der Entwicklung über Ihre Anwendung

25

Page 30: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

iterieren, können Sie schnell eine neue Bereitstellung vornehmen, indem Sie durch die Assistentenschrittezurückgehen oder mit der rechten Maustaste auf das Projekt klicken und die Option Republish (Erneutveröffentlichen) auswählen.

Mit dieser Option wird Ihre Anwendung mit den Einstellungen der vorangegangenen Ausführung durch denBereitstellungsassistenten verpackt und das Anwendungspaket wird in die bestehende Elastic Beanstalk-Umgebung hochgeladen.

So geben Sie die AWS-Sicherheitsanmeldeinformationen für IhreAnwendung anDas AWS-Konto, das Sie im Assistenten Publish to Elastic Beanstalk (für Elastic Beanstalk bereitstellen)(oder in der Legacy-Version dieses Assistenten, Publish to Amazon Web Services (Für Amazon WebServices bereitstellen)) angegeben haben, ist das Konto, das der Assistent für die Bereitstellung in ElasticBeanstalk verwendet.

Obwohl nicht empfohlen, müssen Sie möglicherweise auch AWS-Konto-Anmeldeinformationen angeben,mit denen Ihre Anwendung nach der Bereitstellung auf AWS-Services zugreift. Wir empfehlen stattdessendas Festlegen einer IAM-Rolle. Im Assistenten Publish to Elastic Beanstalk (Für Elastic Beanstalkbereitstellen) erfolgt dies über die Dropdown-Liste Identity and Access Management Role (Identity andAccess Management-Rolle) auf der Seite AWS Options (AWS-Optionen). Im Assistenten Publish toAmazon Web Services (Für Amazon Web Services veröffentlichen) erfolgt dies über die Dropdown-ListeIAM Role IAM-Rolle) auf der Seite AWS Options (AWS-Optionen).

Falls Sie AWS-Konto-Anmeldeinformationen anstatt einer IAM-Rolle verwenden müssen, haben Siefolgende Möglichkeiten für das Festlegen dieser Anmeldeinformationen für Ihre Anwendung:

• Auf ein Profil verweisen, das den AWS-Konto-Anmeldeinformationen im appSettings-Element derWeb.config-Datei des Projekts entspricht. (Weitere Informationen zum Erstellen eines Profils finden Sieunter Configuring AWS-Anmeldeinformationen.) Im folgenden Beispiel werden Anmeldeinformationenangegeben, deren Profilname myProfile lautet.

<appSettings> <!-- AWS CREDENTIALS --> <add key="AWSProfileName" value="myProfile"/></appSettings>

• Wenn Sie den Assistenten Publish to Elastic Beanstalk (Für Elastic Beanstalk bereitstellen) verwenden,wählen Sie auf der Seite Application Options (Anwendungsoptionen) in der Zeile Key (Schlüssel) desBereichs Key (Schlüssel) und Value (Wert) die Option AWSAccessKey. Geben Sie in der Zeile Value(Wert) den Zugriffsschlüssel ein. Wiederholen Sie diese Schritte für AWSSecretKey.

• Wenn Sie den Legacy-Assistenten Publish to Amazon Web Services (Für Amazon Web Servicesveröffentlichen) verwenden, wählen Sie auf der Seite Application Options (Anwendungsoptionen) imBereich Application Credentials (Anwendungsanmeldeinformationen) die Option Use these credentials(Diese Anmeldeinformationen verwenden) aus und geben dann den Zugriffsschlüssel und den geheimenZugriffsschlüssel in die Felder Access Key (Zugriffsschlüssel) und Secret Key (Secret-Schlüssel) ein.

So veröffentlichen Sie Ihre Anwendung in einer Elastic BeanstalkUmgebung neuSie können über Ihre Anwendung iterieren, indem Sie einzelne Änderungen vornehmen und dann eineneue Version für Ihre bereits gestartete Elastic Beanstalk-Umgebung veröffentlichen.

1. Öffnen Sie im Projektmappen-Explorer das Kontextmenü (Rechtsklick) für den AEBWebAppDemo-Projektordner oder für das Projekt, das Sie im vorigen Abschnitt veröffentlicht haben, und wählen SiePublish to AWS Elastic Beanstalk (Für AWS Elastic Beanstalk veröffentlichen).

26

Page 31: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

Der Publish to Elastic Beanstalk (Veröffentlichen zu Elastic Beanstalk)-Assistent wird angezeigt.2. Wählen Sie Redeploy to an existing environment (Erneut für eine bestehende Umgebung bereitstellen)

und wählen Sie die Umgebung, in der Sie zuvor veröffentlicht haben. Klicken Sie auf Next (Weiter).

Der Review (Prüfen)-Assistent wird angezeigt.3. Klicken Sie auf Deploy (Bereitstellen). Die Anwendung wird wieder in derselben Umgebung

bereitgestellt.

Sie können nicht erneut veröffentlichen, wenn Ihre Anwendung gerade gestartet oder beendet wird.

Benutzerdefinierte Elastic Beanstalk-AnwendungsbereitstellungenIn diesem Thema wird beschrieben, wie die Bereitstellungsmanifestdatei für den Microsoft Windows-Container in Elastic Beanstalk die benutzerdefinierte Bereitstellung von Anwendungen unterstützt.

Benutzerdefinierte Anwendungsbereitstellungen sind eine hilfreiche Funktion für fortgeschrittene Benutzer,die die Leistung von Elastic Beanstalk zum Erstellen und Verwalten ihrer AWS-Ressourcen nutzen undgleichzeitig die vollständige Kontrolle über die Bereitstellung ihrer Anwendung haben möchten. Für einebenutzerdefinierte Anwendungsbereitstellung erstellen Sie Windows PowerShell-Skripte für die dreiverschiedenen Aktionen, die Elastic Beanstalk durchführt. Die Installationsaktion wird verwendet, wenn eineBereitstellung begonnen wird. Die Neustartaktion kommt zum Einsatz, wenn die RestartAppServer-APIentweder vom Toolkit oder über die Webkonsole aufgerufen wird. Die Aktion zum Deinstallieren wird aufvorherige Bereitstellungen angewendet, wenn eine neue Bereitstellung zur Verfügung steht.

Beispiel: Sie verfügen über eine ASP.NET-Anwendung, die Sie bereitstellen möchten, und IhrDokumentationsteam hat eine statische Website geschrieben, die in die Bereitstellung mit eingeschlossenwerden soll. Um dies durchzuführen, kann Ihre Bereitstellungsmanifestdatei so geschrieben werden:

{ "manifestVersion": 1, "deployments": {

"msDeploy": [ { "name": "app", "parameters": { "appBundle": "CoolApp.zip", "iisPath": "/" } } ], "custom": [ { "name": "PowerShellDocs", "scripts": { "install": { "file": "install.ps1" }, "restart": { "file": "restart.ps1" }, "uninstall": { "file": "uninstall.ps1" } } } ] }}

27

Page 32: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

Die aufgeführten Skripts für jede Aktion müssen sich in dem Anwendungspaket befinden, das sich aufdie Bereitstellungsmanifestdatei bezieht. Für dieses Beispiel enthält das Anwendungspaket auch einedocumentation.zip-Datei mit einer statischen Website, die von Ihrem Dokumentationsteam erstellt wurde.

Das install.ps1-Skript extrahiert die ZIP-Datei und richtet den IIS-Pfad ein.

Add-Type -assembly "system.io.compression.filesystem"[io.compression.zipfile]::ExtractToDirectory('./documentation.zip', 'c:\inetpub\wwwroot\documentation')

powershell.exe -Command {New-WebApplication -Name documentation -PhysicalPath c:\inetpub\wwwroot\documentation -Force}

Da Ihre Anwendung in IIS ausgeführt wird, wird durch die Neustartaktion ein Zurücksetzen des IISausgelöst.

iisreset /timeout:1

Zum Deinstallieren von Skripten müssen alle Einstellungen und Dateien, die während der Installationsstufeverwendet wurden, gelöscht werden. Auf diese Weise können Sie verhindern, dass es bei der Installationder neuen Version zu einer Kollision mit vorherigen Bereitstellungen kommt. In diesem Beispiel müssen Siedie IIS-Anwendung für die statische Website sowie die Website-Dateien entfernen.

powershell.exe -Command {Remove-WebApplication -Name documentation}Remove-Item -Recurse -Force 'c:\inetpub\wwwroot\documentation'

Mit diesen Skriptdateien und der documentation.zip-Datei, die sich in Ihrem Anwendungspaket befinden,wird bei der Bereitstellung zunächst die ASP.NET-Anwendung erzeugt und dann die Website derDokumentation bereitgestellt.

Im vorliegenden Beispiel wird eine einfache statische Website bereitgestellt, jedoch mit einerbenutzerdefinierten Anwendungsbereitstellung, die Sie für jede Art von Anwendung einsetzen können undbei der Sie Elastic Beanstalk die Verwaltung der AWS-Ressourcen überlassen können.

Anpassung von ASP.NET Core Elastic Beanstalk-BereitstellungenIn diesem Thema wird beschrieben, wie die Bereitstellung funktioniert und wie Sie diese anpassen können,wenn Sie mit Elastic Beanstalk und dem Toolkit for Visual Studio ASP.NET Core-Anwendungen erstellen.

Nachdem Sie alle erforderlichen Schritte mit dem Bereitstellungsassistenten im Toolkit for Visual Studioabgeschlossen haben, verpackt das Toolkit die Anwendung und sendet sie an Elastic Beanstalk. Als ersterSchritt bei der Erstellung des Anwendungspakets wird die Anwendung mithilfe der neuen dotnet CLI mitdem Befehl publish auf die Veröffentlichung vorbereitet. Das Framework und die Konfiguration werdenvon den Einstellungen im Assistenten an den Befehl publish weitergegeben. Wenn Sie also Releasefür configuration und netcoreapp1.0 für das framework ausgewählt haben, führt das Toolkit denfolgenden Befehl aus:

dotnet publish --configuration Release --framework netcoreapp1.0

Nach Ausführung des Befehls publish schreibt das Toolkit das neue Bereitstellungsmanifest in denVeröffentlichungsordner. Das Bereitstellungsmanifest ist eine JSON-Datei namens aws-windows-deployment-manifest.json, die der Elastic Beanstalk-Windows-Container (Version 1.2 oder höher) liest,um zu bestimmen, wie die Anwendung bereitgestellt werden soll. Beispiel: Für eine ASP.NET Core-Anwendung, die Sie im Stammverzeichnis von IIS bereitstellen möchten, erzeugt das Toolkit eineManifestdatei, die wie folgt aussieht:

{

28

Page 33: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

"manifestVersion": 1, "deployments": {

"aspNetCoreWeb": [ { "name": "app", "parameters": { "appBundle": ".", "iisPath": "/", "iisWebSite": "Default Web Site" } } ] }}

Die Eigenschaft appBundle gibt an, wo sich die Anwendungsbits im Bezug auf die Manifestdateibefinden. Diese Eigenschaft kann entweder auf ein Verzeichnis oder auf eine ZIP-Datei verweisen. DieEigenschaften iisPath und iisWebSite geben an, wo die Anwendung in IIS gehostet werden soll.

Anpassen der Manifest-DateiDas Toolkit schreibt die Manifestdatei nur dann, wenn nicht bereits eine im Veröffentlichungsordnerexistiert. Wenn die Datei vorhanden ist, aktualisiert das Toolkit die Eigenschaften appBundleiisPathund iisWebSite in der ersten Anwendung in der Liste des Manifestabschnitts aspNetCoreWeb. Diesermöglicht Ihnen, die Datei aws-windows-deployment-manifest.json Ihrem Projekt hinzuzufügen und dasManifest anzupassen. Um dies für eine ASP.NET Core-Webanwendung in Visual Studio auszuführen,fügen Sie dem Stammverzeichnis des Projekts eine neue JSON-Datei hinzu und nennen diese aws-windows-deployment-manifest.json.

Die Manifestdatei muss aws-windows-deployment-manifest.json genannt und im Stammverzeichnis desProjekts gespeichert werden. Der Elastic Beanstalk Container sucht das Manifest im Stammverzeichnis.Sobald er die Datei gefunden hat, ruft er das Bereitstellungstool auf. Wenn die Datei nicht vorhanden ist,greift der Elastic Beanstalk-Container auf das ältere Bereitstellungstool zurück, das davon ausgeht, dass essich um eine msdeploy-Datei handelt.

Um sicherzustellen, dass der publish-Befehl von dotnet CLI das Manifest mit einschließt, aktualisierenSie die project.json-Datei, um die Manifestdatei in den Abschnitt "Include" unter include inpublishOptions aufzunehmen.

{ "publishOptions": { "include": [ "wwwroot", "Views", "Areas/**/Views", "appsettings.json", "web.config", "aws-windows-deployment-manifest.json" ] } }

Nachdem Sie das Manifest deklariert haben, damit es in die App aufgenommen wird, können Sie weitereKonfigurationen zur Bereitstellung der Anwendung vornehmen. Sie können die Bereitstellung über dieOptionen des Bereitstellungsassistenten hinaus anpassen. AWS hat ein JSON-Schema für die aws-windows-deployment-manifest.json-Datei definiert. Wenn Sie das Toolkit for Visual Studio installiert haben,wurde bei der Einrichtung die URL für das Schema registriert.

Wenn Sie windows-deployment-manifest.json öffnen, wird die ausgewählte Schema-URL imSchema-Dropdown-Feld angezeigt. Sie können zu der URL navigieren, um eine komplette Beschreibung

29

Page 34: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

der möglichen Einstellungen in der Manifestdatei zu erhalten. Nachdem Sie das Schema ausgewählthaben, stellt Ihnen Visual Studio IntelliSense zur Verfügung, während Sie die Manifestdatei bearbeiten.

Sie können beispielsweise den IIS-Anwendungspool konfigurieren, unter dem die Anwendung ausgeführtwird. Am folgenden Beispiel sehen Sie, wie Sie einen IIS-Anwendungspool ("customPool") definierenkönnen, der den Prozess alle 60 Minuten recycelt und ihn mithilfe von "appPool": "customPool" derAnwendung zuweist.

{ "manifestVersion": 1, "iisConfig": { "appPools": [ { "name": "customPool", "recycling": { "regularTimeInterval": 60 } } ] }, "deployments": { "aspNetCoreWeb": [ { "name": "app", "parameters": { "appPool": "customPool" } } ] }}

Darüber hinaus kann das Manifest die Ausführung von Windows PowerShell-Skripts vor und nachInstallations-, Neustart- und Deinstallationsaktionen deklarieren. Beispiel: Das folgende Manifest führt dasWindows PowerShell-Skript PostInstallSetup.ps1 aus, um nach der Bereitstellung der ASP.NETCore-Anwendung auf IIS weitere Konfigurationen vorzunehmen. Stellen Sie beim Hinzufügen solcherSkripts sicher, dass die Skripts dem Abschnitt "include" unter "publishOptions" in der project.json-Dateihinzugefügt werden, ebenso wie bei der aws-windows-deployment-manifest.json-Datei. Wenn Siedies nicht tun, werden die Skripts nicht als Teil des Befehls publish der dotnet CLI aufgenommen.

{ "manifestVersion": 1, "deployments": { "aspNetCoreWeb": [ { "name": "app", "scripts": { "postInstall": { "file": "SetupScripts/PostInstallSetup.ps1" } } } ] }}

Und was ist mit ebextensions?Die Elastic Beanstalkebextensions-Konfigurationsdateien werden wie bei allen anderen Elastic Beanstalk-Containern auch unterstützt. Um ebextensions in eine ASP.NET Core-Anwendung einzuschließen,fügen Sie das .ebextensions-Verzeichnis dem Abschnitt include unter publishOptions in der

30

Page 35: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

project.json-Datei hinzu. Weitere Informationen über ebextensions finden Sie im Elastic BeanstalkDeveloper Guide.

Unterstützung mehrerer Anwendungen für .NET und ElasticBeanstalkMit dem Bereitstellungsmanifest haben Sie die Möglichkeit, mehrere Anwendungen für dieselbe ElasticBeanstalk- Umgebung bereitzustellen.

Das Bereitstellungsmanifest unterstützt ASP.NET Core-Webanwendungen sowie msdeploy-Dateienfür herkömmliche ASP.NET-Anwendungen. Stellen Sie sich vor, Sie hätten mit ASP.NET Core eineneue, faszinierende Anwendung für das Frontend und ein Web-API-Projekt für eine Erweiterungen-APIgeschrieben. Außerdem hätten Sie eine Admin-App mit dem herkömmlichen ASP.NET. geschrieben.

Der Bereitstellungsassistent des Toolkits konzentriert sich auf die Bereitstellung eines einzelnenProjekts. Wenn Sie von der Bereitstellung mehrerer Anwendungen profitieren möchten, müssen Sie dasAnwendungspaket manuell erstellen. Zunächst schreiben Sie die Manifestdatei. Bei diesem Beispiel wirddas Manifest in das Stammverzeichnis Ihrer Lösung geschrieben.

Der Bereitstellungsabschnitt im Manifest hat zwei untergeordnete Elemente: ein Array ausbereitzustellenden ASP.NET Core-Webanwendungen und ein Array aus bereitzustellenden msdeploy-Dateien. Sie geben für jede Anwendung den IIS-Pfad sowie den Speicherort der Anwendungsbits im Bezugauf das Manifest an.

{ "manifestVersion": 1, "deployments": {

"aspNetCoreWeb": [ { "name": "frontend", "parameters": { "appBundle": "./frontend", "iisPath": "/frontend" } }, { "name": "ext-api", "parameters": { "appBundle": "./ext-api", "iisPath": "/ext-api" } } ], "msDeploy": [ { "name": "admin", "parameters": { "appBundle": "AmazingAdmin.zip", "iisPath": "/admin" } } ] }}

Wenn das Manifest geschrieben ist, verwenden Sie Windows PowerShell zum Erstellen desAnwendungspakets und aktualisieren eine vorhandene Elastic Beanstalk-Umgebung, um es darinauszuführen. Das Skript wird unter der Annahme geschrieben, dass es über den Ordner ausgeführt wird,der Ihre Visual Studio-Lösung enthält.

31

Page 36: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

Zunächst müssen Sie im Skript einen Workspace-Ordner einrichten, in dem das Anwendungspaket erstelltwird.

$publishFolder = "c:\temp\publish"

$publishWorkspace = [System.IO.Path]::Combine($publishFolder, "workspace")$appBundle = [System.IO.Path]::Combine($publishFolder, "app-bundle.zip")

If (Test-Path $publishWorkspace){ Remove-Item $publishWorkspace -Confirm:$false -Force}If (Test-Path $appBundle){ Remove-Item $appBundle -Confirm:$false -Force}

Sobald Sie den Ordner erstellt haben, wird das Frontend vorbereitet. Ebenso wie beimBereitstellungsassistenten verwenden Sie die dotnet CLI zum Veröffentlichen der Anwendung.

Write-Host 'Publish the ASP.NET Core frontend'$publishFrontendFolder = [System.IO.Path]::Combine($publishWorkspace, "frontend")dotnet publish .\src\AmazingFrontend\project.json -o $publishFrontendFolder -c Release -f netcoreapp1.0

Beachten Sie, dass der Unterordner "Frontend" für den Ausgabeordner verwendet wurde, entsprechenddem von Ihnen im Manifest festgelegten Ordner. Nun führen Sie dieselben Schritt für das Web-API-Projektdurch.

Write-Host 'Publish the ASP.NET Core extensibility API'$publishExtAPIFolder = [System.IO.Path]::Combine($publishWorkspace, "ext-api")dotnet publish .\src\AmazingExtensibleAPI\project.json -o $publishExtAPIFolder -c Release -f netcoreapp1.0

Bei der Administrationswebsite handelt es sich um eine herkömmliche ASP.NET-Anwendung, sodassSie die dotnet CLI nicht verwenden können. Für die Admin-Anwendung sollten Sie msbuild verwenden,mit Übergabe in das erstellte Zielpaket zum Erzeugen der msdeploy-Datei. Standardmäßig erstellt dasPaketziel die msdeploy-Datei unter dem obj\Release\Package-Ordner. Daher müssen Sie die Datei inden Workspace zum Veröffentlichen kopieren.

Write-Host 'Create msdeploy archive for admin site'msbuild .\src\AmazingAdmin\AmazingAdmin.csproj /t:package /p:Configuration=ReleaseCopy-Item .\src\AmazingAdmin\obj\Release\Package\AmazingAdmin.zip $publishWorkspace

Damit die Elastic Beanstalk-Umgebung Anweisungen erhält, was mit all diesen Anwendungen zu tun ist,kopieren Sie das Manifest von Ihrer Lösung in den Workspace zum Veröffentlichen und komprimieren denOrdner.

Write-Host 'Copy deployment manifest'Copy-Item .\aws-windows-deployment-manifest.json $publishWorkspace

Write-Host 'Zipping up publish workspace to create app bundle'Add-Type -assembly "system.io.compression.filesystem"[io.compression.zipfile]::CreateFromDirectory( $publishWorkspace, $appBundle)

Nun verfügen Sie über das Anwendungspaket und könnten die Datei über die Webkonsole in eine ElasticBeanstalk-Umgebung hochladen. Alternativ können Sie weiterhin AWS PowerShell-Cmdlets verwenden,um die Elastic Beanstalk-Umgebung mit dem Anwendungspaket zu aktualisieren. Vergewissern Siesich, dass Sie das aktuelle Profil und die Region zum Profil sowie die Region, die Ihre Elastic Beanstalk-

32

Page 37: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

Umgebung enthält, festgelegt haben, indem Sie Set-AWSCredentials und Set-DefaultAWSRegioncmdlets verwenden.

Write-Host 'Write application bundle to S3'# Determine S3 bucket to store application bundle$s3Bucket = New-EBStorageLocationWrite-S3Object -BucketName $s3Bucket -File $appBundle

$applicationName = "ASPNETCoreOnAWS"$environmentName = "ASPNETCoreOnAWS-dev"$versionLabel = [System.DateTime]::Now.Ticks.ToString()

Write-Host 'Update Beanstalk environment for new application bundle'New-EBApplicationVersion -ApplicationName $applicationName -VersionLabel $versionLabel -SourceBundle_S3Bucket $s3Bucket -SourceBundle_S3Key app-bundle.zipUpdate-EBEnvironment -ApplicationName $applicationName -EnvironmentName $environmentName -VersionLabel $versionLabel

Nun überprüfen Sie den Status der Aktualisierung über die Statusseite der Elastic Beanstalk-Umgebungim Toolkit oder über die Webkonsole. Nachdem der Vorgang abgeschlossen ist, können Sie zu jederAnwendung navigieren, die Sie für den, im Bereitstellungsmanifest angegebenen, IIS-Pfad bereitgestellthaben.

Bereitstellung für Elastic Beanstalk (Legacy)Note

Die Informationen in diesem Abschnitt beziehen sich auf den Publish to Amazon Web Services(Für Amazon Web Services veröffentlichen)-Assistenten, der durch den Publish to ElasticBeanstalk (Für Elastic Beanstalk veröffentlichen)-Assistenten ersetzt wurde. Die folgendenInformationen sind für diejenigen bestimmt, die den Legacy-Assistenten verwenden möchten odermüssen.Weitere Informationen zur Verwendung des Publish to Elastic Beanstalk-Assistenten (Für ElasticBeanstalk veröffentlichen)finden Sie unter Deploying to Elastic Beanstalk (p. 19).

AWS Elastic Beanstalk ist ein Service, der den Prozess der Bereitstellung von AWS-Ressourcen für IhreAnwendung vereinfacht. Elastic Beanstalk bietet die gesamte AWS-Infrastruktur, die für die BereitstellungIhrer Anwendung erforderlich ist. Diese Infrastruktur umfasst:

• Amazon EC2 Instances, die als Host für die ausführbaren Dateien und die Inhalte Ihrer Anwendungdienen.

• Eine Auto Scaling-Gruppe für die entsprechende Anzahl von Amazon EC2 Instances zur UnterstützungIhrer Anwendung.

• Ein Elastic Load Balancing Load Balancer, der eingehenden Datenverkehr an die Amazon EC2 Instancemit der größten Bandbreite weiterleitet.

Weitere Informationen über Elastic Beanstalk finden Sie in der Elastic Beanstalk documentation.

So stellen Sie eine Webanwendung unter Verwendung von Elastic Beanstalk(Legacy) bereit

In diesem Abschnitt wird beschrieben, wie Sie mit dem Legacy-Assistenten Publish to Amazon WebServices (Für Amazon Web Services veröffentlichen), der Teil des Toolkit for Visual Studio ist, eineWebanwendung über Elastic Beanstalk bereitstellen;. Als Übung können Sie eine Instance von einem inVisual Studio integrierten Webanwendungs-Starterprojekt oder Ihr eigenes Projekt verwenden.

33

Page 38: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

Note

Bevor Sie den Legacy-Assistenten Publish to Amazon Web Services (Für Amazon WebServices veröffentlichen) verwenden können, müssen Sie Web Deploy herunterladen undinstallieren. Der Assistent nutzt Web Deploy, um Internet Information Services (IIS)-WebservernWebanwendungen und Websites bereitzustellen.

So stellen Sie eine Anwendung mit dem Legacy-Assistenten "Publish to Amazon Web Services"bereit

Note

Wenn Sie noch kein Projekt haben, das bereitgestellt werden kann, führen Sie zunächst dieSchritte in To create a sample web application starter project (p. 38) aus und anschließend diefolgenden Anweisungen:

1. Legen Sie die AWS-Sicherheitsanmeldeinformationen für die Webanwendung fest. WeitereInformationen finden Sie unter How to Specify the AWS Security Credentials for YourApplication (p. 26).

Diese Anmeldeinformationen können von denen abweichen, die Sie für die Bereitstellung verwenden.Die Anmeldeinformationen für die Bereitstellung sind an späterer Stelle im Bereitstellungsassistentenbeschrieben.

2. Öffnen Sie im Projektmappen-Explorer das Kontextmenü (Rechtsklick) für den AEBWebAppDemo-Projektordner oder für den Projektordner Ihrer eigenen Anwendung und wählen Sie Publish to AWS (FürAWS veröffentlichen).

3. Wählen Sie auf der Seite Publish to AWS Elastic Beanstalk (Für Elastic Beanstalk veröffentlichen) dieOption Use legacy wizard (Legacy-Assistent verwenden).

4. Wählen Sie auf der Seite Template (Vorlage) des Assistenten das AWS-Konto, das Sie für dieBereitstellung verwenden möchten. Klicken Sie auf die Schaltfläche mit dem Pluszeichen (+), um einneues Konto hinzuzufügen.

Sie haben die Möglichkeit, die erste Bereitstellung einer Anwendung auszuführen oder eine bereitsverwendete Anwendung erneut bereitzustellen. Vorherige Bereitstellungen können entweder mit demBereitstellungsassistenten ausgeführt worden sein oder mit dem Standalone Deployment Tool (p. 49).Wenn Sie eine erneute Bereitstellung wählen, kann es zu Verzögerungen kommen, während derAssistent Informationen aus früheren Bereitstellungen abruft, die aktuell ausgeführt werden.

Wählen Sie für dieses Beispiel Deploy new application with template (Neue Anwendung mit Vorlagebereitstellen), dann AWS Elastic Beanstalk und klicken Sie anschließend auf Next (Weiter).

5. Auf der Seite Application (Anwendung) wurde vom Toolkit bereits ein Standardname für die Anwendungbereitgestellt. Der Standardname kann nicht geändert werden. Sie können auch eine optionaleBeschreibung im Bereich Application Details (Anwendungsdetails) angeben.

Das Toolkit bietet zudem eine Bereitstellungsversionsbezeichnung mit Angabe des aktuellen Datumsund der Uhrzeit. Sie können diese Versionsbezeichnung ändern, sie wird jedoch vom Toolkit aufEinzigartigkeit geprüft.

Wenn Sie die inkrementelle Bereitstellung nutzen, ist Deployment version label (Bereitstellungsversions-Label) nicht verfügbar. Bei inkrementellen Bereitstellungen wird die Versionsbezeichnung aus dem Git-Commit-ID gebildet. In diesem Fall ist die Versionsbezeichnung einzigartig, da die Commit-ID aus derkryptografischen Hash-Funktion SHA-1 abgeleitet wird.

Bei der ersten inkrementellen Bereitstellung Ihrer Anwendung werden alle Anwendungsdateien auf denServer kopiert. Wenn Sie später einige der Anwendungsdateien aktualisieren und erneut bereitstellen,werden nur die geänderten Dateien kopiert. Dadurch reduziert sich der Zeitaufwand für eine erneuteBereitstellung potenziell. Ohne inkrementelle Bereitstellung werden alle Anwendungsdateien,

34

Page 39: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

unabhängig davon, ob sie geändert wurden oder nicht, bei jeder erneuten Bereitstellung auf den Serverkopiert.

Wählen Sie Deploy application incrementally (Anwendung inkrementell bereitstellen) und dann Next(Weiter).

6. Geben Sie auf der Seite Environment (Umgebung) einen Namen und eine Beschreibung für Ihre ElasticBeanstalk-Umgebung ein. In diesem Kontext bezieht sich Environment (Umgebung) auf die ElasticBeanstalk-Infrastrukturbestimmungen für Ihre Anwendung. Das Toolkit hat bereits einen Standardnamenbereitgestellt, den Sie ändern können. Der Umgebungsname darf nicht länger als 23 Zeichen sein.Geben Sie im Feld Description (Beschreibung) einen beliebigen Text ein.

Sie können auch eine Subdomäne von .elasticbeanstalk.com bereitstellen, die dann als URLfür Ihre Anwendung verwendet wird. Das Toolkit bietet eine Standard-Subdomäne basierend auf demUmgebungsnamen.

7. Wählen Sie Check Availability (Verfügbarkeit prüfen), um sicherzustellen, dass die URL für IhreWebanwendung verwendet werden kann.

8. Wählen Sie Next (Weiter).9. Konfigurieren Sie auf der Seite AWS Options (AWS-Optionen) Folgendes:

• Wählen Sie aus der Dropdown-Liste Container type (Containertyp) einen Containertyp aus. DerContainertyp bestimmt ein Amazon Machine Image (AMI) für Ihre Anwendung sowie Konfigurationenfür die Auto Scaling-Gruppe, den Load Balancer und andere Aspekte der Umgebung, in der IhreAnwendung ausgeführt wird.

• Optional. Im Feld Use custom AMI (Angepasstes AMI verwenden) können Sie ein benutzerdefiniertesAMI angeben. Wenn Sie ein benutzerdefiniertes AMI festlegen, wird das AMI in Container type(Containertyp) überschrieben. Weitere Informationen dazu, wie Sie ein benutzerdefiniertes AMIerstellen, finden Sie unter Verwenden von benutzerdefinierten AMIs im AWS Elastic BeanstalkDeveloper Guide und unter Erstellen eines AMI aus einer EC2 Instance (p. 15).

• Wählen Sie aus der Dropdown-Liste Instance Type (Instance-Typ) einen Amazon EC2 Instance-Typaus. Für diese Anwendung empfehlen wir die Nutzung von Micro, um die Kosten für die Ausführungder Instance zu minimieren. Weitere Informationen über Amazon EC2-Kosten finden Sie auf der SeiteAmazon EC2 — Preise.

• Wählen Sie aus der Dropdown-Liste Key pair (Schlüsselpaar) ein Schlüsselpaar aus.• In der Dropdown-Liste IAM Role (IAM-Rolle) werden die verfügbaren Rollen für Ihre Elastic Beanstalk-

Umgebung angezeigt. Wenn Sie nicht über eine IAM-Rolle verfügen, können Sie Use the defaultrole (Die Standardrolle verwenden) aus der Liste auswählen. In diesem Fall erstellt Elastic Beanstalkeine Standard-IAM-Rolle und aktualisiert die Amazon S3-Bucket-Richtlinie, um die Protokollrotationzuzulassen.

Ein IAM-Rolle bietet Anwendungen und Services mithilfe temporärer SicherheitsanmeldeinformationenZugriff auf AWS-Ressourcen. Wenn beispielsweise Ihre Anwendung den Zugriff auf eine DynamoDBerfordert, müssen für eine API-Anfrage AWS-Sicherheitsanmeldeinformationen verwendet werden. DieAnwendung kann diese temporären Sicherheitsanmeldeinformationen verwenden, sodass Sie nichtlängerfristige Anmeldeinformationen in einer Amazon EC2-Instance speichern oder die Instance jedesMal aktualisieren müssen, wenn die Anmeldeinformationen rotiert werden. Elastic Beanstalk benötigteine IAM-Rolle, um die Protokolle in Amazon S3 zu rotieren.

Wenn Sie sich dazu entscheiden, die IAM-Rolle nicht zu verwenden, müssen Sie Elastic BeanstalkBerechtigungen für die Rotation von Protokollen gewähren. Weitere Anweisungen finden Sie unterUsing a Custom Instance Profile. Weitere Informationen zur Protokollrotation finden Sie unterConfiguring Container mit Elastic Beanstalk Weitere Informationen zur Verwendung von -Rollen mit finden Sie unter IAMUsing IAM Roles with Elastic BeanstalkElastic Beanstalk.

Die Anmeldeinformationen, die Sie für die Bereitstellung verwenden, müssen über eine Berechtigungfür die Erstellung der Standard-IAM-Rolle verfügen.

Wählen Sie Next (Weiter).

35

Page 40: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

10.Die Seite VPC Options (VPC-Optionen) bietet die Option zum Starten Ihrer Anwendung auf einer VPC.Die VPC muss bereits erstellt worden sein. Sie können das Toolkit for Visual Studio oder die AWS-Managementkonsole verwenden, um eine VPC zu erstellen. Wenn Sie die VPC im Toolkit erstellt haben,füllt das Toolkit diese Seite für Sie mit Daten. Wenn Sie die VPC mit der Konsole erstellt haben, gebenSie die Informationen zu Ihrer VPC auf dieser Seite ein.

Wichtige Überlegungen für die Bereitstellung in einer VPC

• Ihre VPC muss über mindestens ein öffentliches und ein privates Subnetz verfügen.• Geben Sie in der Dropdown-Liste ELB Subnet das öffentliche Subnetz an. Das Toolkit for Visual Studio

stellt den Elastic Load Balancing-Load Balancer für Ihre Anwendung auf dem öffentlichen Subnetz zurVerfügung. Das öffentliche Subnetz ist mit einer Routing-Tabelle verknüpft, die über einen Eingangverfügt, der auf ein Internet-Gateway verweist. Sie erkennen ein Internet-Gateway daran, dass seine IDmit igw-`(for example, :code:`igw-83cddaea) beginnt. Öffentliche Subnetze, die Sie mit demToolkit erstellen, können an ihren Tagwerten als öffentlich identifiziert werden.

• Geben Sie in der Dropdown-Liste Instances Subnet das private Subnetz an. Das Toolkit stellt dieAmazon EC2 Instances für Ihre Anwendung auf dem privaten Subnetz bereit.

• Die Amazon EC2 Instances für Ihre Anwendung kommunizieren aus dem privaten Subnetz mit demInternet. Diese Kommunikation läuft über eine Amazon EC2 Instance im öffentlichen Subnetz ab,die Netzwerkadressen (Network Address Translation, NAT) übersetzt. Um diese Kommunikation zuermöglichen, benötigen Sie eine VPC-Sicherheitsgruppe, die zulässt, dass Datenverkehr vom privatenSubnetz zur NAT-Instance fließt. Geben Sie diese VPC-Sicherheitsgruppe in der Dropdown-ListeSecurity Group an.

Weitere Informationen zur Bereitstellung einer Elastic Beanstalk-Anwendung für eine VPC finden Sie imAWS Elastic Beanstalk Developer Guide.

1. Konfigurieren Sie auf der Seite Application Options (Anwendungsoptionen) Folgendes:• Wählen Sie unter Application Pool Options (Anwendungspooloptionen) in der Dropdown-Liste Target

framework (Ziel-Framework) die Version des .NET-Frameworks, das für Ihre Anwendung erforderlichist (z. B. NET Framework 2.0, .NET Framework 3.0, .NET Framework 3.5, .NET Framework 4.0, .NETFramework 4.5).

Wählen Sie für diese schrittweise Anleitung Enable 32-bit applications (32-Bit-Anwendungenaktivieren).

• Geben Sie unter Miscellaneous (Verschiedene) im Feld Application health-check URL (URL für dieAnwendungszustandsprüfung) eine URL an, die Elastic Beanstalk dann prüft und so feststellt, obIhre Anwendung noch reaktionsfähig ist. Diese URL hängt von der Root-Server-URL ab. Wenn diekomplette URL beispielsweise lautet, würden Sie Folgendes eingeben: /site-is-up.html. Fürdiese Beispielanwendung behalten Sie die Standardeinstellung mit Schrägstrich bei (/).

• In Application Environment (Anwendungsumgebung) geben Sie in den Parameterfeldern (PARAM1-5)die Eingabedaten für Ihre Anwendung ein. Diese Werte stehen der bereitgestellten Anwendung überdas appSettings-Element in der Web.config-Datei zur Verfügung. Weitere Informationen hierzufinden Sie in der Microsoft MSDN library.

• Wählen Sie in Application Credentials (Anwendungs-Anmeldeinformationen) die AWS-Anmeldeinformationen aus, unter denen die Anwendung laufen sollte. Sie können sich von denAnmeldeinformationen, die Sie für die Bereitstellung in Elastic Beanstalk verwendet haben,unterscheiden.• Um einen anderen Satz an Anmeldeinformationen zu verwenden, wählen Sie Use these credentials

(Diese Anmeldeinformationen verwenden) und geben dann den Zugriffsschlüssel sowie dengeheimen Schlüssel in die dafür vorgesehenen Felder ein.

• Um dieselben Anmeldeinformationen zu verwenden wie für die Bereitstellung in Elastic Beanstalkwählen Sie Use credentials from profile '<account name>' (Anmeldeinformationen aus Profil

36

Page 41: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

'<account name>' verwenden) wobei es sich bei {account name>} um das auf der ersten Seite desAssistenten ausgewählte Konto handelt.

• Um die Anmeldeinformationen für einen AWS Identity and Access Management- (IAM-) Benutzerzu verwenden, wählen Sie Use an IAM user (Einen IAM-Benutzer verwenden) und geben dann denBenutzer an.

Um einen IAM-Benutzer zu verwenden, müssen Sie:• den IAM-Benutzer in Toolkit for Visual Studio erstellt haben.• den geheimen Schlüssel für den Benutzer mit dem Toolkit for Visual Studio gespeichert haben.

Weitere Informationen finden Sie unter Create and Configure an IAM User (p. 84) und GenerateCredentials for an IAM User (p. 86).

Es könnte mehr als ein Satz Anmeldeinformationen für einen IAM-Benutzer im Toolkit gespeichertsein. Wenn dies der Fall ist, müssen Sie auswählen, welche Anmeldeinformationen verwendetwerden sollen. Das Stammkonto könnte die Anmeldeinformationen für den IAM-Benutzer rotieren,wodurch die Anmeldeinformationen deaktiviert werden. Bei einem solchen Szenario müssten Sie dieAnwendung erneut bereitstellen und dann manuell die Anmeldeinformationen für den IAM-Benutzereingeben.

Wählen Sie Next (Weiter).Seite Application Options (Anwendungsoptionen)

2. Wenn Sie Amazon RDS-Instances bereitgestellt haben, wird eine Seite ähnlich der Folgenden alsTeil des Bereitstellungsassistenten angezeigt. Sie können diese Seite verwenden, um die AmazonEC2 Instances für Ihre Bereitstellung einer oder mehrerer der Amazon RDS-Sicherheitsgruppen,die mit Ihren RDS Instances verknüpft sind, hinzuzufügen. Benötigt Ihre Anwendung Zugriff auf IhreRDS-Instances, müssen Sie diesen Zugriff entweder hier oder in den Berechtigungseinstellungenfür Ihre RDS-Sicherheitsgruppen aktivieren. Weitere Informationen finden Sie unter Amazon RDS-Sicherheitsgruppen (p. 80).

Wenn die Bereitstellung in einer VPC erfolgen soll, wird diese Seite nicht angezeigt, da die RDS-Instances für VPCs von Amazon EC2-Sicherheitsgruppen verwaltet werden.

3. Prüfen Sie auf der Seite Review (Prüfen) die Optionen, die Sie zuvor konfiguriert haben, und wählen SieOpen environment status window when wizard closes (Umgebungsstatusfenster öffnen wenn Assistentgeschlossen wird) aus.

Wenn alles richtig ist, klicken Sie auf Deploy (Bereitstellen).

Note

Wenn Sie die Anwendung bereitstellen, werden im aktiven Konto Gebühren für die AWS-Ressourcen, die von der Anwendung verwendet werden, fällig.

Sie können die Bereitstellungskonfiguration in einer Textdatei speichern, um diese dann mit demStandalone-Bereitstellungstool zu verwenden. Wählen Sie Generate AWSDeploy configuration, um dieAnwendung zu speichern. Wählen Sie Choose File (Datei auswählen) aus und geben Sie dann eineDatei an, in der die Konfiguration gespeichert werden soll. Sie können die Bereitstellungskonfigurationauch speichern, nachdem die Bereitstellung abgeschlossen ist. Öffnen Sie im AWS Explorer dasKontextmenü (rechte Maustaste) für die Bereitstellung und wählen Sie Safe Configuration (Konfigurationspeichern) aus.

Note

Wenn Sie die Anwendung bereitstellen, werden im aktiven Konto Gebühren für die AWS-Ressourcen, die von der Anwendung verwendet werden, fällig.

Seite Review (Prüfen)4. Es öffnet sich eine Statusseite für die Bereitstellung. Der Bereitstellungsvorgang kann einige Minuten

dauern.

37

Page 42: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

Wenn die Bereitstellung abgeschlossen ist, zeigt das Toolkit eine Warnung an. Dies ist nützlich, da Siesich so anderen Aufgaben widmen können, während die Bereitstellung ausgeführt wird.

Wählen Sie den Link Application URL (Anwendungs-URL) aus, um eine Verbindung zur Anwendungherzustellen.

5. Um die Bereitstellung zu löschen, erweitern Sie im AWS Explorer den Knoten Elastic Beanstalk, öffnenSie das Kontextmenü (Rechtsklick) für den Unterknoten der Bereitstellung und wählen dann Delete(Löschen) aus. Elastic Beanstalk beginnt der Löschvorgang, der einige Minuten dauern kann. Wenn Siebei der Bereitstellung eine E-Mail-Adresse für Benachrichtigungen angegeben haben, sendet ElasticBeanstalk Statusbenachrichtigungen an diese Adresse.

So erstellen Sie ein Beispiel-Webanwendungs-Starterprojekt

Gehen Sie wie folgt vor, um eine Beispielanwendung zu erstellen, wenn Sie noch kein Projekt haben, dasbereitgestellt werden kann.

1. Wählen Sie im File (Datei)-Menü von Visual Studio New (Neu) aus und dann Project.2. Erweitern Sie in der Navigationsleiste des Dialogfelds New Project (Neues Projekt) die Option Installed

(Installiert), erweitern Sie Templates (Vorlagen) und Visual C# und klicken Sie dann auf Web.3. Wählen Sie aus der Liste der verfügbaren Web-Projektvorlagen eine Vorlage aus, in deren Beschreibung

die Wörter Web und Application enthalten sind. Wählen Sie für dieses Beispiel ASP.NET Web FormsApplication (ASP.NET Web Forms-Anwendung) aus.

4. Geben Sie im Feld Name die Zeichenfolge AEBWebAppDemo ein.5. Geben Sie im Feld Location (Speicherort) den Pfad zu einem Projektmappenordner auf Ihrem

Entwicklungscomputer ein oder klicken Sie auf Browse (Durchsuchen), um einen Projektordnerauszuwählen. Klicken Sie anschließend auf Select Folder (Ordner auswählen).

6. Bestätigen Sie die Auswahl des Felds Create directory for solution (Verzeichnis für Lösung erstellen).Prüfen Sie, ob in der Dropdown-Liste Solution (Lösung) die Option Create new solution (Neue Lösungerstellen) ausgewählt ist und klicken Sie dann auf OK. Visual Studio erstellt, basierend auf derASP.NET-Web Forms Application-Projektvorlage, eine Projektmappe und ein Projekt.

Kehren Sie zurück zu How to Deploy a Web Application Using Elastic Beanstalk (Legacy) (p. 33) undschließen Sie die Bereitstellung ab.

Bereitstellen in AWS CloudFormation (Legacy)Note

Die Informationen in diesem Thema beziehen sich auf den Assistenten Publish to AmazonWeb Services (Für Amazon Web Services veröffentlichen), der durch die Bereitstellung überElastic Beanstalk mit dem Assistenten Publish to Elastic Beanstalk (Für Elastic Beanstalkveröffentlichen) ersetzt wurde. Die folgenden Informationen sind für Benutzer bestimmt, die denLegacy-Assistenten für die Bereitstellung über AWS CloudFormation verwenden möchten odermüssen.Weitere Informationen zur Verwendung des bevorzugten Assistenten Publish to Elastic Beanstalk(Für Elastic Beanstalk veröffentlichen) finden Sie unter Deploying to Elastic Beanstalk (p. 19).

AWS CloudFormation ist ein Service, der die Bereitstellung von AWS-Ressourcen für Ihre Anwendungvereinfacht. Die AWS-Ressourcen sind in einer Vorlagendatei beschrieben. Der AWS CloudFormation-Service nimmt diese Vorlage in Anspruch und stellt Ihnen automatisch die erforderlichen Ressourcenbereit. Weitere Informationen dazu finden Sie unter AWS CloudFormation.

Im Folgenden wird eine Anwendung in AWS bereitgestellt. Die Ressourcen für diese Anwendung werdenüber AWS CloudFormation bezogen. Als Übung können Sie eine Instance von einem in Visual Studiointegrierten Webanwendungs-Starterprojekt oder Ihr eigenes Projekt verwenden.

38

Page 43: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

So erstellen Sie ein Beispiel-Webanwendungs-Starterprojekt

Führen Sie die folgenden Schritte aus, wenn Sie nicht bereits über ein bereitzustellendes Projekt verfügen.

1. Wählen Sie im File (Datei)-Menü von Visual Studio New (Neu) aus und dann Project.2. Erweitern Sie in der Navigationsbereich des Dialogfelds New Project (Neues Projekt) die Option Installed

(Installiert), erweitern Sie Templates (Vorlagen) und Visual C#, und wählen Sie dann Web aus.3. Wählen Sie aus der Liste der verfügbaren Web-Projektvorlagen eine Vorlage aus, in deren Beschreibung

die Wörter Web und Application enthalten sind. Wählen Sie für dieses Beispiel ASP.NET Web FormsApplication (ASP.NET Web Forms-Anwendung) aus.

4. Geben Sie im Feld Name die Zeichenfolge AEBWebAppDemo ein.5. Geben Sie im Feld Location (Speicherort) den Pfad zu einem Projektmappenordner auf Ihrem

Entwicklungscomputer ein oder klicken Sie auf Browse (Durchsuchen), um einen Projektordnerauszuwählen. Klicken Sie anschließend auf Select Folder (Ordner auswählen).

6. Bestätigen Sie die Auswahl des Felds Create directory for solution (Verzeichnis für Lösung erstellen).Prüfen Sie, ob in der Dropdown-Liste Solution (Lösung) die Option Create new solution (Neue Lösungerstellen) ausgewählt ist und klicken Sie dann auf OK. Visual Studio erstellt, basierend auf derASP.NET-Web Forms Application-Projektvorlage, eine Projektmappe und ein Projekt.

So stellen Sie eine Anwendung mit dem Legacy-Assistenten "Publish to AmazonWeb Services" bereit

1. Öffnen Sie im Projektmappen-Explorer das Kontextmenü (Rechtsklick) für den AEBWebAppDemo-Projektordner (oder für Ihren eigenen Projektordner) und wählen Sie dann Publish to AWS (Für AWSveröffentlichen).

2. Wählen Sie auf der Seite Publish to AWS Elastic Beanstalk (Für AWS Elastic Beanstalk veröffentlichen)die Option Use legacy wizard (Legacy-Assistent verwenden).

3. Wählen Sie auf der Seite Template (Vorlage) des Assistenten das Profil aus, das Sie für dieBereitstellung verwenden möchten. Wählen Sie Other (Weitere), um ein neues Profil hinzuzufügen.Weitere Informationen über Profile finden Sie unter „Anmeldeinformationen“.

4. Im Bereitstellungsassistenten und im Standalone-Bereitstellungstool stehen Ihnen Optionen sowohlfür die erste Bereitstellung einer Anwendung als auch für die erneute Bereitstellung von Anwendungenzur Verfügung. Wenn Sie eine erneute Bereitstellung wählen, kann es einen Moment dauern, da derAssistent Informationen aus der vorherigen Bereitstellung abruft.

Die Vorlagen Load Balanced Template (Load Balanced-Vorlage) und Single Instance Template (Einzel-Instance-Vorlage) sind im Toolkit for Visual Studio enthalten. Load Balanced Template (Load Balanced-Vorlage) stellt eine Amazon EC2 Instance mit einem Elastic Load Balancing Load Balancer und einerAuto Scaling-Gruppe bereit. Single Instance Template (Einzel-Instance-Vorlage) stellt nur eine AmazonEC2 Instance bereit.

Wählen Sie in diesem Beispiel Load Balanced Template (Load Balanced-Vorlage) aus und klicken Siedann auf Next (Weiter).

5. Konfigurieren Sie auf der Seite AWS Options (AWS-Optionen) Folgendes:• Wählen Sie aus der Dropdown-Liste Key pair (Schlüsselpaar) ein Amazon EC2-Schlüsselpaar aus.• Lassen Sie das Feld SNS Topic (SNS-Thema) leer. Wenn Sie ein SNS-Thema angeben, sendet AWS

CloudFormation während der Bereitstellung Statusbenachrichtigungen.• Lassen Sie das Feld Custom AMI (Angepasstes AMI) leer. Die AWS CloudFormation-Vorlage

beinhaltet ein AMI.• Übernehmen Sie in der Dropdown-Liste Instance type (Instance-Typ) die Standardeinstellung Micro.

Dadurch werden die Kosten für die Ausführung der Instance minimiert. Weitere Informationen überAmazon EC2-Kosten finden Sie auf der Seite Amazon EC2 — Preise.

39

Page 44: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

• Wählen Sie in der Dropdown-Liste Security group (Sicherheitsgruppe) eine Sicherheitsgruppe aus, beider Port 80 offen ist. Wenn Sie bereits eine Sicherheitsgruppe mit offenem Port 80 konfiguriert haben,wählen Sie diese aus. Bei der Standardeinstellung default in dieser Dropdown-Liste ist Port 80 nichtoffen.

Bei in AWS CloudFormation bereitgestellten Anwendungen muss Port 80 offen sein, da AWSCloudFormation diesen Port für die Weiterleitung von Bereitstellungsinformationen nutzt. WennPort 80 bei der gewählten Sicherheitsgruppe nicht offen ist, fragt der Assistent, ob der Port geöffnetwerden sollte. Wenn Sie mit Ja antworten, bleibt Port 80 für alle Amazon EC2 Instances, die dieSicherheitsgruppe verwenden, offen. Weitere Informationen zur Erstellung von Sicherheitsgruppenfinden Sie unter Managing Security Groups from AWS Explorer (p. 14).

Wählen Sie Next (Weiter).6. Wählen Sie auf der Seite Application Options (Anwendungsoptionen) im Abschnitt Application

Credentials (Anwendungsanmeldeinformationen) das Profil aus, unter dem die Anwendung (in diesemBeispiel PetBoard) ausgeführt werden soll. Es muss sich dabei nicht um das gleiche Profil handeln,das für die Bereitstellung in AWS CloudFormation verwendet wird (d. h. das Profil, das Sie auf der erstenSeite des Assistenten festgelegt haben).

Um einen anderen Satz an Anmeldeinformationen zu verwenden, wählen Sie Use these credentials(Diese Anmeldeinformationen verwenden) und geben dann den Zugriffsschlüssel sowie den geheimenSchlüssel in die dafür vorgesehenen Felder ein.

Um dieselben Anmeldeinformationen zu verwenden, wählen Sie Use credentials from profileprofile_name (Anmeldeinformationen aus Profil profile_name verwenden), wobei es sich bei{profile_name} um das Profil handelt, das Sie auf der ersten Seite des Assistenten festgelegt haben.

Um die Anmeldeinformationen für einen AWS Identity and Access Management- (IAM-) Benutzerzu verwenden, wählen Sie Use an IAM user (Einen IAM-Benutzer verwenden) und geben dann denBenutzer an.

Um einen IAM-Benutzer zu verwenden, müssen Sie:• den IAM-Benutzer in Toolkit for Visual Studio erstellt haben.• den geheimen Schlüssel für den Benutzer mit dem Toolkit for Visual Studio gespeichert haben.

Weitere Informationen finden Sie unter Create and Configure an IAM User (p. 84) und GenerateCredentials for an IAM User (p. 86).

Es könnte mehr als ein Satz Anmeldeinformationen für einen IAM-Benutzer im Toolkit gespeichertsein. Wenn dies der Fall ist, müssen Sie auswählen, welche Anmeldeinformationen verwendet werdensollen. Das Stammkonto könnte die Anmeldeinformationen für den IAM-Benutzer rotieren, wodurch dieAnmeldeinformationen deaktiviert werden. Bei einem solchen Szenario müssten Sie die Anwendungerneut bereitstellen und dann manuell die Anmeldeinformationen für den IAM-Benutzer eingeben.

In der folgenden Tabelle sehen Sie weitere Optionen, die auf der Seite Application Options(Anwendungsoptionen) verfügbar sind. Übernehmen Sie für PetBoard die Standardeinstellungen.

Schlüssel und Wert Beschreibung

PARAM1, PARAM2, PARAM3, PARAM4,PARAM5

Diese Werte stehen der bereitgestelltenAnwendung über das appSettings-Elementin der Web.config-Datei zur Verfügung. WeitereInformationen hierzu finden Sie in der MicrosoftMSDN library.

Target framework Gibt die Version von .NET Framework an, nachder sich die Anwendung richtet. Mögliche Werte

40

Page 45: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen in Elastic Beanstalk

Schlüssel und Wert Beschreibungsind: .NET Framework 2.0, .NET Framework3.0, .NET Framework 3.5, .NET Framework4.0, .NET Framework 4.5

Enable 32-bit applications Auswählen, wenn es sich um eine 32-Bit-Anwendung handelt. Andernfalls lassen Sie dasFeld deaktiviert.

Application health check URL Diese URL hängt von der Root-Server-URL ab.Wenn der komplette URL-Pfad beispielsweiseexample.com/site-is-up.html lautet,würden Sie Folgendes eingeben: /site-is-up.html. Diese Einstellung gilt nur, wenn Siedie Vorlage "Load Balanced" verwenden. WennSie die Vorlage "Single Instance" nutzen, wird dieEinstellung ignoriert.

Klicken Sie auf Finish (Abschließen).7. Wählen Sie auf der Seite Review (Prüfen) Open environment status window when wizard closes

(Umgebungsstatusfenster beim Schließen des Assistenten öffnen) aus.

Sie können die Bereitstellungskonfiguration in einer Textdatei speichern, um diese dann mit demStandalone-Bereitstellungstool zu verwenden. Wählen Sie Generate AWSDeploy configuration, um dieAnwendung zu speichern. Wählen Sie Choose File (Datei auswählen) aus und geben Sie dann eineDatei an, in der die Konfiguration gespeichert werden soll. Sie können die Bereitstellungskonfigurationauch speichern, nachdem die Bereitstellung abgeschlossen ist. Öffnen Sie im AWS Explorer dasKontextmenü (rechte Maustaste) für die Bereitstellung und wählen Sie Safe Configuration (Konfigurationspeichern) aus.

Note

Da die Bereitstellungskonfiguration die Anmeldeinformationen enthält, die für die Bereitstellungverwendet wurden, sollten Sie die Konfigurationsdatei an einem sicheren Ort speichern.

Wählen Sie Deploy (Bereitstellen) aus.

Note

Wenn Sie die Anwendung bereitstellen, werden im aktiven Konto Gebühren für die AWS-Ressourcen, die von der Anwendung verwendet werden, fällig.

8. Es öffnet sich eine Statusseite für die Bereitstellung. Der Bereitstellungsvorgang kann einige Minutendauern.

Wenn die Bereitstellung abgeschlossen ist, zeigt das Toolkit eine Warnung an. Dies ist nützlich, da Siesich so anderen Aufgaben widmen können, während die Bereitstellung ausgeführt wird.

Wenn die Bereitstellung abgeschlossen ist, zeigt das Toolkit for Visual Studio den StatusCREATE_COMPLETE an.

Wählen Sie den Link Application URL (Anwendungs-URL) aus, um eine Verbindung zur Anwendungherzustellen.

9. Um die Bereitstellung zu löschen, erweitern Sie im AWS Explorer den Knoten CloudFormation undöffnen das Kontextmenü (Rechtsklick) für den Unterknoten der Bereitstellung. Dann wählen Sie Delete(Löschen) aus. AWS CloudFormation beginnt der Löschvorgang, der einige Minuten dauern kann.Wenn Sie ein SNS-Thema für die Bereitstellung angegeben haben, sendet AWS CloudFormationStatusbenachrichtigungen zu diesem Thema.

41

Page 46: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen für einen Amazon EC2-Container-Service

Bereitstellen für einen Amazon EC2-Container-ServiceAmazon Elastic Container Service ist ein hoch skalierbarer und äußerst leistungsfähiger Container-Management-Service, der Docker-Container unterstützt und es Ihnen erlaubt, Anwendungen auf einemverwalteten Cluster von Amazon EC2-Instanzen auf einfache Art zu betreiben.

Für die Bereitstellung von Anwendungen in Amazon Elastic Container Service müssen dieAnwendungskomponenten für die Ausführung in einem Docker-Container konzipiert sein. Ein Docker-Container ist eine standardisierte Einheit der Softwareentwicklung, die alles beinhaltet, was IhreSoftwareanwendung für die Ausführung benötigt: Code, Laufzeit, Systemtools, Systembibliotheken usw.

Das Toolkit for Visual Studio bietet einen Assistenten, der die Veröffentlichung von Anwendungen überAmazon ECS vereinfacht. Dieser Assistent wird in den folgenden Abschnitten beschrieben.

Weitere Informationen zu Amazon ECS finden Sie in der Dokumentation zum Elastic Container Service. Sieenthält eine Übersicht über die Docker-Grundlagen und eine exemplarische Vorgehensweise zum Erstelleneines Clusters.

Themen• Angabe von AWS-Anmeldeinformationen für Ihre ASP.NET-Core 2 Anwendung (p. 42)• Bereitstellung einer ASP.NET Core 2.0 App in Amazon ECS (Fargate) (p. 44)• Bereitstellung einer ASP.NET Core 2.0 App in Amazon ECS (EC2) (p. 46)

Angabe von AWS-Anmeldeinformationen für Ihre ASP.NET-Core2 AnwendungEs gibt zwei Typen von Anmeldeinformationen, die bei der Bereitstellung Ihrer Anwendung ineinem Docker-Container relevant sind: Bereitstellungs-Anmeldeinformationen und Instance-Anmeldeinformationen.

Bereitstellungs-Anmeldeinformationen werden vom Publish Container to AWS-Assistenten verwendet, umdie Umgebung in Amazon ECS zu erstellen. Dies sind beispielsweise Aufgaben, Services, IAM-Rollen, einDocker-Container-Repository, und, falls von Ihnen ausgewählt, ein Load Balancer.

Instance-Anmeldeinformationen werden von der Instance (einschließlich Ihrer Anwendung) verwendet,um auf verschiedene AWS-Services zuzugreifen. Wenn beispielsweise Ihre ASP.NET-Core 2.0-Anwendung Lese- und Schreibvorgänge für Amazon S3-Objekte ausführt, benötigt sie entsprechendeBerechtigungen. Sie können verschiedene Anmeldeinformationen unter Verwendung verschiedenerMethoden basierend auf der Umgebung bereitstellen. Beispielsweise könnte Ihre ASP.NET Core 2-Anwendung auf Development- und Production-Umgebungen ausgelegt sein. Sie könnten mit eine lokaleDocker-Instance und Anmeldeinformationen für die Entwicklung und eine definierte Rolle in der Produktionverwenden.

Angeben von Anmeldeinformationen für die Bereitstellung

Das AWS-Konto, das Sie im Publish Container to AWS (Container für AWS veröffentlichen)-Assistentenangeben, ist das AWS-Konto, das der Assistent für die Bereitstellung in Amazon ECS verwendet. DasKonto-Profil muss Berechtigungen für Amazon Elastic Container Service, AWS Identity and AccessManagement und Amazon Elastic Compute Cloud besitzen.

Wenn Sie feststellen, dass Optionen in Dropdown-Listen fehlen, kann es sein, dass Sie nicht über dieentsprechenden Berechtigungen verfügen. Das könnte der Fall sein, wenn Sie einen Cluster für IhreAnwendung erstellt haben, er aber auf der Cluster-Seite des Publish Container to AWS (Container fürAWS veröffentlichen)-Assistenten nicht angezeigt wird. Wenn dies der Fall ist, fügen Sie die fehlendenBerechtigungen hinzu und versuchen erneut, den Assistenten auszuführen.

42

Page 47: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen für einen Amazon EC2-Container-Service

Angabe von Instance-Anmeldeinformationen für die Entwicklung

Für nicht-produktive Umgebungen können Sie Ihre Anmeldeinformationen in der Dateiappsettings.<environment>.json konfigurieren. Gehen Sie beispielsweise wie folgt vor, um IhreAnmeldeinformationen in der appsettings.Development.json-Datei in Visual Studio 2017 zu konfigurieren:

1. Fügen Sie Ihrem Projekt das AWSSDK.Extensions.NETCore.Setup NuGet-Paket hinzu.2. appsettings.Development.json AWS-Einstellungen hinzufügen Die folgende Konfiguration legt Profile

und Region fest.

{ "AWS": { "Profile": "local-test-profile", "Region": "us-west-2" }}

Angabe von Instance-Anmeldeinformationen für die Produktion

Für Produktions-Instances empfehlen wir die Verwendung einer IAM-Rolle, um zu kontrollieren, woraufIhre Anwendung (und der Service) zugreifen kann. Um beispielsweise eine IAM-Rolle mit Amazon ECS alsService-Prinzipal mit Berechtigungen für Amazon Simple Storage Service und Amazon DynamoDB von derAWS Management Console aus zu konfigurieren, gehen Sie wie folgt vor:

1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/.

2. Klicken Sie im Navigationsbereich der IAM-Konsole auf Roles und wählen Sie dann Create role aus.3. Wählen Sie den Rollentyp AWS Service und dann EC2 Container Service.4. Wählen Sie den Anwendungsfall EC2 Container Service Task (EC2-Container-Service-Aufgabe).

Anwendungsfälle werden durch den Service definiert, damit die für den Service erforderlicheVertrauensrichtlinie enthalten ist. Wählen Sie dann Next: Permissions (Weiter: Berechtigungen) aus.

5. Wählen Sie die Berechtigungsrichtlinien AmazonS3FullAccess und AmazonDynamoDBFullAccess.Markieren Sie das Kontrollkästchen neben der jeweiligen Richtlinie und wählen Sie Next: Review(Weiter: Prüfen),

6. Geben Sie für Role name (Rollenname) einen Rollennamen oder ein Rollennamen-Suffix ein, anhanddessen der Zweck dieser Rolle einfach zu erkennen ist. Rollennamen müssen innerhalb Ihres AWS-Kontos eindeutig sein. Es wird hierbei nicht zwischen Groß- und Kleinschreibung unterschieden.Beispielsweise können Sie keine Rollen erstellen, die PRODROLE bzw. prodrole heißen. Damöglicherweise verschiedene Entitäten auf die Rolle verweisen, kann der Rollenname nach derErstellung nicht bearbeitet werden.

7. (Optional) Geben Sie im Feld Role description (Rollenbeschreibung) eine Beschreibung für die neueRolle ein.

8. Prüfen Sie die Rolle und klicken Sie dann auf Create Role (Rolle erstellen).

Sie können diese Rolle als task role (Aufgabenrolle) auf der Seite ECS Task Definition (ECS-Aufgabendefinition) des Publish Container to AWS (Container für AWS veröffentlichen)-Assistentenverwenden.

Weitere Informationen finden Sie unter Verwenden von servicebasierten Rollen.

43

Page 48: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen für einen Amazon EC2-Container-Service

Bereitstellung einer ASP.NET Core 2.0 App in Amazon ECS(Fargate)In diesem Abschnitt wird beschrieben, wie Sie mit dem Publish Container to AWS (Container für AWSveröffentlichen) Assistenten, der in Toolkit for Visual Studio enthalten ist, eine auf Container ausgelegteASP.NET-Core 2.0-Anwendung für Linux über Amazon ECS unter Verwendung des Fargate-Starttypsbereitstellen. Da eine Webanwendung kontinuierlich ausgeführt werden soll, wird sie als Servicebereitgestellt.

Bevor Sie Ihren Container veröffentlichenBevor Sie den Publish Container to AWS (Container für AWS veröffentlichen)-Assistenten zurBereitstellung Ihrer ASP.NET-Core 2.0-Anwendung verwenden:

• Geben Sie Ihre AWS-Anmeldeinformationen an und richten Sie Amazon ECS ein.• Docker-Installation. Sie haben verschiedene Installationsoptionen, einschließlich Docker für Windows.• Erstellen (oder öffnen) Sie eine auf Container ausgelegte ASP.NET-Core 2.0-Anwendung, die für ein

Linux-Projekt in Visual Studio 2017 vorgesehen ist.

Zugriff auf den Publish Container to AWS-AssistentenUm eine auf Container ausgelegte ASP.NET Core 2.0-Anwendung für Linux bereitzustellen, klicken Sie mitder rechten Maustaste im Projektmappen-Explorer auf das Projekt und wählen Publish Container to AWS(Container für AWS veröffentlichen) aus.

Sie können auch Publish Container to AWS (Container für AWS veröffentlichen) im Visual Studio Build-Menü auswählen.

Publish Container to AWS-AssistentAccount profile to use – Wählen Sie ein zu verwendendes Kontoprofil aus.

Region – Wählen Sie die Bereitstellungsregion aus. Profil und Region werden verwendet, um IhreDeployment-Umgebungsressourcen einzurichten und die Docker-Standardregistry auszuwählen.

Configuration – Wählen Sie die Docker-Image-Build-Konfiguration aus.

Docker Repository – Wählen Sie ein vorhandenes Docker-Repository aus, oder geben Sie den Nameneines neuen Repositorys ein, das dann erstellt wird. Dies ist das Repository, in das der Build-Containerverschoben wird.

Tag – Wählen Sie ein vorhandenes Tag aus, oder geben Sie den Namen eines neuen Tags ein. Tagskönnen wichtige Details nachverfolgen, wie Version, Optionen oder andere eindeutige Elemente desDocker-Containers.

Deployment Target – Wählen Sie Service on an ECS Cluster (Service auf einem ECS-Cluster). VerwendenSie diese Bereitstellungsoption, wenn Ihre Anwendung sehr lange ausgeführt werden soll (z. B. eineASP.NET-Webanwendung).

Save settings to aws-docker-tools-defaults.json and configure project for command line deployment– Markieren Sie diese Option, wenn Sie die Flexibilität genießen wollen, eine Bereitstellung über dieBefehlszeile durchzuführen. Verwenden Sie dotnet ecs deploy aus Ihrem Projektverzeichnis, dasbereitgestellt werden soll, und veröffentlichen Sie den Container mit dotnet ecs publish.

Seite Launch ConfigurationECS Cluster – Wählen Sie den Cluster, der Ihr Docker-Image ausführt. Wenn Sie auswählen, einen leerenCluster zu erstellen, geben Sie einen Namen für den neuen Cluster an.

44

Page 49: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen für einen Amazon EC2-Container-Service

Launch Type – Wählen Sie FARGATE.

CPU Maximum (vCPU) – Wählen Sie die maximale Rechenkapazität, die für Ihre Anwendung erforderlichist. Zulässige Bereiche für die CPU- und RAM-Werte finden Sie unter Task-Größe.

Memory Maximum (GB) – Wählen Sie die maximale Arbeitsspeichergröße für Ihre Anwendung.

VPC Subnets – Wählen Sie ein oder mehrere Subnetze in einer einzelnen VPC. Wenn Sie mehr als einSubnetz wählen, werden Ihre Tasks über diese verteilt. Dies kann die Verfügbarkeit verbessern. WeitereInformationen finden Sie unter Standard-VPC und Standard-Subnetze.

Security Groups – Wählen Sie eine Sicherheitsgruppe.

Eine Sicherheitsgruppe fungiert als Firewall für zugeordnete Amazon EC2 Instances. Sie steuern den ein-und ausgehenden Datenverkehr auf Instance-Ebene.

Standard-Sicherheitsgruppen sind so konfiguriert, dass der eingehende Datenverkehr zugelassen wird,der Instances derselben Sicherheitsgruppe zugewiesen ist, ebenso wie der gesamte ausgehende IPv4-Datenverkehr. Ausgehender Verkehr muss zugelassen sein, sodass der Service das Container-Repositoryerreichen kann.

Assign Public IP Address – Markieren Sie dies, damit über das Internet auf Ihre Aufgabe zugegriffenwerden kann.

Seite Service ConfigurationService – Wählen Sie einen der Services in der Dropdown-Liste, um Ihren Container in einem vorhandenenService bereitzustellen. Oder wählen Sie Create New (Neu erstellen), um einen neuen Service zu erstellen.Servicenamen in einem Cluster müssen eindeutig sein. Sie können jedoch ähnlich benannte Services inmehreren Clustern innerhalb einer Region oder in mehreren Regionen haben.

Number of tasks – Die Anzahl der Aufgaben an, die bereitgestellt und auf Ihrem Cluster ausgeführt werdensollen. Jede Aufgabe ist eine Instance Ihres Containers.

Minimum Healthy Percent – Der Prozentsatz der Aufgaben, die während einer Bereitstellung im StatusRUNNING bleiben müssen, aufgerundet auf die nächste ganze Zahl.

Maximum Percent – Der Prozentsatz der Aufgaben, die während einer Bereitstellung im Status RUNNINGoder PENDING bleiben dürfen, aufgerundet auf die nächste ganze Zahl.

Seite Application Load BalancerConfigure Application Load Balancer – Markieren, um einen Application Load Balancer zu konfigurieren.

Load Balancer – Wählen Sie einen vorhandenen Load Balancer aus, oder wählen Sie Create New (Neuerstellen), und geben Sie den Namen für den neuen Load Balancer ein.

Listener Port – Wählen Sie einen vorhandenen Listener Port aus, oder wählen Sie Create New (Neuerstellen), und geben Sie eine Portnummer ein. Für die meisten Webanwendungen ist der Standardportgeeignet, 80.

Target Group – Wählen Sie die Zielgruppe aus, für die Amazon ECS die Aufgaben für den Serviceregistriert.

Path Pattern – Der Load Balancer verwendet ein auf dem Pfad basierendes Routing. Übernehmen Sieden Standard / oder geben Sie ein anderes Muster ein. Beim Pfadmuster wird die Groß-/Kleinschreibungberücksichtigt, es kann maximal 128 Zeichen lang sein und es enthält eine ausgewählte Zeichenmenge.

Health Check Path – Der Ping-Pfad, der als Zielpfad für die Ziele der Zustandsprüfungen gilt.Standardmäßig ist dieser /. Geben Sie gegebenenfalls einen anderen Pfad ein. Wenn der von Ihneneingegebene Pfad ungültig ist, schlägt die Zustandsprüfung fehl und er wird als fehlerhaft betrachtet.

45

Page 50: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen für einen Amazon EC2-Container-Service

Wenn Sie mehrere Services bereitstellen und jeder Service auf einen anderen Pfad oder Standortbereitgestellt wird, müssen Sie benutzerdefinierte Pfade überprüfen.

Seite Task Definition

Task Definition – Wählen Sie eine vorhandene Aufgabendefinition aus, oder wählen Sie Create New (Neuerstellen), und geben Sie den Namen für eine neue Aufgabendefinition ein.

Container – Wählen Sie einen vorhandenen Container aus, oder wählen Sie Create New (Neu erstellen),und geben Sie den Namen für einen neuen Container ein.

Task Role – Wählen Sie eine IAM-Rolle, die die Anmeldeinformationen besitzt, die Ihre Anwendung für denZugriff auf AWS-Services benötigt. So werden Ihrer Anwendung Anmeldeinformationen übergeben. LesenSie hier nach, wie Sie AWS-Sicherheitsanmeldeinformationen für Ihre Anwendung angeben.

Task Execution Role – Wählen Sie eine Rolle mit Berechtigungen, um private Bilder und Protokolle zuveröffentlichen. AWS Fargate verwenden diese in Ihrem Namen.

Port Mapping – Wählen Sie die Port-Nummer auf dem Container, der an den automatisch zugewiesenenHost-Port gebunden ist.

Environment Variables – Umgebungsvariablen für den Container hinzufügen, ändern oder löschen. Siekönnen sie so anpassen, dass sie zu Ihrer Bereitstellung passen.

Wenn Sie mit der Konfiguration zufrieden sind, klicken Sie auf Publish (Veröffentlichen), um mit demBereitstellungsprozess zu beginnen.

Einen Container in AWS veröffentlichen

Ereignisse werden während der Bereitstellung angezeigt. Der Assistent wird automatisch geschlossen,wenn sie erfolgreich ausgeführt wurde. Sie können diese Einstellung überschreiben, indem Sie dieMarkierung im Feld unten auf der Seite entfernen.

Sie finden die URL Ihrer neuen Instances im AWS Explorer. Erweitern Sie Amazon ECS und Cluster undklicken Sie dann auf Ihren Cluster.

Bereitstellung einer ASP.NET Core 2.0 App in Amazon ECS(EC2)In diesem Abschnitt wird beschrieben, wie Sie mit dem Publish Container to AWS (Container für AWSveröffentlichen) Assistenten, der in Toolkit for Visual Studio enthalten ist, eine auf Container ausgelegteASP.NET-Core 2.0-Anwendung für Linux über Amazon ECS unter Verwendung des EC2-Starttypsbereitstellen. Da eine Webanwendung kontinuierlich ausgeführt werden soll, wird sie als Servicebereitgestellt.

Bevor Sie Ihren Container veröffentlichen

Bevor Sie den Publish Container to AWS (Container für AWS veröffentlichen)-Assistenten zurBereitstellung Ihrer ASP.NET-Core 2.0-Anwendung verwenden:

• Geben Sie Ihre AWS-Anmeldeinformationen an und richten Sie Amazon ECS ein.• Docker-Installation. Sie haben verschiedene Installationsoptionen, einschließlich Docker für Windows.• Erstellen eines Amazon ECS-Clusters basierend auf den Anforderungen Ihrer Webanwendung. Dazu

sind nur wenige Schritte erforderlich.• Erstellen (oder öffnen) Sie eine auf Container ausgelegte ASP.NET-Core 2.0-Anwendung, die für ein

Linux-Projekt in Visual Studio 2017 vorgesehen ist.

46

Page 51: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen für einen Amazon EC2-Container-Service

Zugriff auf den Publish Container to AWS-AssistentenUm eine auf Container ausgelegte ASP.NET Core 2.0-Anwendung für Linux bereitzustellen, klicken Sie mitder rechten Maustaste im Projektmappen-Explorer auf das Projekt und wählen Publish Container to AWS(Container für AWS veröffentlichen) aus.

Sie können auch Publish Container to AWS (Container für AWS veröffentlichen) im Visual Studio Build-Menü auswählen.

Publish Container to AWS-AssistentAccount profile to use – Wählen Sie ein zu verwendendes Kontoprofil aus.

Region – Wählen Sie eine Bereitstellungsregion aus. Profil und Region werden verwendet, um IhreDeployment-Umgebungsressourcen einzurichten und die Docker-Standardregistry auszuwählen.

Configuration – Wählen Sie die Docker-Image-Build-Konfiguration aus.

Docker Repository – Wählen Sie ein vorhandenes Docker-Repository aus, oder geben Sie den Nameneines neuen Repositorys ein, das dann erstellt wird. Dies ist das Repository, in das das erstellte Container-Image verschoben wird.

Tag – Wählen Sie ein vorhandenes Tag aus, oder geben Sie den Namen eines neuen Tags ein. Tagskönnen wichtige Details nachverfolgen, wie Version, Optionen oder andere eindeutige Elemente desDocker-Containers.

Deployment – Wählen Sie Service on an ECS Cluster (Service auf einem ECS-Cluster). Verwenden Siediese Bereitstellungsoption, wenn Ihre Anwendung sehr lange ausgeführt werden soll (z. B. eine ASP.NETCore 2.0-Webanwendung).

Save settings to aws-docker-tools-defaults.json and configure project for command line deployment– Markieren Sie diese Option, wenn Sie die Flexibilität genießen wollen, eine Bereitstellung über dieBefehlszeile durchzuführen. Verwenden Sie dotnet ecs deploy aus Ihrem Projektverzeichnis, dasbereitgestellt werden soll, und veröffentlichen Sie den Container mit dotnet ecs publish.

Seite Launch ConfigurationECS Cluster – Wählen Sie den Cluster, der Ihr Docker-Image ausführt. Sie können einen ECS-Cluster unterVerwendung der AWS Management Console erstellen.

Launch Type – Wählen Sie EC2. Um den Fargate-Starttyp zu verwenden, lesen Sie nachunter Deployingan ASP.NET Core 2.0 Application to Amazon ECS (Fargate).

Seite Service ConfigurationService – Wählen Sie einen der Services in der Dropdown-Liste, um Ihren Container in einem vorhandenenService bereitzustellen. Oder wählen Sie Create New (Neu erstellen), um einen neuen Service zu erstellen.Servicenamen in einem Cluster müssen eindeutig sein. Sie können jedoch ähnlich benannte Services inmehreren Clustern innerhalb einer Region oder in mehreren Regionen haben.

Number of tasks – Die Anzahl der Aufgaben an, die bereitgestellt und auf Ihrem Cluster ausgeführt werdensollen. Jede Aufgabe ist eine Instance Ihres Containers.

Minimum Healthy Percent – Der Prozentsatz der Aufgaben, die während einer Bereitstellung im StatusRUNNING bleiben müssen, aufgerundet auf die nächste ganze Zahl.

Maximum Percent – Der Prozentsatz der Aufgaben, die während einer Bereitstellung im Status RUNNINGoder PENDING bleiben dürfen, aufgerundet auf die nächste ganze Zahl.

Placement Templates – Wählen Sie eine Vorlage für eine Aufgabenplatzierung

47

Page 52: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen für einen Amazon EC2-Container-Service

Wenn Sie eine Aufgabe in einem Cluster starten, muss Amazon ECS bestimmen, wo die Aufgabebasierend auf den in der Aufgabendefinition angegebenen Anforderungen, beispielsweise CPU undArbeitsspeicher, platziert werden soll. Wenn Sie die Anzahl der Aufgaben herunterskalieren, muss AmazonECS auf ähnliche Weise bestimmen, welche Aufgaben beendet werden sollen.

Die Platzierungsvorlage steuert, wie Aufgaben in einem Cluster gestartet werden:

• AZ Balanced Spread: Verteilt Aufgaben über Availability Zones und über Container-Instances in derAvailability Zone.

• AZ Balanced BinPack: Verteilt Aufgaben über Availability Zones und über Container-Instances mit dergeringsten verfügbaren Menge an Arbeitsspeicher.

• BinPack: Verteilt Aufgaben basierend auf der geringsten verfügbaren Menge von CPU oderArbeitsspeicher.

• One Task Per Host: Platziert höchstens eine Aufgabe vom Service auf jeder Container-Instance.

Weitere Informationen finden Sie unter Amazon ECS-Aufgabenplatzierung.

Seite Application Load BalancerConfigure Application Load Balancer – Markieren, um einen Application Load Balancer zu konfigurieren.

Select IAM role for service – Wählen Sie eine vorhandene Rolle oder wählen Sie Create New (Neuerstellen), sodass eine neue Rolle erstellt wird.

Load Balancer – Wählen Sie einen vorhandenen Load Balancer aus, oder wählen Sie Create New (Neuerstellen), und geben Sie den Namen für den neuen Load Balancer ein.

Listener Port – Wählen Sie einen vorhandenen Listener Port aus, oder wählen Sie Create New (Neuerstellen), und geben Sie eine Portnummer ein. Für die meisten Webanwendungen ist der Standardportgeeignet, 80.

Target Group – Der Load Balancer sendet standardmäßig Anfragen an registrierte Ziele mithilfe desPorts und des Protokolls, den bzw. das Sie für die Zielgruppe angegeben haben. Sie können diesen Portüberschreiben, wenn Sie jedes Ziel bei der Zielgruppe registrieren.

Path Pattern – Der Load Balancer verwendet ein auf dem Pfad basierendes Routing. Übernehmen Sieden Standard / oder geben Sie ein anderes Muster ein. Beim Pfadmuster wird die Groß-/Kleinschreibungberücksichtigt, es kann maximal 128 Zeichen lang sein und es enthält eine ausgewählte Zeichenmenge.

Health Check Path – Der Ping-Pfad, der als Zielpfad für die Ziele der Zustandsprüfungen gilt. Für diemeisten Webanwendungen ist dies standardmäßig /, ein geeigneter Wert. Geben Sie gegebenenfallseinen anderen Pfad ein. Wenn der von Ihnen eingegebene Pfad ungültig ist, schlägt die Zustandsprüfungfehl und er wird als fehlerhaft betrachtet.

Wenn Sie mehrere Services bereitstellen und jeder Service auf einen anderen Pfad oder Standortbereitgestellt wird, müssen Sie möglicherweise benutzerdefinierte Pfade überprüfen.

Seite ECS Task DefinitionTask Definition – Wählen Sie eine vorhandene Aufgabendefinition aus, oder wählen Sie Create New (Neuerstellen), und geben Sie den Namen für eine neue Aufgabendefinition ein.

Container – Wählen Sie einen vorhandenen Container aus, oder wählen Sie Create New (Neu erstellen),und geben Sie den Namen für einen neuen Container ein.

Memory (MiB) – Geben Sie Werte für Soft Limit oder Hard Limit oder beides an.

Die Soft-Limit-Arbeitsspeichergrenze (in MiB) für die Reservierung für den Container. Docker versucht,den Container-Arbeitsspeicher unter dem Soft Limit zu halten. Der Container mehr Speicher verbrauchen,

48

Page 53: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchStandalone-Bereitstellungstool

bis zu dem mit dem Speicherparameter (gegebenenfalls) angegebenen Hard Limit, oder den gesamtenverfügbaren Speicher auf der Container-Instance, je nachdem, welcher Wert zuerst erreicht wird.

Die Hard-Limit-Arbeitsspeichergrenze (in MiB), die dem Container bereitgestellt wird. Wenn Ihr Containerversucht, das hier angegebene Limit zu überschreiten, wird der Container beendet.

Task Role: Wählen Sie eine Task-Rolle für eine IAM-Rolle, die dem Container gestattet, für Sie dieAWS-APIs aufzurufen, die in den zugehörigen Richtlinien angegeben sind. So werden Ihrer AnwendungAnmeldeinformationen übergeben. Lesen Sie hier nach, wie Sie AWS-Sicherheitsanmeldeinformationen fürIhre Anwendung angeben.

Port-Mapping – Port-Zuordnungen für den Container hinzufügen, ändern oder löschen. Wenn ein LoadBalancer aktiviert ist, ist der Host-Port standardmäßig 0, und die Port-Zuordnung erfolgt dynamisch.

Environment Variables – Umgebungsvariablen für den Container hinzufügen, ändern oder löschen.

Wenn Sie mit der Konfiguration zufrieden sind, klicken Sie auf Publish (Veröffentlichen), um mit demBereitstellungsprozess zu beginnen.

Einen Container in AWS veröffentlichen

Ereignisse werden während der Bereitstellung angezeigt. Der Assistent wird automatisch geschlossen,wenn sie erfolgreich ausgeführt wurde. Sie können diese Einstellung überschreiben, indem Sie dieMarkierung im Feld unten auf der Seite entfernen.

Sie finden die URL Ihrer neuen Instances im AWS Explorer. Erweitern Sie Amazon ECS und Cluster undklicken Sie dann auf Ihren Cluster.

Standalone-BereitstellungstoolNote

Die Optionen des Standalone-Bereitstellungstools im Zusammenhang mit AWS CloudFormation-Bereitstellungen und inkrementellen Bereitstellungen auf Elastic Beanstalk sind in der aktuellenVersion veraltet und sollten nicht mehr verwendet werden.Weitere Informationen zur Verwendung des bevorzugten Assistenten Publish to Elastic Beanstalk(Für Elastic Beanstalk veröffentlichen) finden Sie unter Deploying to Elastic Beanstalk (p. 19).

Das Toolkit for Visual Studio umfasst ein Befehlszeilen-Tool, das dieselbe Funktionalität bietet wie derBereitstellungsassistent. Sie können das Standalone-Bereitstellungstool in Ihrer Build-Pipeline oder inanderen Skripten verwenden, um Bereitstellungen auf Elastic Beanstalk zu automatisieren.

Das Bereitstellungstool unterstützt sowohl erste als auch erneute Bereitstellungen. Wenn Sie dasBereitstellungstool für Ihre Anwendung verwendet haben, können Sie es mit dem entsprechendenAssistenten in Visual Studio erneut bereitstellen und umgekehrt.

Das Bereitstellungstool nimmt eine Konfigurationsdatei in Anspruch, in der Parameterwerte für dieBereitstellung angegeben sind. Wenn Sie den Bereitstellungsassistenten in Visual Studio für IhreAnwendung genutzt haben, können Sie entweder im AWS Explorer oder im letzten Schritt des Assistenteneine Konfigurationsdatei erstellen.

Note

Da die Bereitstellungskonfiguration die Anmeldeinformationen enthält, die für die Bereitstellungverwendet wurden, sollten Sie die Konfigurationsdatei an einem sicheren Ort speichern.

Um das Bereitstellungstool für Ihre Webanwendung zu nutzen, komprimieren Sie die Anwendung zunächstin einer .zip-Datei. Weitere Informationen über das Verpacken Ihrer Anwendung für die Bereitstellungfinden Sie unter Gewusst wie: Erstellen eines Webbereitstellungspakets in Visual Studio auf MSDN.

49

Page 54: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchStandalone-Bereitstellungstool

Installieren und Aufrufen des BereitstellungstoolsDas Bereitstellungstool ist in der Regel im folgenden Verzeichnis installiert:

C:\Program Files\AWS Tools\Deployment Tool\awsdeploy.exe

In Microsoft Windows 64-Bit-Systemen wird es normalerweise im folgenden Verzeichnis installiert:

C:\Program Files (x86)\AWS Tools\Deployment Tool\awsdeploy.exe

Aufrufsyntax

awsdeploy [options] configFile

Die Konfigurationsdatei muss das letzte Element in der Befehlszeile sein.

Befehlszeilenoptionen können mit einem Schrägstrich (/) oder mit einem Bindestrich (-) angegeben werden.

Mit Ausnahme der Option D verfügt jede Befehlszeilenoption über eine Langform und eine Abkürzung,die aus einem einzigen Buchstaben besteht. Sie können beispielsweise den Lautlosmodus mit einem derfolgenden Verfahren festlegen:

/s-s/silent-silent

Andere Befehlszeilenoptionen sind ähnlich gestaltet.

In der nachstehenden Tabelle finden Sie die verfügbaren Befehlszeilen-Optionen.

Option Beschreibung

/s,/silent, -s, -silent Keine Nachrichten an die Konsole ausgeben.

/v,/verbose, -v, -verbose Detailliertere Informationen über die Bereitstellungan die Konsole senden.

/r,/redeploy, -r, -redeploy Keinen Stack erstellen. Bereitstellung in einemvorhandenem Stack durchführen. Durch dieseOption wird die AWS CloudFormation-Konfigurationnicht geändert.

/u, /updateStack, -u, -updateStack Aktualisieren der AWS CloudFormation-Konfiguration für eine vorhandene Bereitstellung.Stellen Sie die Anwendung nicht erneut bereit. **(Obsolet. Nicht verwenden:

/w, /wait, -w, -wait Blockieren, bis die Bereitstellung abgeschlossenist. Diese Option ist nützlich für Skripts, die nachAbschließen der Bereitstellung tätig werdenmüssen.

/l <logfile>, /log <logfile>, -l <logfile>, -log <logfile> Debugging-Informationen in der angegebenenProtokolldatei protokollieren.

/D<key>=<value>, -D<key>=<value> Eine Konfigurationseinstellung über dieBefehlszeile außer Kraft setzen. Weitere

50

Page 55: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchStandalone-Bereitstellungstool

Option BeschreibungInformationen finden Sie im Abschnitt derKonfigurationsdatei.

Ausgabe- und BeendigungscodesWarnungen und Fehler werden an die Konsole ausgegeben. Wenn die Protokolloption angegeben ist, wirdeine zusätzliche Protokollierungsausgabe an die Protokolldatei gesendet.

Das Bereitstellungstool verwendet die folgenden Beendigungscodes:

Schlüssel und Wert Beschreibung

0 Success

1 Invalid argument

3 Failed deployment

Bei erfolgreicher Bereitstellung gibt das Tool die URL für die bereitgestellte Anwendung aus.

Beispiel-KonfigurationsdateienIn der Konfigurationsdatei legen Sie die Aktion des Bereitstellungstools fest. Das Toolkit for Visual Studioumfasst drei Beispiel-Konfigurationsdateien:

• Elastic Beanstalk-Bereitstellung• AWS CloudFormation-Bereitstellung mit einzelner Instance• Lastverteilte Bereitstellung in AWS CloudFormation

Beispiel-WebanwendungenDas Toolkit for Visual Studio umfasst auch eine Beispiel-Webanwendung (in einer .zip-Datei), die Sie mitdem Bereitstellungstool bereitstellen können. Sie finden diese Dateien im Samples-Unterverzeichnis desVerzeichnisses, in dem das Bereitstellungstool installiert ist.

Sie können die D-Befehlszeilenoption verwenden, um Einstellungen in der Konfigurationsdatei außer Kraftzu setzen:

/D<key>=<value>

oder

-D<key>=<value>

Sie können die D-Option mehrmals festlegen, um Einstellungen in der Konfigurationsdatei außer Kraftzu setzen: Wenn Sie denselben Schlüssel mit unterschiedlichen Werten in der Befehlszeile wiederholen,verwendet das Bereitstellungstool den zuletzt spezifizierten Wert.

Format der Konfigurationsdatei des BereitstellungstoolsDie Konfigurationsdateien bieten dieselben Informationen, die Sie auch im Bereitstellungsassistentenangeben würden. Die Formatierung der Konfigurationsdateien teilt die Konfiguration in Abschnitte, die denSeiten im Bereitstellungsassistenten entsprechen.

51

Page 56: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchStandalone-Bereitstellungstool

Konfigurationsdatei für die Bereitstellung mit Elastic BeanstalkDie folgenden Konfigurationsparameter gelten für Bereitstellungen mit Elastic Beanstalk.

Eine schrittweise Anleitung zur Verwendung des Standalone-Bereitstellungstools in Elastic Beanstalkfinden Sie im Developer Guide.

Allgemeine Einstellungen

/Daws:autoscaling:launchconfiguration.SecurityGroups=RDPOnly,HTTPOnly

Schlüssel und Wert Beschreibung

DeploymentPackage = archive.zip Relativer Pfad zur Web-Bereitstellungsdatei.Dieser Pfad ist relativ zu Ihrem Arbeitsverzeichnis(also dem Verzeichnis, über das Sie dasBereitstellungstool aufrufen).

IncrementalPushLocation (Veraltet: Nicht verwenden) Bei dieser Angabeist die inkrementelle Bereitstellung aktiviert. DerWert gibt den Speicherort an (z. B. C:\Temp\VS2008App1), an dem ein Git-Repository fürdie Speicherung der versionierten Inhalte desBereitstellungspakets erstellt wird.

Vorlage = ElasticBeanstalk Kann Elastic Beanstalk oderElasticBeanstalk lauten.

Application.Name Legt einen Namen für die Anwendung fest. DieserWert ist erforderlich.

Application.Description Gibt eine optionale Beschreibung der Anwendungan.

Application.Version Legt eine Versionszeichenfolge für die Anwendungfest. Wenn Sie die inkrementelle Bereitstellungverwenden, wird dieser Wert ignoriert. ElasticBeanstalk verwendet die Git-Commit-ID für dieVersionszeichenfolge.

Region = us-east-1 Ziel-Regionen und Endpunkte.

UploadBucket = awsdeployment-us-east-1-samples Amazon S3-Bucket, in dem dasBereitstellungsmaterial gespeichert wird. Wenn derBucket nicht vorhanden ist, wird er erstellt. WennSie den Bereitstellungsassistenten verwenden,erstellt dieser den Bucket-Namen für Sie.

KeyPair = default Amazon EC2-Schlüsselpaar für die Anmeldungbei der Instance. Das Schlüsselpaar muss bereitsvor der Bereitstellung existieren. (Sie können dasSchlüsselpaar während der Bereitstellung mithilfedes Bereitstellungsassistenten erzeugen.)

AWSAccessKey =DEPLOYMENT_CREDENTIALS_HERE

AWSSecretKey =DEPLOYMENT_CREDENTIALS_HERE

AWS-Zugriffsschlüssel und geheimer Schlüsselfür die Stackerstellung und die Bereitstellungder Anwendung in Elastic Beanstalk. Wir ratenvon der Verwendung dieser Parameter bei derFestlegung von Anmeldeinformationen ab.

52

Page 57: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchStandalone-Bereitstellungstool

Schlüssel und Wert BeschreibungStattdessen empfehlen wir Ihnen, ein Profil fürdie Anmeldeinformationen und zu erstellen undAWSProfileName zu verwenden, um auf dasProfil zu verweisen. Weitere Informationen findenSie unter „Anmeldeinformationen“.

AWSProfileName = {profile_name} Das für die Stackerstellung und die Bereitstellungder Anwendung in Elastic Beanstalk verwendeteProfil.

aws:autoscaling:launchconfiguration.SecurityGroups= default

Die Namen der Sicherheitsgruppen für dieAmazon EC2 Instance. Bei Angabe mehrererSicherheitsgruppen müssen Sie die einzelnenGruppen jeweils durch ein Komma trennen.

/Daws:autoscaling:launchconfiguration.SecurityGroups=RDPOnly,HTTPOnly

Die Sicherheitsgruppen müssen bereits vorhandensein und den Eingang über Port 80 (HTTP)zulassen. Weitere Informationen zur Erstellung vonSicherheitsgruppen finden Sie in tkv-sg

Umgebungseinstellungen

Schlüssel und Wert Beschreibung

Environment.Name Gibt einen Namen für Ihre Elastic Beanstalk-Umgebung an. Dieser Wert ist erforderlich.

Environment.Description Optional. Gibt eine Beschreibung für IhreUmgebung an.

Environment.CNAME Optional. Gibt das URL-Präfix für Ihre Anwendungan. Wenn Sie diesen Wert nicht angeben,leitet Elastic Beanstalk das Präfix von IhremUmgebungsnamen ab.

Containereinstellungen

Schlüssel und Wert Beschreibung

Container.TargetRuntime = 4.0 Gibt die Ziel-Laufzeit für das .NET Frameworkan. Die möglichen Werte lauten 2.0 oder 4.0. Diefolgenden .NET Framework-Versionen sind einerZiel-Laufzeit von 2.0 zugeordnet:

• .NET Framework 2.0• .NET Framework 3.0• .NET Framework 3.5

Die folgenden .NET Framework-Versionen sindeiner Ziel-Laufzeit von 4.0 zugeordnet:

53

Page 58: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchStandalone-Bereitstellungstool

Schlüssel und Wert Beschreibung• .NET Framework 4.0• .NET Framework 4.5

Der Bereitstellungsassistent (p. 19) im Toolkitfor Visual Studio ermöglicht es Ihnen, die .NETFramework-Version festzulegen. Anschließendordnet der Assistent die .NET Framework-Versionder entsprechenden Ziel-Laufzeitversion zu.

Container.Enable32BitApplications = false Wenn es sich um eine 32-Bit-Anwendung handelt,geben Sie true an. Wenn es sich um eine 64-Bit-Anwendung handelt, geben Sie false an.

Container.ApplicationHealthcheckPath = / Diese URL hängt von der Root-Server-URLab. Wenn die komplette URL beispielsweiseexample.com/site-is-up.html lautet,würden Sie Folgendes eingeben: /site-is-up.html. Die Einstellung gilt nur, wenn Sie dieVorlage "Load Balanced" verwenden. Wenn Siedie Vorlage "Single Instance" nutzen, wird dieEinstellung ignoriert. Die Reaktionsfähigkeit derAnwendung bei dieser URL hat Auswirkungenauf die Aktionen des Load Balancer und desautomatischen Skalierers. Wenn die Anwendungnur langsam oder gar nicht reagiert, leitet der LoadBalancer eingehenden Netzwerkverkehr an andereAmazon EC2 Instances um und der automatischeSkalierer fügt eventuell zusätzliche Amazon EC2Instances hinzu.

Container.InstanceType = t1.micro Der zu verwendende Amazon EC2 Instance-Typ.Bei der hier angegebenen Micro-Instance handeltes sich um den Typ Amazon EC2 — Preise.

Container.AmiID Gibt ein benutzerdefiniertes Amazon MachineImage (AMI) an. Weitere Informationen dazu, wieSie ein benutzerdefiniertes AMI erstellen, findenSie unter Verwenden von benutzerdefiniertenAMIs im AWS Elastic Beanstalk Developer Guideund unter Erstellen eines AMI aus einer EC2Instance (p. 15).

Container.NotificationEmail Optional. Gibt eine E-Mail-Adresse fürBenachrichtigungen zum Bereitstellungstatus an.

Konfigurationsdatei für die Bereitstellung mit AWS CloudFormationNote

Bereitstellungen in AWS CloudFormation mit dem Standalone-Bereitstellungstool sind veraltet.

Die folgenden Konfigurationsparameter stammen aus der lastverteilten Vorlage.

Allgemeine Einstellungen

54

Page 59: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchStandalone-Bereitstellungstool

Schlüssel und Wert Beschreibung

DeploymentPackage = archive.zip Relativer Pfad zur Web-Bereitstellungsdatei.Dieser Pfad ist relativ zu Ihrem Arbeitsverzeichnis(also dem Verzeichnis, über das Sie dasBereitstellungstool aufrufen). Wenn Sie eineBereitstellung aktualisieren (/updateStack-Schalter), wird dieser Parameter ignoriert.

Region = us-east-1 Zielregion.

Template = LoadBalanced Der Wert für Template kann SingleInstanceoder LoadBalanced oder ein Dateipfad zu einerbenutzerdefinierten AWS CloudFormation-Vorlagesein. Weitere Informationen finden Sie unterCustomizing the AWS CloudFormation TemplateUsed for Deployment (p. 59)

UploadBucket = awsdeployment-us-east-1-samples Amazon Simple Storage Service (Amazon S3)-Bucket, in dem das Bereitstellungsmaterialgespeichert wird. Wenn der Bucket noch nichtvorhanden ist, wird er erstellt. Falls Sie denBereitstellungsassistenten verwenden, erstelltdieser den Bucket-Namen für Sie. Wenn Sie denAssistenten für eine Bereitstellung verwendethaben und nun eine erneute Bereitstellungausführen, wird dieser Parameter ignoriert. DasBereitstellungstool verwendet automatisch denBucket, der bei der ursprünglichen Bereitstellungvom Assistenten eingesetzt wurde.

KeyPair = default Amazon Elastic Compute Cloud (AmazonEC2) -Schlüsselpaar für die Anmeldung bei derInstance. Das Schlüsselpaar muss bereits vorder Bereitstellung existieren. (Sie können dasSchlüsselpaar während der Bereitstellung mithilfedes Bereitstellungsassistenten erzeugen.)

AWSAccessKey =DEPLOYMENT_CREDENTIALS_HEREAWSSecretKey =DEPLOYMENT_CREDENTIALS_HERE

AWS-Zugriffsschlüssel und geheimer Schlüsselfür die Stackerstellung und die Bereitstellungder Anwendung in AWS CloudFormation. Wirraten von der Verwendung dieser Parameter beider Festlegung von Anmeldeinformationen ab.Stattdessen empfehlen wir Ihnen, ein Profil fürdie Anmeldeinformationen und zu erstellen undAWSProfileName zu verwenden, um auf dasProfil zu verweisen. Weitere Informationen findenSie unter „Anmeldeinformationen“.

AWSProfileName = {profile_name} Das für die Stackerstellung und die Bereitstellungder Anwendung in AWS CloudFormationverwendete Profil.

Vorlagenparameter

Zusätzlich zu den folgenden Parametern unterstützt die lastverteilte Vorlage zahlreiche weitere Parameterzum Anpassen der Load Balancing und des Auto Scaling-Verhaltens.

55

Page 60: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchStandalone-Bereitstellungstool

Schlüssel und Wert Beschreibung

Template.InstanceType = t1.micro Der zu verwendende Amazon EC2 Instance-Typ.Bei der hier angegebenen Micro-Instance handeltes sich um den preisgünstigsten Instance-Typ.

Template.SecurityGroup = default Die Sicherheitsgruppe für die Amazon EC2Instance. Diese Sicherheitsgruppe muss bereitsvorhanden sein und den Eingang über Port 80(HTTP) zulassen. Weitere Informationen zurErstellung von Sicherheitsgruppen finden Sie intkv-sg.

Environment.PARAM1 = Environment.PARAM2 =Environment.PARAM3 = Environment.PARAM4 =Environment.PARAM5 =

Diese Werte stehen der bereitgestelltenAnwendung über die appSettings in derWeb.config-Datei zur Verfügung. WeitereInformationen hierzu finden Sie in der MSDNlibrary.

Environment.AWSAccessKey= APP_CREDENTIALS_HEREEnvironment.AWSSecretKey =APP_CREDENTIALS_HERE

Zugriffsschlüssel und geheimer Schlüssel,mit denen die bereitgestellte Anwendungauf AWS-Services zugreift. Wir raten vonder Verwendung dieser Parameter bei derFestlegung von Anmeldeinformationen ab.Stattdessen empfehlen wir Ihnen, ein Profil fürdie Anmeldeinformationen und zu erstellen undAWSProfileName zu verwenden, um auf dasProfil zu verweisen. Weitere Informationen findenSie unter „Anmeldeinformationen“.

AWSProfileName = {profile_name} Das von der bereitgestellten Anwendungverwendete Profil für den Zugriff auf AWS-Services.

Containereinstellungen

SolutionStack="64bit Windows Server 2008 R2 running IIS 7.5"

SolutionStack="64bit Windows Server 2012 running IIS 8"

Schlüssel und Wert Beschreibung

SolutionStack="64bit Windows Server 2012 runningIIS 8"

Gibt die Version von Windows Server undInternet Information Services (IIS) an, für diedie Bereitstellung erfolgt. Gültige Werte sind:SolutionStack="64bit Windows Server 2008R2 running IIS 7.5" oder SolutionStack="64bitWindows Server 2012 running IIS 8" Wennnicht angegeben, ist der Standardwert "64bitWindows Server 2012 running IIS 8.0". Siekönnen Container.Type als Alias für SolutionStackverwenden.

Container.TargetRuntime = 4.0 Gibt die Ziel-Laufzeit für das .NET Framework an.Die möglichen Werte lauten 2.0 oder 4.0.

56

Page 61: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchStandalone-Bereitstellungstool

Schlüssel und Wert BeschreibungDie folgenden .NET Framework-Versionen sindeiner Ziel-Laufzeit von 2.0 zugeordnet:

• .NET Framework 2.0• .NET Framework 3.0• .NET Framework 3.5

Die folgenden .NET Framework-Versionen sindeiner Ziel-Laufzeit von 4.0 zugeordnet:

• .NET Framework 4.0• .NET Framework 4.5

Der Bereitstellungsassistent (p. 38) im Toolkitfor Visual Studio ermöglicht es Ihnen, die .NETFramework-Version festzulegen. Anschließendordnet der Assistent die .NET Framework-Versionder entsprechenden Ziel-Laufzeitversion zu.

Container.Enable32BitApplications = false Wenn es sich um eine 32-Bit-Anwendung handelt,geben Sie true an. Wenn es sich um eine 64-Bit-Anwendung handelt, geben Sie false an.

Container.ApplicationHealthcheckPath = / Diese URL hängt von der Root-Server-URLab. Wenn die komplette URL beispielsweiseexample.com/site-is-up.html lautet, würdenSie Folgendes eingeben: /site-is-up.html.

Die Einstellung gilt nur, wenn Sie die Vorlage"Load Balanced" verwenden. Wenn Sie dieVorlage für eine einzelne Instance nutzen, wirddie Einstellung ignoriert. Die Reaktionsfähigkeitder Anwendung bei dieser URL hat Auswirkungenauf die Aktionen des Load Balancers und desAuto Scalings. Wenn die Anwendung nur langsamoder gar nicht reagiert, leitet der Load Balancereingehenden Netzwerkverkehr an andere AmazonEC2 Instances um und der automatische Skaliererfügt eventuell zusätzliche Amazon EC2 Instanceshinzu.

Einstellungen für die Stackerstellung

Schlüssel und Wert Beschreibung

Settings.SNSTopic SNS-Thema für Bereitstellungsnachrichten.

Settings.CreationTimeout = 0 Die zulässige Zeitspanne für die Stackerstellung.Ein Wert von 0 bedeutet, dass kein Zeitlimitangewendet wird.

Settings.RollbackOnFailure = false Wenn dieser Wert true lautet, entferntdas Bereitstellungstool den Stack, falls dieBereitstellung fehlschlägt.

57

Page 62: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchStandalone-Bereitstellungstool

So aktualisieren Sie die Konfiguration für eine vorhandeneBereitstellung:Sie können die updateStack-Funktion des Bereitstellungstools verwenden, um die AWSCloudFormation-Konfiguration einer vorhandenen Bereitstellung zu ändern. Diese Konfiguration (dieAnwendungsumgebung) beinhaltet die Cloud-Ressourcen, auf denen Ihre Anwendung ausgeführt wird undauf die sie Zugriff hat. Die updateStack-Funktion ändert die Anwendung nicht und stellt sie auch nichterneut bereit, sondern aktualisiert lediglich die Anwendungsumgebung. Die updateStack-Funktion istsomit eine Ergänzung zur Funktion für die erneute Bereitstellung. Mit der erneuten Bereitstellung haben Siedie Möglichkeit, Ihre Anwendung zu aktualisieren, ohne dafür die Umgebung ändern zu müssen.

Es gibt verschiedene Szenarien, in denen Sie updateStack nutzen können. Wenn Sie beispielsweiseIhre Anwendung mithilfe der Vorlage für eine einzelne Instance entwickeln, da die Anwendung schonfast produktionsbereit ist, könnten Sie die Konfiguration aktualisieren, um eine lastverteilte Vorlagezu verwenden — entweder für einen öffentlichen Betatest oder eine Live-Release-Bereitstellung. Inähnlichen Szenario könnte eine Bereitstellung mit lastverteilter Konfiguration durch die Änderungeiniger Konfigurationsparameter optimiert werden, z. B. durch die Erhöhung der maximalen Anzahl anunterstützenden EC2 Instances oder die Änderung der Instance-Größe von Micro auf Large. Sie könnendie updateStack-Funktion des Bereitstellungstools zur Implementierung eines dieser Szenarien nutzen.

In bestimmten Szenarien können sowohl die Option /updateStack als auch die Option /redeploygenutzt werden, um nicht nur die Anwendung selbst, sondern auch die Umgebung, in der sie ausgeführtwird, effektiv zu ändern. Manchmal ist diese Methode effizienter als eine reguläre Bereitstellung. Siekönnen beispielsweise Ihre Umgebung ändern, um einen Amazon S3-Bucket hinzuzufügen und dann IhreAnwendung für die Bucketverwendung aktualisieren. Mit einer Kombination aus /updateStack und /redeployhaben Sie die Möglichkeit, beide Änderungen zu implementieren und trotzdem eine bereitsbereitgestellte Amazon EC2 Instance auszuführen. Bei einer regulären Bereitstellung würde die kompletteUmgebung deaktiviert und neu erstellt werden.

Die updateStack-Funktion steht nur über das Bereitstellungstool zur Verfügung. Sie kann nicht mit demBereitstellungsassistenten in Visual Studio genutzt werden. Sie können updateStack verwenden, um eineBereitstellung zu aktualisieren, die ursprünglich über den Assistenten durchgeführt wurde. Umgekehrt istdies jedoch nicht möglich.

Die Aufrufsyntax zum Aktualisieren einer Bereitstellung ähnelt der Syntax für eine neue Bereitstellung.

awsdeploy /updateStack [other options] updatedConfigFile

Beachten Sie beim Aktualisieren einer Bereitstellung Folgendes:

• Sie können eine Bereitstellung nicht aktualisieren, die gerade erstellt oder deaktiviert wird.• Die angegebene Konfigurationsdatei muss denselben Wert für den StackName-Parameter haben wie

die ursprüngliche Bereitstellung.• Sie können updateStack nicht verwenden, um die Region für Ihre Bereitstellung zu ändern. Allerdings

haben Sie die Möglichkeit, die Availability Zones Ihrer Bereitstellung zu ändern.• Wenn Sie updateStack für den Übergang Ihrer Bereitstellung von einer einzelnen Instance zur

Lastverteilung nutzen, ändert sich der Endpunkt für Ihre Bereitstellung zwangsläufig. Bei der einzelnenInstance bezieht sich der Endpunkt auf eine Amazon EC2 Instance Bei der lastverteilten Vorlagebezieht sich der Endpunkt auf den Elastic Load Balancing Load Balancer, einen Computer, der dieDatenverarbeitungslast auf alle EC2 Instances verteilt. Wenn Sie daher einen CNAME-Datensatzverwenden, um einen Domänenamen mit Ihrer Bereitstellung zu verknüpfen, sollten Sie den CNAME-Datensatz so aktualisieren, dass er auf den Load Balancer der lastverteilten Vorlage verweist.

Das Bereitstellungstool implementiert die updateStack-Funktion, indem Sie die AWSCloudFormationUpdateStack-API aufruft. Weitere Informationen über AWS CloudFormation finden Sie imAWS CloudFormation User Guide.

58

Page 63: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchStandalone-Bereitstellungstool

Anpassen der für die Bereitstellung verwendeten AWSCloudFormation-VorlageNeben der Änderung einer Bereitstellung durch Angabe von Parametern im Bereitstellungsassistenten(oder in der Konfigurationsdatei für das Tool zur eigenständigen Bereitstellung) können Sie dieBereitstellung auch über die Verwendung einer eigenen benutzerdefinierten AWS CloudFormation-Vorlageändern. Standardmäßig wird bei der Bereitstellung automatisch eine der Vorlagen verwendet, die inAmazon Simple Storage Service (Amazon S3) gespeichert sind. Es sind jeweils zwei Standardvorlagenfür jede AWS-Region vorhanden. Eine davon ist für die Bereitstellung auf einer einzelnen Amazon ElasticCompute Cloud (Amazon EC2) Instance; und die andere für die Bereitstellung auf einem lastverteilten Satzvon Amazon EC2 Instances gedacht. Sie können diese Vorlagen als Ausgangspunkt zur Erstellung Ihrereigenen Vorlage verwenden.

So erstellen Sie Ihre eigene, benutzerdefinierte Vorlage:

1. Kopieren Sie die Vorlage für Ihre Region und den Bereitstellungstyp, die Sie verwenden möchten.Nachstehend finden Sie Links zu den einzelnen Vorlagen.

Note

Vorlagen sind nur für die nachstehenden Regionen verfügbar.

USA Ost (Nord-Virginia)

SingleInstance.template LoadBalanced.template

USA West (Oregon)

SingleInstance-us-west-2.template LoadBalanced-us-west-2.template

USA West (Nordkalifornien)

SingleInstance-us-west-1.template LoadBalanced-us-west-1.template

EU (Irland)

SingleInstance-eu-west-1.template LoadBalanced-eu-west-1.template

Asien-Pazifik (Singapur)

SingleInstance-ap-southeast-1.template LoadBalanced-ap-southeast-1.template

Asien-Pazifik (Tokio)

SingleInstance-ap-northeast-1.template LoadBalanced-ap-northeast-1.template

59

Page 64: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchStandalone-Bereitstellungstool

Asien-Pazifik (Sydney)

SingleInstance-ap-southeast-2.template LoadBalanced-ap-southeast-2.template

Südamerika (São Paulo)

SingleInstance-sa-east-1.template LoadBalanced-sa-east-1.template

Wenn Sie Ihre eigenen Links zu den Vorlagen erstellen müssen, sieht das Format für jeden Link wie folgtaus:

http://vstoolkit.amazonwebservices.com/CloudFormationTemplates/{template-name}

Dies wäre beispielsweise der Link zur Vorlage der einzelnen Instance für die Region USA West(Nordkalifornien):

http://vstoolkit.amazonwebservices.com/CloudFormationTemplates/SingleInstance-us-west-1.template

Die Links in der Tabelle zeigen das HTTP-Protokoll an. Das HTTPS-Protokoll wird ebenfalls unterstützt.

1. Bearbeiten Sie die Vorlage, um sie Ihren spezifischen Anforderungen anzupassen. Die Vorlagensind Textdateien, d. h. Sie können sie mit jedem beliebigen Standard-Texteditor bearbeiten. DieBereitstellungsinformationen in den Vorlagen sind im Format JavaScript Object Notation dargestellt.Nachdem Sie die Datei bearbeitet haben, sollten Sie die JSON-Formatierungen mit einem Tool, wie z. B.mit JSONLint, erneut validieren.

Die Vorlagendatei hat drei Abschnitte: Parameter, Resources und Outputs.

Fügen Sie dem Vorlagenabschnitt Resources Ressourcen hinzu, um diese in Ihre Bereitstellungeinzuschließen. Sie können beispielsweise eine Amazon RDS-Datenbank oder ein Amazon SNS-Themahinzufügen. Fügen Sie dem Vorlagenabschnitt Parameters Parameter hinzu, um diese Ressourcen beider Bereitstellung zu konfigurieren. Wenn Sie neue Parameter in die Vorlage mit aufnehmen, fügt dasAWS Toolkit diese den im Bereitstellungsassistenten angezeigten Parametern hinzu. Die Werte für dieseParameter können Sie entweder im Bereitstellungsassistenten oder in der Konfigurationsdatei für dasStandalone-Bereitstellungstool angeben.

Auch die Daten, die Sie im Abschnitt Output der Vorlage angeben, werden imBereitstellungsassistenten angezeigt (sowie in der AWS-Verwaltungskonsole). Sie können den AbschnittOutput zum Anzeigen von Informationen zu Ihren Ressourcen nach der Bereitstellung verwenden.Wenn Sie zum Beispiel dem Vorlagenbereich Resources einen Amazon S3-Bucket hinzufügen, könnenSie im Abschnitt Outputs den automatisch generierten Namen für den Bucket anzeigen.

Weitere Informationen zum Bearbeiten von AWS CloudFormation-Vorlagen finden Sie imCloudFormation User Guide.

2. Legen Sie den Template-Parameter in der Bereitstellungskonfigurationsdatei auf den Pfad zu Ihrerbenutzerdefinierten Vorlage fest. Der Template-Parameter befindet sich unter General Settings inder Konfigurationsdatei. Bei dem Pfad, den Sie angeben, kann es sich um den Pfad zur Datei auf Ihrerlokalen Festplatte oder auch um eine URL handeln, die auf den Speicherort der Konfigurationsdatei aufeinem Remote-Server verweist. Wenn Sie das nächste Mal eine Bereitstellung ausführen, verwendetdas Tool dafür Ihre Vorlage.

60

Page 65: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchStandalone-Bereitstellungstool

Erforderliche Daten in der Vorlagendatei

Für den Bereitstellungsprozess müssen bestimmte Daten in der Vorlagendatei angegeben werden.Beim Bearbeiten Ihrer Vorlagenversion müssen Sie sicherstellen, dass diese weiterhin die erforderlichenDaten bereitstellt. Die erforderlichen Daten befindet sich nur in den Vorlageabschnitten Parameters undOutputs.

Vorlagenabschnitt "Parameters"

In der folgenden Tabelle sind die erforderlichen Parameter im Vorlagenabschnitt Parameter aufgeführt.

Name Bedeutung

InstanceType Der "API-Name" für den Amazon EC2 Instance-Typ, der bei der Bereitstellung verwendet wird.z. B.: t1.micro für Micro-Instances oder m1.xlargefür Extra Large-Instances. Eine Liste der Instance-Typen und entsprechenden API-Namen finden Sieauf Detailseite von Amazon EC2.

KeyPair Gibt an, welches Ihrer Schlüsselpaare für dieAmazon EC2 Instances zu verwenden ist.

Sicherheitsgruppe Die Sicherheitsgruppe für die Amazon EC2Instances.

Bucket-Name Amazon S3-Bucket, auf den dieBereitstellungsdateien hochgeladen werden.

ConfigFile Name der Konfigurationsdatei, die bei derBereitstellung verwendet wird.

AmazonMachineImage Das Amazon Machine Image (AMI), das beider Bereitstellung verwendet wird. WeitereInformationen dazu, wie Sie ein benutzerdefiniertesAMI erstellen, erhalten Sie unter Using CustomAMIs im Elastic Beanstalk Developer Guideund unter Create an AMI from an Amazon EC2Instance (p. 15). Beachten Sie, dass sichdie Host-Managersoftware auf AMIs, die inCloudFormation-Bereitstellungen verwendetwerden, jetzt automatisch aktualisiert. WennSie ein benutzerdefiniertes AMI von einemder CloudFormation-AMIs abzuleiten, müssenSie daher die Host-Managersoftware nichtmehr pflegen. Die Betriebssystem- undAnwendungssoftware müssen Sie jedoch auchweiterhin selbst auf dem neuesten Stand halten.

UserData Die Benutzerdaten für die bereitgestellteAnwendung.

Vorlageabschnitt "Outputs"

In der folgenden Tabelle sind die erforderlichen Ausgaben im Vorlagenabschnitt Outputs aufgeführt.

61

Page 66: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchVerwenden des AWS CloudFormation-

Vorlageneditors für Visual Studio.

Name Bedeutung

Bucket Der Amazon S3-Bucket, auf den dieBereitstellungsdateien hochgeladen wurden.

ConfigFile Der Name der Konfigurationsdatei, die für dieBereitstellung verwendet wurde.

VSToolkitDeployed Boolesches Flag auf true gesetzt, was bedeutet,dass dieses Stack als Teil einer Bereitstellungvom AWS Toolkit for Visual Studio erstellt wurde.Dieses Flag ist auch dann auf true gesetzt,wenn die Bereitstellung mit dem Standalone-Bereitstellungstool erfolgt.

URL Die URL für die bereitgestellte Anwendung.

Verwenden des AWS CloudFormation-Vorlageneditors für Visual Studio.

Das Toolkit for Visual Studio umfasst einen AWS CloudFormation-Vorlageneditor und AWSCloudFormation-Vorlageprojekte für Visual Studio. Zu den unterstützten Funktionen gehören.:

• Erstellen von neuen Vorlagen (entweder leer oder von einem bestehenden Stack oder einerBeispielvorlage kopiert) mit dem bereitgestellten AWS CloudFormation-Vorlageprojekttyp.

• Bearbeiten von Vorlagen mit automatischer JSON-Validierung, automatischer Vervollständigung, Code-Folding und Syntax-Hervorhebung.

• Automatisches Vorschlagen von intrinsischen Funktionen und Ressourcen-Referenzparametern für dieFeldwerte in Ihrer Vorlage.

• Menüelemente zum Ausführen von Standardaktionen für Ihre Vorlage aus Visual Studio: Bereitstellen derVorlage, Schätzen der Vorlagekosten und Formatieren Ihrer Vorlage.

Themen• Erstellen eines AWS CloudFormation-Vorlageprojekts in Visual Studio (p. 62)• Bereitstellen einer AWS CloudFormation-Vorlage in Visual Studio (p. 63)• Schätzen der Kosten Ihres AWS CloudFormation-Vorlagenprojekts in Visual Studio (p. 63)• Formatieren einer AWS CloudFormation-Vorlage in Visual Studio (p. 64)

Erstellen eines AWS CloudFormation-Vorlageprojektsin Visual StudioSo erstellen Sie ein Vorlageprojekt:

1. Wählen Sie in Visual Studio File (Datei), New (Neu) und dann Project (Projekt) aus.2. Wählen Sie im Dialogfeld New Project (Neues Projekt) die Option Installed (Installiert) aus, dann AWS

und anschließend AWS Cloud Formation Project (AWS Cloud Formation Projekt).3. Geben Sie im Feld Name den Namen Ihres Vorlageprojekts ein.

62

Page 67: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen einer AWS CloudFormation-

Vorlage in Visual Studio

4. Wählen Sie auf der Seite Select Project Source (Projektquelle auswählen) die Quelle für die zuerstellende Vorlage aus:• Mit Create with empty template (Mit leerer Vorlage erstellen) wird eine neue, leere AWS

CloudFormation-Vorlage erzeugt.• Mit Create from existing AWS |CFN| stack (Aus vorhandenem AWS |CFN|-Stack erstellen) wird

anhand eines bereits in Ihrem AWS-Konto vorhandenen Stack eine Vorlage erzeugt. (Der Stack mussnicht den Status CREATE_COMPLETE aufweisen.)

• MitSelect sample template (Beispielvorlage auswählen) wird anhand einer der AWS CloudFormation-Beispielvorlagen eine Vorlage erzeugt.

5. Klicken Sie auf AWS CloudFormationFinish (Abschließen), um die Erstellung des -Vorlageprojektsabzuschließen.

Bereitstellen einer AWS CloudFormation-Vorlage inVisual StudioSo stellen Sie eine CFN-Vorlage bereit

1. Öffnen Sie in Solution Explorer das Kontextmenü (rechte Maustaste) für die Vorlage, die Sie bereitstellenmöchten, und wählen Sie die Deploy to AWS CloudFormation (Für AWS CloudFormation bereitstellen)aus.

Alternativ können Sie die derzeit bearbeitete Vorlage bereitstellen, indem Sie im Menü Template(Vorlage) die Option Deploy to AWS CloudFormation (Für AWS CloudFormation bereitstellen)auswählen.

2. Wählen Sie auf der Seite Deploy Template (Vorlage bereitstellen) das AWS-Konto aus, das zum Startendes Stacks verwendet werden soll, sowie die Region, in der er gestartet werden soll.

3. Wählen Sie Create New Stack (Neuen Stack erstellen) aus und geben Sie einen Namen für den Stackein.

4. Wählen Sie beliebige der folgenden Optionen (oder keine) aus:• Um Benachrichtigungen über den Fortschritt des Stacks zu erhalten, wählen Sie in der Dropdown-

Liste SNS Topic (SNS-Thema) ein SNS-Thema aus. Sie können auch ein SNS-Thema erstellen,indem Sie Create New Topic (Neues Thema erstellen) auswählen und im Feld eine E-Mail-Adresseeingeben.

• Verwenden Sie Creation Timeout (Erstellungs-Timeout), um anzugeben, wie viel Zeit AWSCloudFormation für die Stack-Erstellung gewähren soll, bevor der Vorgang als fehlgeschlagen gilt (undrückgängig gemacht wird, sofern die Option Rollback on failure (Rollback bei Fehler) nicht aktiviert ist).

• Verwenden Sie Rollback on failure (Rollback bei Fehler), wenn Sie möchten, dass der Stack beifehlgeschlagener Erstellung rückgängig gemacht werden soll (Selbstlöschung). Lassen Sie dieseOption deaktiviert, wenn der Stack für Debugging-Zwecke aktiv bleiben soll, auch wenn er nichtvollständig gestartet wurde.

5. Wählen Sie Finish (Abschließen) aus, um den Stack zu starten.

Schätzen der Kosten Ihres AWS CloudFormation-Vorlagenprojekts in Visual StudioMit Toolkit for Visual Studio können Sie die Kosten des AWS CloudFormation-Stacks, an dem Sie arbeiten,einfach abschätzen, bevor Sie ihn bereitstellen. Auf diese Weise erhalten Sie eine Vorstellung von denmonatlichen Betriebskosten für die Ressourcen in Ihrer Vorlage.

So schätzen Sie die Kosten für Ihren CFN-Stack ab

63

Page 68: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchFormatieren einer AWS CloudFormation-

Vorlage in Visual Studio

1. Öffnen Sie im Solution Explorer das Kontextmenü (rechte Maustaste) für die Vorlage und wählen SieEstimate Cost (Kosten schätzen) aus.

Alternativ können Sie die Kosten für die derzeit bearbeitete Vorlage abschätzen, indem Sie im MenüTemplate (Vorlage) die Option Estimate Cost (Kosten schätzen) auswählen.

2. Geben Sie Werte für Parameter an, die Sie für Ihren Stack definiert haben, und wählen Sie Finish(Abschließen) aus.

3. AWS Einfacher Monatsrechner wird angezeigt. Die Werte für die Formulardaten werden mit denInformationen aus der Vorlage, die Sie gerade bearbeiten, ausgefüllt. Sie können die Werte bei Bedarfanpassen.

Auf der Registerkarte Estimate of Your Monthly Bill (Voraussichtliche Monatsrechnung) wird eineausführliche Ansicht der geschätzten monatlichen Kosten für die Ausführung Ihres Stacks angezeigt.

Note

Kostenvoranschläge werden mit den angegebenen Werten und den aktuellen Preisen von AWS-Services berechnet, die sich mit der Zeit ändern können. Weitere Informationen finden Sie imWhitepaper How AWS Pricing Works.

Formatieren einer AWS CloudFormation-Vorlage inVisual Studio• Öffnen Sie im Solution Explorer das Kontextmenü (rechte Maustaste) für die Vorlage und wählen Sie

Format Template (Formatvorlage) aus.

Alternativ können Sie die derzeit bearbeitete Vorlage formatieren, indem Sie im Menü Template (Vorlage)die Option Format Template (Formatvorlage) auswählen.

Ihr JSON-Code wird formatiert, sodass die Struktur deutlich dargestellt wird.

Verwenden von Amazon S3 aus AWS ExplorerMit Amazon Simple Storage Service (Amazon S3) können Sie Daten über jede Internetverbindungspeichern und abrufen. Alle in Amazon S3 gespeicherten Daten sind mit Ihrem Konto verknüpft undstandardmäßig nur für Sie zugänglich. Mit dem Toolkit for Visual Studio können Sie Daten in Amazon S3speichern sowie anzeigen, verwalten, abrufen und verteilen.

Amazon S3 verwendet das Konzept von Buckets, die Sie sich als Dateisysteme oder logische Laufwerkevorstellen können. Buckets können Ordner enthalten, ähnlich Verzeichnissen, und Objekte, ähnlichDateien. In diesem Abschnitt verwenden wir diese Konzepte beim Durchgehen der vom Toolkit for VisualStudio bereitgestellten Amazon S3-Funktionen.

Note

Zum verwenden dieses Tools muss Ihre IAM-Richtlinie Berechtigungen für die Aktionens3:GetBucketAcl, s3:GetBucket und s3:ListBucket erteilen. Weitere Informationen findenSie unter Overview of AWS IAM Policies.

Erstellen eines Amazon S3-BucketsDer Bucket ist die grundlegende Speichereinheit in Amazon S3.

64

Page 69: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchVerwalten von Amazon S3-Buckets in AWS Explorer

So erstellen Sie einen S3-Bucket

1. Öffnen Sie im AWS Explorer das Kontextmenü (rechte Maustaste) für den Amazon S3-Knoten undwählen Sie dann Create Bucket (Bucket erstellen) aus.

2. Geben Sie im Dialogfeld Create Bucket (Bucket erstellen) einen Namen für den Bucket ein. Bucket-Namen müssen überall in AWS eindeutig sein. Informationen zu weiteren Einschränkungen finden Sie inder Amazon S3-Dokumentation.

3. Klicken Sie auf OK.

Verwalten von Amazon S3-Buckets in AWS ExplorerIn AWS Explorer sind die folgenden Vorgänge verfügbar, wenn Sie ein Kontextmenü (rechte Maustaste) füreinen Amazon S3-Bucket öffnen.

Durchsuchen

Zeigt die Objekte im Bucket an. Hier können Sie Ordner erstellen oder Dateien bzw. gesamteVerzeichnisse und Ordner von Ihrem lokalen Computer hochladen. Im unteren Bereich werdenStatusmeldungen zum Upload-Vorgang angezeigt. Um diese Nachrichten zu löschen, wählen Sie dasSymbol Clear (Löschen) aus. Sie können diese Ansicht des Buckets auch aufrufen, indem Sie in AWSExplorer auf den Bucket-Namen klicken.

Eigenschaften

Zeigt ein Dialogfeld an, in dem Sie die folgende Möglichkeiten haben:

• Festlegen von Amazon S3-Berechtigungen für:• Sie als Bucket-Eigentümer• Alle Benutzer, die bei AWS authentifiziert wurden• Alle Benutzer mit Zugriff auf das Internet

• Aktivieren der Protokollierung für den Bucket• Einrichten einer Benachrichtigung über Amazon Simple Notification Service (Amazon SNS), damit Sie bei

Datenverlusten benachrichtigt werden, wenn Sie Reduced Redundancy Storage (RRS) verwenden. RRSist eine Amazon S3-Speicheroption, die eine geringere Beständigkeit als Standardspeicher bietet, jedochzu geringeren Kosten. Weitere Informationen finden Sie unter S3 FAQs.

• Erstellen einer statischen Webseite mithilfe von Daten im Bucket

Richtlinie

Ermöglicht das Einrichten von Richtlinien mit AWS Identity and Access Management (IAM) für IhrenBucket. Weitere Informationen finden Sie in der IAM-Dokumentation und den Anwendungsfällen für IAMund S3.

Create Pre-Signed URL

Ermöglicht das Generieren einer zeitlich begrenzten URL, über die Sie den Zugriff auf den Inhaltdes Buckets gewähren können. Weitere Informationen finden Sie unter How to Create a Pre-SignedURL (p. 67).

View Multi-Part Uploads

Ermöglicht Ihnen die Anzeige von mehrteiligen Uploads. Amazon S3 unterstützt die Aufteilung von Uploadsgroßer Objekte in Teile, um den Upload-Prozess effizienter zu gestalten. Weitere Informationen finden Siein der Erläuterung von mehrteiligen Uploads in der S3-Dokumentation.

65

Page 70: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchHochladen von Dateien und Ordnern in Amazon S3

Löschen

Ermöglicht das Löschen des Buckets. Sie können nur leere Buckets löschen.

Hochladen von Dateien und Ordnern in Amazon S3Sie können mit AWS Explorer Dateien oder ganze Ordner von Ihrem lokalen Computer auf Ihre Bucketsübertragen.

Note

Wenn Sie Dateien oder Ordner hochladen, die den gleichen Namen aufweisen wie bereits imAmazon S3-Bucket enthaltene Dateien oder Ordner, überschreiben Ihre hochgeladenen Dateiendie vorhandenen Dateien ohne Vorwarnung.

Laden Sie wie folgt eine Datei nach S3 hoch:

1. Erweitern Sie in AWS Explorer den Knoten Amazon S3 und doppelklicken Sie auf einen Bucket oderöffnen Sie das Kontextmenü für den Bucket (rechte Maustaste) und wählen Sie Browse (Durchsuchen)aus.

2. Wählen Sie in der Browse (Duchsuchen)-Ansicht Ihres Buckets Upload File (Datei hochladen) oderUpload Folder (Ordner hochladen) aus.

3. Navigieren Sie im Dialogfeld File-Open (Dateiöffenen)) zu den Dateien, die Sie hochladen möchten, undwählen Sie dann Open (Öffnen)) aus. Wenn Sie einen Ordner hochladen möchten, navigieren Sie zu ihmund wählen ihn aus und klicken Sie dann auf Open (Öffnen).

Im Dialogfeld Upload Settings (Upload-Einstellungen) können Sie Metadaten und Berechtigungen fürdie Dateien oder Ordner, die Sie hochladen, festlegen. Das Aktivieren des Kontrollkästchens Makeeverything public (Alles als öffentlich festlegen) entspricht dem festlegen der Berechtigungen Open/Download (Öffnen/Herunterladen) auf Everyone (Jeder). Sie können die Option aktivieren, um ReducedRedundancy Storage für die hochgeladenen Dateien zu nutzen.

Amazon S3-Dateivorgänge von AWS Toolkit for VisualStudioWenn Sie eine Datei in der Amazon S3-Ansicht auswählen und das Kontextmenü öffnen (rechteMaustaste), können Sie verschiedene Aktionen mit der Datei ausführen.

Ordner erstellen

Ermöglicht das Erstellen eines Ordners im aktuellen Bucket. (Entspricht dem Auswählen des Links CreateFolder (Ordner erstellen).)

Hochladen

Ermöglicht das Hochladen von Dateien oder Ordnern. (Entspricht dem Auswählen der Links Upload File(Datei hochladen) bzw. Upload Folder (Ordner hochladen).)

Öffnen

Versucht, die ausgewählte Datei in Ihrem Standard-Browser zu öffnen. Abhängig vom Dateityp und denFunktionen Ihres Standard-Browsers kann die Datei möglicherweise nicht angezeigt werden. In diesem Fallwird sie einfach von Ihrem Browser heruntergeladen.

Herunterladen

66

Page 71: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchAmazon S3-Dateivorgänge vonAWS Toolkit for Visual Studio

Öffnet ein Folder-Tree (Ordnerstruktur)-Dialogfeld zum Herunterladen der ausgewählten Datei.

Veröffentlichen

Legt Berechtigungen für die ausgewählte Datei auf Open/Download (Öffnen/Herunterladen) und Everyone(Jeder) fest. (Entspricht dem Aktivieren des Kontrollkästchens Make everything public (Alles als öffentlichfestlegen) im Dialogfeld Upload Settings (Upload-Einstellungen).)

Löschen

Löscht die ausgewählten Dateien oder Ordner. Sie können Dateien oder Ordner auch löschen, indem Siesie auswählen und Delete drücken.

Speicherklasse ändern

Legt die Speicherklasse auf Standard oder Reduced Redundancy Storage (RRS) fest. Um die aktuelleEinstellung für die Speicherklasse anzuzeigen, wählen Sie Properties (Eigenschaften) aus.

Verschlüsselung ändern

Ermöglicht das Festlegen der serverseitigen Verschlüsselung für die Datei. Um die aktuelle Einstellung fürVerschlüsselung anzuzeigen, wählen Sie Properties (Eigenschaften) aus.

Umbenennen

Ermöglicht das Umbenennen einer Datei. Ordner können nicht umbenannt werden.

Ausschneiden | Kopieren | Einfügen

Ermöglicht das Ausschneiden, Kopieren und Einfügen von Dateien oder Ordnern zwischen Ordnern oderBuckets.

Eigenschaften

Zeigt ein Dialogfeld an, in dem Sie Metadaten und Berechtigungen für die Datei festlegen und den Speicherfür die Datei zwischen Reduced Redundancy Storage (RRS) und Standard umschalten können. Außerdemkönnen Sie serverseitige Verschlüsselung für die Datei festlegen. In diesem Dialogfeld wird außerdem einHTTPS-Link zu der Datei angezeigt. Wenn Sie diesen Link auswählen, öffnet das Toolkit for Visual Studiodie Datei in Ihrem Standard-Browser. Wenn die Berechtigungen Open/Download und Everyone (Jeder)für die Datei festgelegt wurden, können andere Benutzer über diesen Link auf die Datei zugreifen. Anstattdiesen Link zu verteilen, wird empfohlen, vorsignierte URLs zu erstellen und zu verteilen.

Vorsignierte URL erstellen

Ermöglicht das Erstellen einer zeitlich eingeschränkten vorsignierten URL, die Sie verteilen können, damitandere Benutzer Zugriff auf Ihre in Amazon S3 gespeicherten Inhalte erhalten.

Erstellen einer vorsignierten URLSie können eine vorsignierte URL für einen Bucket oder Dateien in einem Bucket erstellen. AnderePersonen können diese URL dann verwenden, um auf den Bucket oder die Datei zuzugreifen. Die URLläuft nach einem bestimmten Zeitraum ab, den Sie beim Erstellen der URL angeben.

So erstellen Sie eine vorsignierte URL

1. Legen Sie im Dialogfeld Create Pre-Signed URL (Vorsignierte URL erstellen) Ablaufdatum und -uhrzeitfür die URL fest. Die Standardeinstellung ist eine Stunde nach dem aktuellen Zeitpunkt.

2. Wählen Sie die Schaltfläche Generate (Generieren) aus.3. Wählen Sie zum Kopieren der URL in die Zwischenablage Copy (Kopieren) aus.

67

Page 72: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchVerwenden von DynamoDB aus AWS Explorer

Verwenden von DynamoDB aus AWS ExplorerAmazon DynamoDB ist ein schneller, hochgradig skalierbarer, hochverfügbarer, wirtschaftlicher,nicht relationaler Datenbank-Service. Mit DynamoDB werden Einschränkungen derDatenspeicherungsskalierbarkeit eliminiert, die Latenz niedrig gehalten und die Leistung ist vorhersehbar.Das Toolkit for Visual Studio verfügt über die Funktionalität für das Arbeiten mit DynamoDB in einemEntwicklungskontext. Weitere Informationen über DynamoDB finden Sie auf der AWS-Website unterDynamoDB.

Im Toolkit for Visual Studio zeigt der AWS Explorer alle mit dem aktiven AWS-Konto verknüpftenDynamoDB-Tabellen an.

Erstellen einer DynamoDB-TabelleSie können das Toolkit for Visual Studio zum Erstellen einer DynamoDB-Tabelle verwenden.

So erstellen Sie eine Tabelle im AWS Explorer

1. Öffnen Sie im AWS Explorer das Kontextmenü (rechte Maustaste) für Amazon DynamoDB und wählenSie dann Create Table (Tabelle erstellen).

2. Geben Sie im Create Table (Tabelle erstellen)-Assistenten unter Table Name (Tabellenname)einenNamen für die Tabelle ein.

3. Geben Sie im Feld Hash Key Name (Hash-Schlüssel-Name) ein primäres Hash-Key-Attribut ein undwählen Sie über die Hash Key Type (Hash-Schlüssel-Typ-Schaltflächen den Hash-Schlüssel-Typ aus.DynamoDB erstellt einen unsortierten Hash-Index mit dem Primärschlüsselattribut und einen optionalen,sortierten Bereichsindex mit dem Bereichsprimärschlüsselattribut. Weitere Informationen zum primärenHash-Schlüsselattribut finden Sie im Abschnitt Primary Key (Primärschlüssel) in Amazon DynamoDBDeveloper Guide.

4. (Optional) Wählen Sie Enable Range Key (Bereichsschlüssel aktivieren) aus. Geben Sie im Feld RangeKey Name (Bereichsschlüsselname) ein Bereichsschlüsselattribut ein und wählen Sie aus den RangeKey Type (Bereichsschlüsseltyp)-Schaltflächen einen Bereichsschlüsseltyp aus.

5. Geben Sie im Feld Read Capacity (Lesekapazität) die Anzahl an Lesekapazitätseinheiten ein. GebenSie im Feld Write Capacity (Schreibkapazität) die Anzahl an Schreibkapazitätseinheiten ein. Sie müssenmindestens 3 Lesekapazitätseinheiten und 5 Schreibkapazitätseinheiten angeben. Weiter Informationenüber Lese- und Schreibkapazitätseinheiten finden Sie unter Provisioned Throughput in DynamoDB (InDynamoDB bereitgestellter Durchsatz).

6. (Optional) Wählen Sie Enable Basic Alarm (Basisalarm aktivieren) aus, um benachrichtigt zuwerden, sobald die Anforderungsraten der Tabelle zu hoch werden. Wählen Sie den Prozentsatz desbereitgestellten Durchsatzes pro 60 Minuten aus, der überschritten werden muss, bevor die Warnunggesendet wird. Geben Sie in Send Notifications To (Benachrichtungen senden an) eine E-Mail-Adresseein.

7. Klicken Sie auf OK, um die Tabelle zu erstellen.

Weitere Informationen zu DynamoDB-Tabellen finden Sie unter Data Model Concepts - Tables, Items, andAttributes.

Anzeigen einer DynamoDB-Tabelle als RasterDoppelklicken Sie im AWS Explorer auf den Subknoten einer Ihrer DynamoDB-Tabellen, um diese alsRaster anzuzeigen. In der Rasteransicht können Sie die in der Tabelle gespeicherten Elemente, Attributeund Werte sehen. Jede Zeile entspricht einem Element in der Tabelle. Die Tabellenspalten entsprechenAttributen. Jede Zelle der Tabelle enthält die mit diesem Elementattribut verknüpften Werte.

68

Page 73: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBearbeiten und Hinzufügen von Attributen und Werten

Der Wert eines Attributs kann eine Zeichenfolge oder eine Zahl sein. Manche Attribute verfügen übereinen Wert, der aus einem Satz von Zeichenfolgen oder Zahlen besteht. Satzwerte werden als eine durchKomma getrennte Liste in eckigen Klammern angezeigt.

Bearbeiten und Hinzufügen von Attributen und WertenSie können die Werte für das entsprechende Attribut eines Elements bearbeiten, indem Sie auf eineZelle doppelklicken. Bei Satzwertattributen können Sie auch einzelne Werte des Satzes hinzufügen oderlöschen.

Sie haben nicht nur die Möglichkeit, den Wert eines Attributs zu ändern, sondern—mit einigenEinschränkungen—auch das Format des Attributwerts. Beispielsweise kann ein beliebiger Zahlenwertin eine Zeichenfolge umgewandelt werden. Bei einem Zeichenfolgenwert, dessen Inhalt eine Zahl ist,z. B. 125, haben Sie mit der Zelleneditor die Möglichkeit, das Format des Werts von Zeichen in Zahlenumzuwandeln. Sie können auch einen Einzelwert in einen Satzwert konvertieren. In der Regel könnenSie jedoch keine Umwandlungen von einem Satzwert in eine Einzelwert vornehmen, ausgenommen, derSatzwert besteht aus nur einem Element.

Wählen Sie nach dem Bearbeiten des Attributwerts das grüne Häkchen, um Ihre Änderungen zubestätigen. Wenn Sie die Änderungen verwerfen möchten, wählen Sie das rote X.

Nachdem Sie Ihre Änderungen bestätigt haben, wird der Attributwert rot angezeigt. Das bedeutet, dassdas Attribut aktualisiert wurde, der neue Wert jedoch noch nicht in die DynamoDB-Datenbank geschriebenwurde. Um Ihre Änderungen wieder in die DynamoDB zu schreiben, wählen Sie Commit Changes(Änderungen commiten). Um Ihre Änderungen zu verwerfen, wählen Sie Scan Table (Tabelle scannen)und wenn Sie vom Toolkit gefragt werden, ob Sie die Änderungen vor dem Scannen speichern möchten,wählen Sie No (Nein).

Hinzufügen eines Attributs

In der Rasteransicht können Sie der Tabelle auch Attribute hinzufügen. Wählen Sie Add Attribute (Attributhinzuzufügen), um ein neues Attribut hinzuzufügen.

Geben Sie im Dialogfeld Add Attribut (Attribut hinzuzufügen) einen Namen für das Attribut ein und wählenSie dann OK aus.

Um das neue Attribut in die Tabelle aufzunehmen, müssen Sie mindestens für ein Element einen Wertzum Attribut hinzufügen. Dann wählen Sie die Schaltfläche Commit Changes (Änderungen commiten).Wenn Sie das neue Attribut verwerfen möchten, schließen Sie einfach die Rasteransicht der Tabelle, ohneCommit Changes (Änderungen commiten) zu wählen.

Scannen einer DynamoDB-TabelleSie können Ihre DynamoDB-Tabellen mit dem Toolkit scannen. In einem Scan definieren Sie eineReihe von Kriterien und der Scan führt alle Elemente in der Tabelle auf, die den Kriterien entsprechen.Scans sind teure Operationen und sollten daher mit Vorsicht verwendet werden, um zu vermeiden, dassProduktionsdatenverkehr mit höherer Priorität in der Tabelle unterbrochen wird. Weitere Informationen überdie Verwendung der Scan-Operation finden Sie im Amazon DynamoDB Developer Guide.

So führen Sie im AWS Explorer den Scan einer DynamoDB-Tabelle aus

1. Wählen Sie in der Rasteransicht die Schaltfläche scan conditions: add (Scan-Bedingungen: Hinzufügen).2. Wählen Sie im Scan-Klauseleditor das Attribut, mit dem eine Übereinstimmung abgeglichen werden

soll, wie der Wert des Attributs interpretiert werden soll (Zeichenfolge, Zahl, Satzwert), wie dieÜbereinstimmung sein soll, (z. B. Beginnt mit oder Enthält) und welchem Literalwert entsprochen werdensoll.

3. Fügen Sie so viele Scan-Klauseln hinzu, wie für Ihre Suche erforderlich. In den Ergebnissen werdennur die Elemente aufgeführt, die den Kriterien aller Scan-Klauseln entsprechen. Bei dem Scan

69

Page 74: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchVerwenden von AWS CodeCommit

mit Visual Studio Team Explorer

wird ein Vergleich unter Berücksichtigung der Groß- und Kleinschreibung durchgeführt, wenn mitZeichenfolgewerten abgeglichen wird.

4. Wählen Sie in der Schaltflächenleiste oben in der Rasteransicht Scan Table (Tabelle scannen).

Zum Entfernen einer Scan-Klausel wählen Sie die rote Schaltfläche mit der weißen Linie rechts von jederKlausel.

Entfernen Sie alle Scan-Klauseln, und wählen Sie Scan Table (Tabelle scannen) erneut, um zur Ansichtzurückzukehren, die alle Elemente enthält.

Paginierung von Scan-Ergebnissen

Am unteren Rand der Ansicht sehen Sie drei Schaltflächen.

Mit den ersten beiden blauen Schaltflächen können Sie Scan-Ergebnisse paginieren. Die erste Schaltflächezeigt eine zusätzliche Ergebnisseite an. Die zweite Schaltfläche zeigt 10 zusätzliche Ergebnisseiten an. Indiesem Kontext entspricht eine Seite eine Inhalt von 1 MB.

Exportieren von Scan-Ergebnissen in CSV

Anhand der dritten Schaltfläche werden die Ergebnisse des aktuellen Scans in eine CSV-Datei exportiert.

Verwenden von AWS CodeCommit mit VisualStudio Team Explorer

Sie können mithilfe von AWS Identity and Access Management-Benutzerkonten (IAM) Git-Anmeldeinformationen erstellen und mit diesen über den Team Explorer Repositorys erstellen und klonen.

Anmeldeinformationstypen für AWS CodeCommitDie meisten AWS Toolkit for Visual Studio-Benutzer sind mit dem Einrichten von AWS-Anmeldeinformationen, die ihre Zugriffs- und geheimen Schlüssel enthalten, vertraut. Mit diesenAnmeldeinformationen werden im Amazon EC2 die Aufrufe an Service-APIs umgesetzt, beispielsweisezum Auflisten von Toolkit for Visual Studio-Buckets in Amazon S3 oder zum Starten einer AWS ExplorerInstance. Die Integration von AWS CodeCommit in Team Explorer nutzt diese Anmeldeinformationsprofileebenfalls. Für die direkte Arbeit mit Git benötigen Sie jedoch zusätzliche Anmeldeinformationen,genauer gesagt, Git-Anmeldeinformationen für HTTPS-Verbindungen. Unter Setup for HTTPS UsersUsing Git Credentials im AWS CodeCommit User Guide finden Sie weitere Informationen zu diesenAnmeldeinformationen (Benutzername und Passwort).

Sie können die Git-Anmeldeinformationen für AWS CodeCommit ausschließlich für IAM-Benutzerkontenerstellen. Es ist nicht möglich, sie für ein Root-Konto zu erstellen. Sie können bis zu zwei Gruppen dieserAnmeldeinformationen für den Service erstellen. Obwohl Sie eine Gruppe von Anmeldeinformationenals inaktiv markieren können, werden inaktive Gruppen weiterhin Ihrem Grenzwert von zwei Gruppenzugerechnet. Beachten Sie, dass Sie Anmeldeinformationen jederzeit löschen und neu erstellenkönnen. Wenn Sie AWS CodeCommit in Visual Studio verwenden, werden Ihre herkömmlichen AWS-Anmeldeinformationen für die Arbeit mit dem Service verwendet, z. B. zum Erstellen und Auflisten vonRepositorys. Bei der Arbeit mit den in AWS CodeCommit gehosteten Git-Repositorys verwenden Sie dieGit-Anmeldeinformationen.

Im Rahmen des Supports für AWS CodeCommit erstellt und verwaltet das Toolkit for Visual Studioautomatisch diese Git-Anmeldeinformationen und verknüpft sie mit Ihrem AWS-Anmeldeinformationsprofil.Sie müssen sich nicht darum kümmern, die richtigen Anmeldeinformationen bereitzuhalten, wennSie Git-Operationen im Team Explorer durchführen möchten. Nachdem Sie mit Ihrem AWS-Anmeldeinformationsprofil eine Verbindung mit dem Team Explorer hergestellt haben, werden die

70

Page 75: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchHerstellen einer Verbindung mit AWS CodeCommit

zugehörigen Git-Anmeldeinformationen automatisch verwendet, wenn Sie mit einem Git-Remote-Repository arbeiten.

Herstellen einer Verbindung mit AWS CodeCommitWenn Sie das Team Explorer-Fenster in Visual Studio 2015 oder höher öffnen, wird ein AWS CodeCommit-Eintrag im Abschnitt „Hosted Service Providers“ unter „Manage Connections“ angezeigt.

Wenn Sie Sign up (Registrieren) auswählen, wird die AWS-Startseite in einem Browser-Fenster geöffnet.Was geschieht, wenn Sie Connect (Verbinden) auswählen, hängt davon ab, ob das Toolkit for Visual Studioein Anmeldeinformationsprofil mit Zugriffs- und geheimem Schlüssel für AWS ausfindig machen kann, umAWS in Ihrem Namen aufrufen zu können. Möglicherweise haben Sie ein Anmeldeinformationsprofil aufder neuen Seite „Getting Started“ eingerichtet, die in der IDE angezeigt wird, wenn das Toolkit for VisualStudio keine lokal gespeicherten Anmeldeinformationen finden kann. Oder Sie könnten das Toolkit forVisual Studio, die AWS-Tools für Windows PowerShell oder die AWS CLI verwendet haben und bereitsüber AWS-Anmeldeinformationsprofile verfügen, die das Toolkit for Visual Studio verwenden kann.

Wenn Sie Connect (Verbinden) auswählen, beginnt das Toolkit for Visual Studio mit der Suche nacheinem Anmeldeinformationsprofil, das für die Verbindung verwendet werden kann. Wenn das Toolkitfor Visual Studio kein Anmeldeinformationsprofil finden kann, wird ein Dialogfeld geöffnet, in dem Sieaufgefordert werden, den Zugriffs- und den geheimen Schlüssel für Ihr AWS-Konto einzugeben. Es wirddringend empfohlen, ein IAM-Benutzerkonto und keine Root-Anmeldeinformationen zu verwenden. Wiebereits erwähnt, können Sie außerdem die schließlich benötigten Git-Anmeldeinformationen nur fürIAM-Benutzer erstellen. Sobald der Zugriffs- und der geheime Schlüssel angegeben wurden und dasAnmeldeinformationsprofil erstellt wurde, ist die Verbindung zwischen dem Team Explorer und AWSCodeCommit einsatzbereit.

Wenn das Toolkit for Visual Studio mehrere AWS-Anmeldeinformationsprofile findet, werden Sie dazuaufgefordert, das gewünschte Konto für die Verwendung im Team Explorer auszuwählen.

Wenn Sie nur über ein Anmeldeinformationsprofil verfügen, übergeht das Toolkit for Visual Studio dasAuswahldialogfeld für das Profil und es wird sofort eine Verbindung hergestellt:

71

Page 76: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchErstellen eines Repositorys

Wenn eine Verbindung zwischen dem Team Explorer und AWS CodeCommit über IhrAnmeldeinformationsprofil hergestellt wurde, wird das Einladungsdialogfeld geschlossen und derVerbindungsbereich wird angezeigt.

Da Sie nicht über lokale geklonte Repositorys verfügen, werden in dem Bereich nur die Vorgängeangezeigt, die Sie ausführen können: Clone (Klonen), Create (Erstellen) und Sign out (Abmelden).Wie andere Anbieter kann AWS CodeCommit im Team Explorer jeweils nur an ein einzelnes AWS-Anmeldeinformationsprofil gebunden werden. Um das Konto zu wechseln, melden Sie sich über Signout (Abmelden) ab, um die Verbindung zu entfernen. Sie können dann eine neue Verbindung mit einemanderen Konto herstellen.

Nachdem Sie eine Verbindung hergestellt haben, können Sie ein Repository erstellen, indem Sie auf denLink Create (Erstellen) klicken.

Erstellen eines RepositorysWenn Sie auf den Link Create (Erstellen) klicken, wird das Dialogfeld Create a New AWS CodeCommitRepository (Ein neues AWS CodeCommit-Repository öffnen) geöffnet.

AWS CodeCommit-Repositorys sind nach Region eingeteilt, daher können Sie unter Region die Regionauswählen, in der das Repository gehostet werden soll. Die Liste enthält alle Regionen, in denen AWSCodeCommit unterstützt wird. Sie geben den Namen (erforderlich) und eine Beschreibung (optional) für dasneue Repository an.

Im Standardverhalten des Dialogfelds wird der Repository-Name an den Speicherort des Ordners für dasneue Repository angehängt. (Wenn Sie den Namen eingeben, wird auch der Speicherort des Ordnersaktualisiert.) Wenn Sie einen anderen Ordnernamen verwenden möchten, bearbeiten Sie den OrdnerpfadClone into (Klonen nach), nachdem Sie den Repository-Namen eingegeben haben.

Sie können automatisch eine erste .gitignore-Datei für das Repository erstellen. Das AWS Toolkit forVisual Studio bietet einen integrierten Standard für Visual Studio-Dateitypen. Sie können auch auf die Dateiverzichten oder auf eine benutzerdefinierte vorhandene Datei zurückgreifen, die Sie in allen Repositorys

72

Page 77: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchEinrichten von Git-Anmeldeinformationen

wiederverwenden möchten. Wählen Sie einfach Use custom (Angepasstes verwenden) in der Liste aus undnavigieren Sie zu der benutzerdefinierten Datei, die verwendet werden soll.

Sobald Sie über einen Namen und einen Speicherort für das Repository verfügen, können Sie auf OKklicken und mit dem Erstellen des Repositorys beginnen. Das Toolkit for Visual Studio fordert vomService an, das Repository zu erstellen und dann lokal zu klonen. Dabei wird ein erster Commit fürdie .gitignore-Datei hinzugefügt, sofern Sie eine verwenden. Nun beginnen Sie mit der Arbeit mit demGit-Remote-Repository, daher benötigt das Toolkit for Visual Studio jetzt die zuvor beschriebenen Git-Anmeldeinformationen.

Einrichten von Git-AnmeldeinformationenBisher haben Sie Zugriffs- und geheime Schlüssel für AWS verwendet, um anzufordern, dass der ServiceIhr Repository erstellt. Nun müssen Sie mit Git selbst arbeiten, um den Klonvorgang durchzuführen, undGit kann nicht mit Zugriffs- und geheimen Schlüsseln von AWS umgehen. Stattdessen müssen Sie Git dieAnmeldeinformationen (Benutzername und Passwort) angeben, die für eine HTTPS-Verbindung mit demRemote-Repository verwendet werden sollen.

Wie unter Setting up Git credentials (p. 73) beschrieben, müssen die verwendeten Git-Anmeldeinformationen einem IAM-Benutzer zugeordnet werden. Sie können sie nicht für Root-Anmeldeinformationen generieren. Sie sollten Ihre AWS-Anmeldeinformationsprofile immer so einrichten,dass Zugriffs- und geheime Schlüssel für IAM-Benutzer enthalten und nicht Root-Schlüssel. Das Toolkit forVisual Studio kann versuchen, die Git-Anmeldeinformationen für AWS CodeCommit für Sie einzurichtenund dem AWS-Anmeldeinformationsprofil zuzuordnen, mit dem Sie vorher die Verbindung im TeamExplorer hergestellt haben.

Wenn Sie OK im Dialogfeld Create a New AWS CodeCommit Repository auswählen und das Repositoryerfolgreich erstellen, überprüft das Toolkit for Visual Studio das im Team Explorer verbundene AWS-Anmeldeinformationsprofil, um zu ermitteln, ob Git-Anmeldeinformationen für AWS CodeCommitvorhanden und lokal mit dem Profil verknüpft sind. Ist das der Fall, weist das Toolkit for Visual Studioden Team Explorer an, den Klonvorgang für das neue Repository durchzuführen. Wenn keinelokalen Git-Anmeldeinformationen verfügbar sind, überprüft das Toolkit for Visual Studio den Typ derKontoanmeldeinformationen, die für die Verbindung im Team Explorer verwendet wurden. Wenn es sichum Anmeldeinformationen für einen IAM-Benutzer handelt, wie empfohlen, wird die folgende Meldungangezeigt.

Wenn es sich um Root-Anmeldeinformationen handelt, wird stattdessen die folgende Meldung angezeigt.

73

Page 78: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchEinrichten von Git-Anmeldeinformationen

In beiden Fällen bietet das Toolkit for Visual Studio die Möglichkeit, die erforderlichen Git-Anmeldeinformationen für Sie zu erstellen. Im ersten Szenario wird für die Erstellung lediglich eineGruppe von Git-Anmeldeinformationen für den IAM-Benutzer benötigt. Wenn ein Root-Konto verwendetwird, versucht das Toolkit for Visual Studio zuerst, einen IAM-Benutzer zu erstellen, und erstellt dannGit-Anmeldeinformationen für diesen neuen Benutzer. Wenn das Toolkit for Visual Studio einen neuenBenutzer erstellten muss, wendet es auf dieses neue Benutzerkonto die verwaltete Power-User-Richtlinievon AWS CodeCommit an. Diese Richtlinie ermöglicht nur den Zugriff auf AWS CodeCommit und lässt allemit AWS CodeCommit durchgeführten Vorgänge mit Ausnahme des Löschens von Repositorys zu.

Wenn Sie Anmeldeinformationen erstellen, können Sie sie nur einmal anzeigen. Daher fordert das Toolkitfor Visual Studio Sie auf, die neu erstellten Anmeldeinformationen als .csv-Datei zu speichern, bevor Siefortfahren.

Dies wird ebenfalls dringend empfohlen. Speichern Sie sie außerdem an einem sicheren Ort.

In einigen Fällen kann das Toolkit for Visual Studio Anmeldeinformationen eventuell nicht automatischerstellen. Beispielsweise haben Sie möglicherweise bereits die maximale Anzahl von Gruppen von Git-Anmeldeinformationen für Toolkit for Visual Studio erstellt (zwei) oder Sie verfügen nicht über ausreichendeprogrammgesteuerte Rechte, damit das AWS CodeCommit die Arbeit für Sie erledigen kann (wenn Sieals IAM-Benutzer angemeldet sind). In diesen Fällen können Sie sich bei der AWS Management Consoleanmelden, um die Anmeldeinformationen zu verwalten oder sie von Ihrem Administrator zu erhalten. Siekönnen sie dann in dem vom Toolkit for Visual Studio angezeigten Dialogfeld Git Credentials for AWSCodeCommit (Git Credentials für AWS CodeCommit) eingeben.

74

Page 79: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchKlonen eines Repositorys

Nachdem die Anmeldeinformationen für Git verfügbar sind, wird mit dem Klonvorgang für das neueRepository fortgefahren (siehe die Fortschrittsanzeige für den Vorgang im Team Explorer). Wenn Sieeine Standard-.gitignore-Datei angewendet haben, wird für diese ein Commit im Repository mit demKommentar „Erster Commit“ durchgeführt.

Damit wurden das Einrichten von Anmeldeinformationen und das Erstellen eines Repositorys im TeamExplorer vollständig erläutert. Sobald die erforderlichen Anmeldeinformationen vorhanden sind, wirdbeim Erstellen neuer Repositorys in Zukunft nur noch das Dialogfeld Create a New AWS CodeCommitRepository (Ein neues AWS CodeCommit-Repository erstellen) angezeigt.

Klonen eines RepositorysUm ein vorhandenes Repository zu klonen, kehren Sie zum Verbindungsbereich für AWS CodeCommitim Team Explorer zurück. Klicken Sie auf den Link Clone (Klonen), um das Dialogfeld Clone AWSCodeCommit Repository (AWS CodeCommit-Repository Klonen) zu öffnen, und wählen Sie dann das zuklonende Repository und den Speicherort auf dem Datenträger aus, an dem es platziert werden soll.

75

Page 80: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchVerwenden von Repositorys

Nachdem Sie die Region ausgewählt haben, fragt das Toolkit for Visual Studio den Service ab, um die indieser Region verfügbaren Repositorys zu ermitteln. Diese werden dann im zentralen Listenbereich desDialogfelds angezeigt. Der Name und eine optionale Beschreibung jedes Repositorys werden ebenfallsangezeigt. Sie können die Liste nach Repository-Namen oder Datum der letzten Änderung und aufsteigendoder absteigend neu sortieren.

Wenn Sie das Repository ausgewählt haben, können Sie den Zielspeicherort für den Klonvorgangauswählen. Dies ist standardmäßig derselbe Repository-Speicherort, der auch in anderen Plug-ins desTeam Explorers verwendet wird. Sie können jedoch zu einem anderen Standort navigieren oder dieseneingeben. Standardmäßig wird an den ausgewählten Pfad der Repository-Name angehängt. Wenn Siejedoch einen bestimmten Pfad angeben möchten, bearbeiten Sie einfach das Textfeld, nachdem Sie denOrdner ausgewählt haben. Der Text in dem Feld, wenn Sie auf OK klicken, wird zu dem Ordner, in dem Siedas geklonte Repository finden.

Nachdem Sie das Repository und einen Speicherordner ausgewählt haben, klicken Sie auf OK, um mit demKlonvorgang fortzufahren. Genau wie beim Erstellen eines Repositorys wird der gemeldete Fortschritt desKlonvorgangs im Team Explorer angezeigt.

Verwenden von RepositorysWenn Sie lokale Repositorys klonen oder erstellen, beachten Sie, dass die lokalen Repositorys für dieVerbindung im Verbindungsbereich im Team Explorer unter den Vorgangs-Links angezeigt werden.Diese Einträge bieten Ihnen eine bequeme Möglichkeit, auf das Repository zuzugreifen, um die Inhalte zudurchsuchen. Klicken Sie einfach mit der rechten Maustaste auf das Repository und wählen Sie Browse inConsole (In Konsole durchsuchen) aus.

76

Page 81: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchAmazon RDS im AWS Explorer

Sie können auch Update Git Credentials (Git-Anmeldeinformationen aktualisieren) verwenden, umdie gespeicherten Git-Anmeldeinformationen, die dem Anmeldeinformationsprofil zugeordnet sind, zuaktualisieren. Dies ist nützlich, wenn Sie die Anmeldeinformationen rotiert haben. Der Befehl öffnet dasDialogfeld Git Credentials for AWS CodeCommit (Git-Anmeldeinformationen für AWS CodeCommit), indem Sie die neuen Anmeldeinformationen eingeben oder importieren können.

Git-Vorgänge auf die Repositorys funktionieren erwartungsgemäß. Sie können lokale Commits durchführenund wenn Sie bereit sind, Ihre Änderungen freizugeben, verwenden Sie die Synchronisierungsoption imTeam Explorer. Da die Git-Anmeldeinformationen bereits lokal gespeichert und dem verbundenen AWS-Anmeldeinformationsprofil zugeordnet sind, erfolgt keine Aufforderung, sie für Vorgänge mit dem AWSCodeCommit-Remote-Repository erneut anzugeben.

Amazon RDS im AWS ExplorerAmazon Relational Database Service (Amazon RDS) ist ein Service, der es Ihnen ermöglicht, relationaleSQL-Datenbanksysteme in der Cloud bereitzustellen und zu verwalten. Amazon RDS unterstützt drei Artenvon Datenbanksystemen:

• MySQL Community Edition• Oracle Database Enterprise Edition• Microsoft SQL Server (Express, Standard, oder Web Editions)

Weitere Informationen finden Sie im Amazon RDS-Benutzerhandbuch.

Viele der hier beschriebenen Funktionalitäten sind auch über die AWS-Managementkonsole für AmazonRDS verfügbar.

Themen• Start einer Amazon RDS Database-Instance (p. 77)• Erstellen einer Microsoft SQL Server-Datenbank in einer RDS-Instance (p. 80)• Amazon RDS-Sicherheitsgruppen (p. 80)

Start einer Amazon RDS Database-InstanceMit AWS Explorer können Sie Instances jeder der von Amazon RDS unterstützten Datenbank-Enginesstarten. In der folgenden schrittweise Anleitung wird das Starten einer Instance von Microsoft SQL ServerStandard Edition beschrieben. Die Vorgehensweise ist jedoch bei allen unterstützten Engines ähnlich.

So starten Sie eine Amazon RDS-Instance

1. Öffnen Sie im AWS Explorer das Kontextmenü (Rechtsklick) für den Amazon RDS-Knoten und wählenSie Launch DB Instance (DB-Instance starten).

77

Page 82: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchStart einer Amazon RDS Database-Instance

Alternativ können Sie auf der Registerkarte DB Instances die Option Launch DB Instance (DB-Instancestarten) wählen.

2. Wählen Sie im Feld DB Engine Selection (DB-Engine-Auswahl) den zu startenden Datenbank-Engine-Typ aus. Wählen Sie für diese Anleitung Microsoft SQL Server Standard Edition (sqlserver-se), undklicken Sie dann auf Next (Weiter).

3. Wählen Sie im Dialogfeld DB Engine Instance Options (DB-Engine-Instance-Optionen) dieKonfigurationsoptionen aus.

Im Abschnitt DB Engine Instance Options and Class (DB-Engine-Instance-Optionen und -Klasse)können Sie die folgenden Einstellungen festlegen:

License Model (Lizenzmodell)

Engine-Typ Lizenz

Microsoft SQL Server license-included

MySql general-public-license

Oracle bring-your-own-license

Das Lizenzmodell variiert je nach Art der Datenbank-Engine-Typ. Engine Type License Microsoft SQLServer license-included MySql general-public-license Oracle bring-your-own-licenseDB Instance Version

Wählen Sie die Version des Datenbank-Engine aus, die Sie verwenden möchten. Wenn nur eineVersion unterstützt wird, ist diese bereits für Sie ausgewählt.

DB-Instance-Klasse

Wählen Sie die Instance-Klasse für den Datenbank-Engine aus. Die Preise für Instance-Klassenvariieren. Weitere Informationen finden Sie unter Amazon RDS – Preise.

Perform a multi AZ deployment

Wählen Sie diese Option aus, um eine Multi-AZ-Bereitstellung für eine verbesserteDatenzuverlässigkeit und -verfügbarkeit zu erstellen. Amazon RDS stellt eine Standby-Kopie IhrerDatenbank in einer anderen Availability Zone für einen automatischen Failover im Falle einesgeplanten oder ungeplanten Ausfalls bereit. Weitere Informationen zu den Preisen für Multi-AZ-Bereitstellungen finden Sie im Preisabschnitt der Amazon RDS-Detailseite. Diese Option wird nichtfür Microsoft SQL Server unterstützt.

Upgrade minor versions automatically

Wählen Sie diese Option, wenn AWS automatisch Nebenversionen auf Ihren RDS-Instancesaktualisieren soll.

Im Abschnitt RDS Database Instance (RDS-Datenbank-Instance) können Sie folgende Einstellungenfestlegen:

Allocated Storage

Engine Minimum (GB) Maximum (GB)

MySQL 5 1024

78

Page 83: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchStart einer Amazon RDS Database-Instance

Engine Minimum (GB) Maximum (GB)

Oracle Enterprise Edition 10 1024

Microsoft SQL Server ExpressEdition

30 1024

Microsoft SQL Server StandardEdition

250 1024

Microsoft SQL Server WebEdition

30 1024

Die Minimal- und Maximalwerte für den zugewiesenen Speicher hängen vom Datenbank-Engine-Typab. Engine Minimum (GB) Maximum (GB) MySQL 5 1024 Oracle Enterprise Edition 10 1024 MicrosoftSQL Server Express Edition 30 1024 Microsoft SQL Server Standard Edition 250 1024 Microsoft SQLServer Web Edition 30 1024

DB Instance Identifier

Geben Sie einen Namen für die Datenbank-Instance an. Bei diesem Namen wird nicht zwischen Groß-und Kleinschreibung unterschieden. Er wird im AWS Explorer kleingeschrieben angezeigt.

Master User Name (Master-Benutzername)

Geben Sie einen Namen für den Administrator der Datenbank-Instance ein.Master User Password (Master-Benutzerpasswort)

Geben Sie ein Passwort für den Administrator der Datenbank-Instance ein.Confirm Password

Geben Sie das Passwort erneut ein, um zu überprüfen, ob es korrekt ist.

1. Im Dialogfeld Additional Options können Sie die folgenden Einstellungen festlegen:Database Port (Datenbankport)

Dies ist der TCP-Port, über den die Instance im Netzwerk kommuniziert. Wenn Ihr Computer übereine Firewall auf das Internet zugreift, legen Sie für diesen Wert einen Port fest, für den Ihre FirewallDatenverkehr zulässt.

Verfügbarkeitszone

Verwenden Sie diese Option, wenn Sie möchten, dass die Instance in einer bestimmten AvailabilityZone in Ihrer Region gestartet wird. Die Datenbank-Instance, die Sie angegeben haben, istmöglicherweise nicht in allen Availability Zones in einer bestimmten Region verfügbar.

RDS-Sicherheitsgruppe

Wählen Sie eine RDS-Sicherheitsgruppe (oder -gruppen) aus, die mit der Instance verknüpftwerden. RDS-Sicherheitsgruppen geben die IP-Adresse, Amazon EC2 Instances und AWS-Konten an, die auf Ihre Instance haben zugreifen dürfen. Weitere Informationen über Amazon RDS-Sicherheitsgruppen finden Sie unter Amazon RDS Security Groups (p. 80). Die Toolkit for VisualStudio versucht, Ihre aktuelle IP-Adresse zu bestimmen und bietet die Option, diese Adresse denmit Ihrer Instance verknüpften Sicherheitsgruppen hinzuzufügen. Wenn Ihr Computer jedoch übereine Firewall auf das Internet zugreift, ist die IP-Adresse, die das Toolkit erzeugt, möglicherweisenicht korrekt. Wenden Sie sich an Ihren Systemadministrator, um festzustellen, welche IP-Adresseverwendet werden muss.

79

Page 84: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchErstellen einer Microsoft SQL Server-

Datenbank in einer RDS-Instance

DB-Parametergruppe

(Optional) Wählen Sie in der Dropdown-Liste eine DB-Parametergruppe aus, die mit Ihrer Instanceverknüpft wird. DB-Parametergruppen ermöglichen Ihnen das Ändern der Standardkonfiguration fürdie Instance. Weitere Informationen finden Sie im Amazon Relational Database Service User Guideund in diesem Artikel.

Wenn Sie in diesem Dialogfeld Einstellungen festgelegt haben, wählen Sie Next (Weiter).2. Im Dialogfeld Backup and Maintenance (Sicherung und Wartung) können Sie angeben, ob Amazon RDS

Ihre Instance sichern soll und wie lange diese Sicherung gespeichert werden soll. Zudem können Sie einZeitfenster für die Ausführung der Sicherungen angeben.

Weiterhin haben Sie die Möglichkeit, in diesem Dialogfeld festzulegen, ob Amazon RDSSystemwartungen auf Ihrer Instance vornehmen soll. Die Wartung umfasst routinemäßige Patches unddie Aktualisierung von Nebenversionen.

Das Zeitfenster für die Systemwartung darf sich nicht mit dem für die Sicherungen überschneiden.

Wählen Sie Next (Weiter).3. Im letzten Dialogfeld des Assistenten können Sie die Einstellungen für Ihre Instance überprüfen. Wenn

Sie die Einstellungen ändern möchten, klicken Sie auf die Schaltfläche Back (Zurück). Wenn alleEinstellungen korrekt sind, wählen Sie Launch (Starten).

Erstellen einer Microsoft SQL Server-Datenbank ineiner RDS-InstanceMicrosoft SQL Server ist so konzipiert, dass Sie nach dem Starten einer Amazon RDS-Instance eine SQLServer-Datenbank in der RDS-Instance erstellen müssen.

Weitere Informationen zum Erstellen einer Amazon RDS-Instance finden Sie unter Launch an AmazonRDS Database Instance (Eine Amazon RDS-Datenbank-Instance starten) (p. 77).

So erstellen Sie eine Microsoft SQL Server-Datenbank:

1. Öffnen Sie im AWS Explorer das Kontextmenü (rechte Maustaste) für den Knoten Ihrer RDS-Instance fürMicrosoft SQL Server und klicken Sie dann auf Create SQL Server Database (SQL Server-Datenbankerstellen).

2. Geben Sie im Dialogfeld Create SQL Server Database (SQL Server-Datenbank erstellen) das beimErstellen der RDS-Instance festgelegte Passwort sowie einen Namen für die Microsoft SQL Server-Datenbank ein und klicken Sie dann auf OK.

3. Das Toolkit for Visual Studio erstellt daraufhin die Microsoft SQL Server-Datenbank und fügt sie demVisual Studio Server Explorer hinzu.

Amazon RDS-SicherheitsgruppenAmazon RDS-Sicherheitsgruppen ermöglichen Ihnen das Verwalten des Netzwerkzugriffs auf Ihre AmazonRDS-Instances. Mit den Sicherheitsgruppen legen Sie eine Reihe von IP-Adressen mit CIDR-Notationfest, sodass Ihre Amazon RDS-Instance dann ausschließlich den Netzwerkverkehr von diesen Adressenanerkennt.

Die Funktionsweise von Amazon RDS- und Amazon EC2-Sicherheitsgruppen ähnelt sich zwar, dieGruppen unterscheiden sich jedoch voneinander. Sie können Ihrer RDS-Sicherheitsgruppe eine EC2-Sicherheitsgruppe hinzufügen. Alle EC2 Instances, die zur EC2-Sicherheitsgruppe gehören, haben dannZugriff auf die RDS-Instances, die zur RDS-Sicherheitsgruppe gehören.

80

Page 85: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchAmazon RDS-Sicherheitsgruppen

Weitere Informationen über Amazon Amazon RDS-Sicherheitsgruppen finden Sie unter Amazon RDSSecurity Groups. Weitere Informationen zu Amazon EC2-Sicherheitsgruppen erhalten Sie unter EC2 UserGuide.

Erstellen einer Amazon RDS-SicherheitsgruppeSie können das Toolkit for Visual Studio verwenden, um eine RDS-Sicherheitsgruppe zu erstellen. WennSie eine RDS-Instance mit dem AWS Toolkit starten, bietet der Assistent die Möglichkeit, eine RDS-Sicherheitsgruppe für die Verwendung mit Ihrer Instance festzulegen. Mit den folgenden Schritten könnenSie diese Sicherheitsgruppe erstellen, bevor Sie den Assistenten starten.

So erstellen Sie eine Amazon RDS-Sicherheitsgruppe:

1. Erweitern Sie im AWS Explorer den Amazon RDS-Knoten, öffnen Sie das Kontextmenü (Rechtsklick)für den DB Security Groups (DB-Sicherheitsgruppen)-Subknoten und wählen Sie Create (Erstellen).

Alternativ können Sie auf der Registerkarte Security Groups (Sicherheitsgruppen) die Option CreateSecurity Group (Sicherheitsgruppe erstellen) auswählen. Wenn diese Registerkarte nicht angezeigtwird, öffnen Sie das Kontextmenü (Rechtsklick) für den DB Security Groups (DB-Sicherheitsgruppen)-Subknoten und wählen View (Anzeigen) aus.

2. Geben Sie im Dialogfeld Create Security Group (Sicherheitsgruppe erstellen) einen Namen und eineBeschreibung für die Sicherheitsgruppe ein und wählen Sie dann OK aus.

Festlegen von Zugriffsberechtigungen für eine Amazon RDS-SicherheitsgruppeStandardmäßig stellt eine neue Amazon RDS-Sicherheitsgruppe keinen Netzwerkzugriff bereit. Um denZugriff auf Amazon RDS-Instances, die die Sicherheitsgruppe verwenden, zu ermöglichen, führen Sie diefolgenden Schritte zur Festlegung der Zugriffsberechtigungen durch.

So konfigurieren Sie den Zugriff für eine Amazon RDS-Sicherheitsgruppe:

1. Wählen Sie auf der Registerkarte Security Groups (Sicherheitsgruppen) in der Listenansicht dieSicherheitsgruppe aus. Wenn die Sicherheitsgruppe nicht in der Liste angezeigt wird, wählen SieRefresh (Aktualisieren) aus. Wenn die Sicherheitsgruppe immer noch nicht in der Liste angezeigt wird,überprüfen Sie, ob Sie die Liste für die richtige AWS-Region aufgerufen haben. Die Security Group(Sicherheitsgruppe)-Registerkarten im AWS Toolkit sind regionenspezifisch.

Wenn keine Security Group (Sicherheitsgruppe)-Registerkarten im AWS Explorer angezeigt werden,öffnen Sie das Kontextmenü (Rechtsklick) für den DB Security Groups (DB-Sicherheitsgruppen)-Subknoten und wählen View.

2. Wählen Sie Add Permission (Berechtigung hinzufügen).

Schaltfläche Add Permissions (Berechtigungen hinzufügen) auf der Registerkarte Security Groups(Sicherheitsgruppen)

3. Im Dialogfeld Add Permission (Berechtigungen hinzufügen) können Sie CIDR-Notation verwenden,um festzulegen, welche IP-Adressen Zugriff auf Ihre RDS-Instance haben oder welche EC2-Sicherheitsgruppen auf Ihre RDS-Instance zugreifen dürfen. Wenn Sie EC2 Security Group (EC2-Sicherheitsgruppe) wählen, können Sie den Zugriff für alle mit einem AWS-Konto verknüpften EC2Instances festlegen oder eine EC2-Sicherheitsgruppe aus der Dropdown-Liste auswählen.

Das AWS Toolkit versucht, Ihre IP-Adresse zu bestimmen und gibt automatisch die entsprechendeCIDR-Spezifikation in das Dialogfeld ein. Wenn Ihr Computer jedoch über eine Firewall auf das Internetzugreift, ist die vom Toolkit bestimmte CIDR möglicherweise nicht korrekt.

81

Page 86: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchVerwenden von Amazon SimpleDB aus AWS Explorer

Verwenden von Amazon SimpleDB aus AWSExplorer

Der AWS Explorer zeigt alle mit dem aktiven AWS-Konto verknüpften Amazon SimpleDB-Domänen an. Siekönnen Amazon SimpleDB-Domänen im AWS Explorer erstellen oder löschen.Amazon SimpleDB-Domänen, die mit Ihrem Konto verknüpft sind, können erstellt, gelöscht oder geöffnetwerden

Ausführen von Abfragen und Bearbeiten der Ergebnisse

AWS Explorer kann Amazon SimpleDB-Domänen auch als Raster anzeigen, in denen Sie Elemente,Attribute und Wert in dieser Domäne einsehen können. Sie können Abfragen ausführen, um ausschließlicheine Teilmenge der Domänenelemente anzeigen zu lassen. Sie haben die Möglichkeit, die Werte für dasentsprechende Attribut eines Elements zu bearbeiten, indem Sie auf eine Zelle doppelklicken. Sie könnender Domäne auch neue Attribute hinzufügen.

Die hier angezeigte Domäne stammt aus dem Amazon SimpleDB-Beispiel, das im AWS SDK for .NETenthalten ist.Amazon SimpleDB-Rasteransicht

Um eine Abfrage auszuführen, geben Sie diese in das Textfeld oben in der Rasteransicht ein und wählendann Execute (Ausführen) aus. Die Ansicht wird so gefiltert, dass ausschließlich die Elemente angezeigtwerden, die Ihrer Abfrage entsprechen.Ausführen einer Abfrage über AWS Explorer

Um die mit einem Attribut verknüpften Werte zu bearbeiten, doppelklicken Sie auf die entsprechende Zelle,bearbeiten die Werte und wählen dann Commit Changes (Änderungen commiten) aus.

Hinzufügen eines Attributs

Wenn Sie ein Attribut hinzufügen möchten, wählen Sie oben in der Ansicht Add Attribute (Attributhinzufügen) aus.Dialogfeld Add Attribute (Attribut hinzufügen)

Um das neue Attribut in die Domäne aufzunehmen, müssen Sie mindestens für ein Element einen Wertzum Attribut hinzufügen. Dann wählen Sie die Schaltfläche Commit Changes (Änderungen commiten) aus.Übernehmen von Änderungen für ein neues Attribut

Paginierung von Abfrageergebnissen

Am unteren Rand der Ansicht sehen Sie drei Schaltflächen.Paginieren und Exportieren von Schaltflächen

Mit den ersten beiden Schaltflächen können Sie Abfrageergebnisse paginieren. Die erste Schaltflächezeigt eine zusätzliche Ergebnisseite an. Die zweite Schaltfläche zeigt 10 zusätzliche Ergebnisseiten an. Indiesem Kontext entspricht eine Seite 100 Zeilen oder der Anzahl der Ergebnisse, die mit dem LIMIT-Wertwurde, wenn dieser in der Abfrage enthalten ist.

Exportieren in CSV

Die letzte Schaltfläche exportiert die aktuellen Ergebnisse in eine CSV-Datei.

Verwenden von Amazon SQS aus AWS ExplorerAmazon Simple Queue Service (Amazon SQS) ist ein flexibler Warteschlangen-Service, der denNachrichtenaustausch zwischen verschiedenen Ausführungsprozessen in einer Softwareanwendung

82

Page 87: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchErstellen einer Warteschlange

ermöglicht. Amazon SQS-Warteschlangen befinden sich in der AWS-Infrastruktur. Die Prozesse, dieNachrichten weiterleiten, können lokal, in Amazon EC2-Instances oder einer Kombination dieser Instancesplatziert sein. Amazon SQS ist ideal, um die Verteilung der Auslastung auf mehrere Computer zukoordinieren.

Das Toolkit for Visual Studio ermöglicht es Ihnen, Amazon SQS-Warteschlangen, die mit dem aktivenKonto verknüpft sind, anzuzeigen und Warteschlangen zu erstellen oder zu löschen. Außerdem besteht dieMöglichkeit, Mitteilungen über Warteschlangen zu senden. (Mit "aktivem Konto" ist das in AWS Explorerausgewählte Konto gemeint.)

Weitere Informationen zu Amazon SQS finden Sie unter Introduction to SQS in der AWS-Dokumentation.

Erstellen einer WarteschlangeSie können im AWS Explorer eine Amazon SQS-Warteschlange erstellen. Der ARN und die URL fürdie Warteschlange basieren auf der Kontonummer des aktiven Kontos und dem bei der Erstellungangegebenen Warteschlangennamen.

So erstellen Sie eine Warteschlange

1. Öffnen Sie im AWS Explorer das Kontextmenü (Rechtsklick) für den Amazon SQS-Knoten und wählenSie dann Create Queue (Warteschlange erstellen) aus.

2. Geben Sie im Dialogfeld Create Queue (Warteschlange erstellen) den Warteschlangennamen,den Standardwert der Zeitbeschränkung für die Sichtbarkeit sowie den Standardwertfür die Bereitstellungsverzögerung an. Die Standardwerte der Zeitbeschränkung für dieSichtbarkeit sowie der Bereitstellungsverzögerung werden in Sekunden angegeben. DieStandardzeitbeschränkung für die Sichtbarkeit ist die Zeitspanne, in der eine Mitteilung für potenzielleEmpfangsprozesse sichtbar ist, nachdem ein bestimmter Prozess die Mitteilung übernommen hat. DieStandardbereitstellungsverzögerung ist die Zeitspanne ab dem Senden der Mitteilung bis zu ihremersten Anzeigen in potenziellen Empfangsprozessen.

3. Klicken Sie auf OK. Die neue Warteschlange erscheint als Subknoten unter dem Amazon SQS-Knoten.

Löschen einer WarteschlangeSie können vorhandene Warteschlangen über AWS Explorer löschen. Wenn Sie eine Warteschlangelöschen, ist keine der mit dieser Warteschlange verknüpften Mitteilungen mehr verfügbar.

So löschen Sie eine Warteschlange

1. Öffnen Sie im AWS Explorer das Kontextmenü (Rechtsklick) für die Warteschlange, die Sie löschenmöchten, und wählen Sie dann Delete (Löschenden) aus.

Verwalten von WarteschlangeneigenschaftenSie können die Eigenschaften jeder der im AWS Explorer angezeigten Warteschlangen ansehen undbearbeiten. Außerdem können Sie in dieser Eigenschaftenansicht Mitteilungen an die Warteschlangesenden.

So verwalten Sie Warteschlangeneigenschaften:

• Öffnen Sie im AWS Explorer das Kontextmenü (Rechtsklick) für die Warteschlange, deren EigenschaftenSie verwalten möchten, und wählen Sie dann View Queue (Warteschlange anzeigen) aus.

In der Eigenschaftenansicht der Warteschlange können Sie die Zeitbeschränkung für die Sichtbarkeit, diemaximale Mitteilungsgröße, den Aufbewahrungszeitraum sowie die Standardbereitstellungsverzögerung

83

Page 88: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchSenden einer Mitteilung an eine Warteschlange

bearbeiten. Die Standardbereitstellungsverzögerung kann außer Kraft gesetzt werden, wenn Sieeine Mitteilung senden. Im folgenden Screenshot handelt es sich beim verdeckten Text um dieKontonummernkomponente des ARN und der URL der Warteschlange.

Eigenschaftenansicht der SQS-Warteschlange

Senden einer Mitteilung an eine WarteschlangeSie können in der Warteschlangen-Eigenschaftenansicht Mitteilungen an die Warteschlange senden.

So senden Sie eine Nachricht

1. Wählen Sie oben in der Warteschlangen-Eigenschaftenansicht die Schaltfläche Send (Senden) aus.2. Geben Sie die Mitteilung ein. (Optional) Geben Sie einen Wert für die Bereitstellungsverzögerung ein,

mit dem der Standardwert für die Warteschlange überschrieben wird. Im folgenden Beispiel wurde dieVerzögerung mit einem Wert von 240 Sekunden überschrieben Klicken Sie auf OK.Dialogfeld Send Message (Nachricht senden)

3. Warten Sie ungefähr 240 Sekunden (vier Minuten). Die Nachricht wird im Abschnitt Message Sampling(Nachrichten-Sampling) der Warteschlangen-Eigenschaftenansicht angezeigt.SQS-Eigenschaftenansicht mit gesendeter Nachricht

Beim Zeitstempel in der Warteschlangen-Eigenschaftenansicht handelt es sich um die Uhrzeit, zuder Sie die Schaltfläche Send (Senden) geklickt haben. Im Zeitstempel ist die Verzögerung nicht miteingeschlossen. Daher kann die Uhrzeit, zu der die Mitteilung in der Warteschlange erscheint und für dieEmpfänger verfügbar ist, eine spätere sein als die des Zeitstempels. Der Zeitstempel wird in der Ortszeitihres Computers angezeigt.

Identitäts- und ZugriffsverwaltungMit AWS Identity and Access Management (IAM) können Sie den Zugriff auf Ihre AWS-Konten und -Ressourcen noch sicherer steuern. Mit IAM können Sie mehrere Benutzer in Ihrem primären AWS-Konto(root) erstellen. Diese Benutzer können eigene Anmeldeinformationen (Passwort, Zugriffsschlüssel-ID undgeheimen Schlüssel) erhalten, aber alle IAM-Benutzer verwenden dieselbe Kontonummer.

Sie können die Zugriffsebene aller IAM-Benutzer auf eine Ressource verwalten, indem Sie den BenutzernIAM-Richtlinien zuweisen. Sie können beispielsweise einem IAM-Benutzer eine Richtlinie zuweisen, die ihmZugriff auf den Amazon S3-Service und die zugehörigen Ressourcen in Ihrem Konto gewährt, aber nichtauf andere Services oder Ressourcen.

Für eine noch effizientere Zugriffsverwaltung können Sie IAM-Gruppen erstellen, bei denen es sich umSammlungen von Benutzern handelt. Wenn Sie der Gruppe eine Richtlinie zuweisen, wird sie auf alleBenutzer angewendet, die Mitglied der Gruppe sind.

Zusätzlich zum Verwalten von Berechtigungen auf Benutzer- und Gruppenebene unterstützt IAM auchdas Konzept von IAM-Rollen. Wie Benutzer und Gruppen können Sie IAM-Rollen Richtlinien zuweisen.Dann können Sie die IAM-Rolle einer Amazon EC2-Instance zuordnen. Anwendungen, die in der EC2Instance ausgeführt werden, können gemäß den von der IAM-Rolle bereitgestellten Berechtigungen aufAWS zugreifen. Weitere Informationen zum Verwenden von IAM-Rollen mit dem Toolkit finden Sie unterCreate an IAM Role (p. 87). Weitere Informationen zu IAM finden Sie im IAM User Guide.

Erstellen und Konfigurieren eines IAM-BenutzersÜber IAM-Benutzer können Sie anderen Benutzern Zugriff auf Ihr AWS-Konto gewähren. Indem Sie IAM-Benutzern Richtlinien zuordnen, können Sie genau festlegen, auf welche Ressourcen ein IAM-BenutzerZugriff hat und welche Vorgänge er mit diesen Ressourcen durchführen darf.

84

Page 89: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchErstellen einer IAM-Gruppe

Als bewährte Vorgehensweise sollten alle Benutzer, die auf ein AWS-Konto zugreifen, dies alsIAM-Benutzer tun (auch als Besitzer des Kontos). Auf diese Weise wird sichergestellt, dass beieiner Kompromittierung der Anmeldeinformationen eines IAM-Benutzers ausschließlich dieseAnmeldeinformationen deaktiviert werden müssen. Es ist nicht notwendig, die Root-Anmeldeinformationenfür das Konto zu deaktivieren oder zu ändern.

Von Toolkit for Visual Studio aus können Sie einem IAM-Benutzer Berechtigungen zuweisen, indem Sieentweder eine IAM-Richtlinie an den Benutzer anhängen oder den Benutzer einer Gruppe zuordnen. IAM-Benutzer, die einer Gruppe zugeordnet sind, leiten ihre Berechtigungen aus den der Gruppe zugeordnetenRichtlinien ab. Weitere Informationen finden Sie unter Create an IAM Group (Erstellen einer IAM-Gruppe) (p. 85) und Add an IAM User to an IAM Group (Hinzufügen eines IAM-Benutzers zu einer IAM-Gruppe) (p. 86).

Sie können über Toolkit for Visual Studio auch AWS-Anmeldeinformationen (Zugriffsschlüssel-ID undgeheimen Schlüssel) für die IAM-Benutzer generieren. Weitere Informationen finden Sie unter GenerateCredentials for an IAM User (p. 86).

Das Toolkit for Visual Studio unterstützt die Angabe der IAM-Benutzeranmeldeinformationen für den Zugriffauf Services im AWS Explorer. Da IAM-Benutzer normalerweise nicht über vollständigen Zugriff auf alleAWS-Services verfügen, sind einige der Funktionen im AWS Explorer möglicherweise nicht verfügbar.Wenn Sie AWS Explorer zum Ändern von Ressourcen verwenden, während das aktive Konto ein IAM-Benutzer ist, und dann das aktive Konto in das Root-Konto ändern, werden die Änderungen erst sichtbar,wenn Sie die Ansicht im AWS Explorer aktualisieren. Um die Anzeige zu aktualisieren, wählen Sie dieSchaltfläche „Refresh ()“ aus.

Weitere Informationen zum Konfigurieren von IAM-Benutzern über die AWS-Managementkonsole findenSie im IAM-Benutzerhandbuch unter Working with Users and Groups.

So erstellen Sie einen IAM-Benutzer

1. Erweitern Sie im AWS Explorer den Knoten AWS Identity and Access Management, öffnen Sie dasKontextmenü (rechte Maustaste) für Users (Benutzer) und wählen Sie dann Create User (Benutzererstellen) aus.

2. Geben Sie im Dialogfeld Create User (Benutzer erstellen) einen Namen für den IAM-Benutzer ein undwählen Sie OK aus. Dies ist der IAMAnzeigename. Weitere Informationen zu Einschränkungen beiNamen für IAM-Benutzer finden Sie im IAM-Benutzerhandbuch.Erstellen eines IAM-Benutzers

Der neue Benutzer wird als Unterknoten unter Users (Benutzer) im Knoten AWS Identity and AccessManagement angezeigt.

Informationen zum Erstellen einer Richtlinie und zum Zuweisen dieser zu einem Benutzer finden Sie unterCreate an IAM Policy (p. 88).

Erstellen einer IAM-GruppeGruppen bieten eine Möglichkeit, IAM-Richtlinien auf eine Anzahl von Benutzern anzuwenden.Informationen zum Verwalten von IAM-Benutzern und -Gruppen finden Sie im IAM-Benutzerhandbuchunter Working with Users and Groups.

So erstellen Sie eine IAM-Gruppe

1. Öffnen Sie im AWS Explorer unter Identity and Access Management das Kontextmenü (rechteMaustaste) für Groups (Gruppen) und wählen Sie Create Group (Gruppe erstellen) aus.

85

Page 90: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchHinzufügen eines IAM-Benutzers zu einer IAM-Gruppe

2. Geben Sie im Dialogfeld Create Group (Gruppe erstellen)) einen Namen für die IAM-Gruppe ein undwählen Sie OK aus.Erstellen einer IAM-Gruppe

Die neue IAM-Gruppe wird unter dem Unterknoten Groups (Gruppen) von Identity and AccessManagement angezeigt.

Weitere Informationen zum Erstellen einer Richtlinie und zum Zuweisen dieser zu einer IAM-Gruppe findenSie unter Create an IAM Policy (p. 88).

Hinzufügen eines IAM-Benutzers zu einer IAM-GruppeIAM-Benutzer, die Mitglieder einer IAM-Gruppe sind, erhalten alle Zugriffsberechtigungen von denRichtlinien, die der Gruppe zugeordnet sind. IAM-Gruppen sollen das Verwalten von Berechtigungen fürmehrere IAM-Benutzer vereinfachen.

Informationen dazu, wie die Richtlinien einer IAM-Gruppe gegenüber denen ausgewertet werden, die IAM-Benutzern in der IAM-Gruppe direkt zugewiesen sind, finden Sie unter Managing IAM Policies in the IAMUser Guide.

Im AWS Explorer fügen Sie IAM-Gruppen IAM-Benutzer aus dem Unterknoten Users (Benutzer) hinzu,nicht aus dem Unterknoten Groups (Gruppen).

So fügen Sie einen IAM-Benutzer einer IAM-Gruppe hinzu

1. Öffnen Sie im AWS Explorer unter Identity and Access Management das Kontextmenü (rechteMaustaste) für Users (Benutzer) und wählen Sie Edit (Bearbeiten) aus.Zuordnen eines IAM-Benutzers zu einer IAM-Gruppe

2. Im linken Bereich der Registerkarte Groups (Gruppen) werden die verfügbaren IAM-Gruppen angezeigt.Der rechte Bereich zeigt die Gruppen, in denen der angegebene IAM-Benutzer bereits Mitglied ist.

Um einer Gruppe einen IAM-Benutzer hinzuzufügen, wählen Sie im linken Bereich die IAM-Gruppe unddann die Schaltfläche > aus.

Um einen IAM-Benutzer aus einer Gruppe zu entfernen, wählen Sie im rechten Bereich die IAM-Gruppeund dann die Schaltfläche < aus.

Um einen IAM-Benutzer allen IAM-Gruppen zuzuweisen, wählen Sie die Schaltfläche >> aus.Entsprechend entfernen Sie den IAM-Benutzer aus allen Gruppen, indem Sie die Schaltfläche <<auswählen.

Um mehrere Gruppen auszuwählen, wählen Sie sie nacheinander aus. Sie müssen nicht die STRG-Taste gedrückt halten. Wenn Sie eine Gruppe aus Ihrer Auswahl entfernen möchten, wählen Sie einfachein zweites Mal aus.

3. Wenn Sie das Zuweisen des IAM-Benutzers zu IAM-Gruppen abgeschlossen haben, wählen Sie Save(Speichern) aus.

Generieren von Anmeldeinformationen für einen IAM-BenutzerSie können mit Toolkit for Visual Studio die Zugriffsschlüssel-ID und den geheimen Schlüssel für API-Aufrufe an AWS generieren. Diese Schlüssel können über das Toolkit auch für den Zugriff auf AWS-Services angegeben werden. Weitere Informationen zum Angeben von Anmeldeinformationen für dieVerwendung mit dem Toolkit finden Sie unter „Anmeldeinformationen“. Weitere Informationen zum sicherenUmgang mit Anmeldeinformationen finden Sie unter Best Practices for Managing AWS Access Keys.

86

Page 91: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchErstellen Sie eine IAM-Rolle.

Das Toolkit kann nicht verwendet werden, um ein Passwort für einen IAM-Benutzer zu erstellen.

So generieren Sie Anmeldeinformationen für einen IAM-Benutzer

1. Öffnen Sie im AWS Explorer das Kontextmenü (rechte Maustaste) für einen IAM-Benutzer und wählenSie Edit (Bearbeiten) aus.

2. Wählen Sie zum Generieren von Anmeldeinformationen auf der Registerkarte Access Keys(Zugriffsschlüssel) die Option Create (Erstellen) aus.

Sie können nur zwei Sätze von Anmeldeinformationen pro IAM-Benutzer generieren. Wenn Sie bereitszwei Sätze von Anmeldeinformationen generiert haben und einen weiteren erstellen möchten, müssenSie zunächst einen der vorhandenen Sätze löschen.Erstellen von Anmeldeinformationen für IAM-Benutzer

Wenn Sie möchten, dass das Toolkit eine verschlüsselte Kopie Ihrer geheimen Zugriffsschlüsselauf dem lokalen Laufwerk speichert, wählen Sie Save the secret access key locally. AWS onlyreturns the secret access key when created (Zugriffsschlüssel lokal speichern. AWS gibt den Secret-Zugriffsschlüssel nur zurück, wenn dieser erstellt wird) aus. Sie können den geheimen Zugriffsschlüsselauch im Dialogfeld kopieren und an einem sicheren Ort speichern.

3. Klicken Sie auf OK.

Nachdem Sie die Anmeldeinformationen generiert haben, können Sie diese auf der Registerkarte AccessKeys (Zugriffsschlüssel) anzeigen. Wenn Sie die Option zur lokalen Speicherung des geheimen Schlüsselsdurch das Toolkit auswählen, wird er hier angezeigt.Erstellen von Anmeldeinformationen für IAM-Benutzer

Wenn Sie den geheimen Schlüssel selbst gespeichert haben und möchten, dass das Toolkit diesen auchspeichert, geben Sie den geheimen Zugriffsschlüssel im Feld Secret Access Key (Secret-Zugriffsschlüssel)ein und wählen dann Save the secret access key locally (Zugriffsschlüssel lokal speichern) aus.

Zum Deaktivieren der Anmeldeinformationen wählen Sie Make Inactive (Interaktiv) aus. (Verwenden Siediese Option, wenn Sie vermuten, dass die Anmeldeinformationen kompromittiert wurden. Sie können dieAnmeldeinformationen reaktivieren, wenn Sie sich vergewissert haben, dass sie sicher sind.)

Erstellen Sie eine IAM-Rolle.Das Toolkit for Visual Studio unterstützt die Erstellung und Konfiguration von IAM-Rollen. Wie Benutzerund Gruppen können Sie auch IAM-Rollen Richtlinien zuweisen. Dann können Sie die IAM-Rolle einerAmazon EC2-Instance zuordnen. Die Zuordnung zur EC2 Instance wird über ein Instance-Profil verwaltet.Dabei handelt es sich um einen logischen Container für die Rolle. Anwendungen, die in der EC2 Instanceautomatisch werden, erhalten den durch die Richtlinien für die IAM-Rolle angegebenen Zugriff. Dies giltauch, wenn für die Anwendung keine anderen AWS-Anmeldeinformationen angegeben wurden.

Sie können beispielsweise eine Rolle erstellen und dieser eine Richtlinie zuweisen, die den Zugriffauf Amazon S3 beschränkt. Nach dem Zuweisen dieser Rolle zu einer EC2 Instance können Sie eineAnwendung in dieser Instance ausführen. Die Anwendung erhält Zugriff auf Amazon S3, aber nicht aufandere Services oder Ressourcen. Dies hat den Vorteil, dass Sie sich nicht um den Schutz von AWS-Anmeldeinformationen bei der Übertragung und Speicherung in der EC2 Instance kümmern müssen.

Weitere Informationen zu IAM-Rollen finden Sie im IAM-Benutzerhandbuch unter Working with Roles.Beispiele für Programme, die auf AWS über die IAM-Rolle zugreifen, die einer Amazon EC2 Instancezugeordnet ist, finden Sie in den AWS-Entwicklerhandbüchern für Java, .NET, PHP und Ruby.

So erstellen Sie eine IAM-Rolle

1. Öffnen Sie im AWS Explorer unter Identity and Access Management das Kontextmenü (rechteMaustaste) für Roles (Rollen) und wählen Sie dann Create Roles (Rollen erstellen) aus.

87

Page 92: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchErstellen einer IAM-Richtlinie

2. Geben Sie im Dialogfeld Create Role (Rolle erstellen) einen Namen für die IAM-Rolle ein und wählen SieOK aus.Erstellen einer IAM-Rolle

Die neue IAM-Rolle wird unter Roles (Rollen) in Identity and Access Management angezeigt.

Weitere Informationen zum Erstellen einer Richtlinie und zum Zuweisen dieser zu einer Rolle finden Sieunter Create an IAM Policy (p. 88).

Erstellen einer IAM-RichtlinieRichtlinien sind elementare Funktionen von IAM. Richtlinien können IAMEntitäten wie Benutzern, Gruppenund Rollen zugewiesen werden. Richtlinien geben die Zugriffsebene für einen Benutzer, eine Gruppe odereine Rolle an.

So erstellen Sie eine IAM-Richtlinie

Erweitern Sie im AWS Explorer den Knoten AWS Identity and Access Management und anschließendden Knoten für den Typ der Entität (Groups (Gruppen), Roles (Rollen) oder Users (Benutzer)), der Sie dieRichtlinie zuordnen möchten. Öffnen Sie beispielsweise ein Kontextmenü für eine IAM-Rolle und wählenSie dann Edit (Bearbeiten) aus.

Im AWS Explorer wird eine Registerkarte für die Rolle angezeigt. Wählen Sie den Link Add Policy(Richtlinie hinzufügen) aus.

Geben Sie im Dialogfeld Policy Name (Richtlinienname) einen Namen für die Richtlinie ein (zum Beispiels3-access).Dialogfeld „New Policy Name (Neuer Richtlinienname“

Fügen Sie im Richtlinien-Editor Richtlinienanweisungen hinzu, um die Zugriffsebene für die Rolle (in diesemBeispiel winapp-instance-role-2), der die Richtlinie zugewiesen ist, festzulegen. In diesem Beispiel gewährteine Richtlinie vollständigen Zugriff auf Amazon S3, aber keinen Zugriff auf andere Ressourcen.Festlegen der IAM-Richtlinie

Für eine noch genauere Zugriffssteuerung erweitern Sie die Unterknoten im Richtlinien-Editor, um einzelneAktionen im Zusammenhang mit AWS-Services zuzulassen oder zu untersagen.

Wenn Sie die Richtlinie bearbeitet haben, wählen Sie den Link Save (Speichern) aus.

Verwenden der AWS Lambda-Vorlagen im AWSToolkit for Visual Studio

Das AWS Toolkit for Visual Studio beinhaltet AWS Lambda .NET Core-Projektvorlagen für VisualStudio. Nutzen Sie die Vorlagen, um .NET Core-basierte C# Lambda-Funktionen zu entwickeln undbereitzustellen. .NET Core ist plattformübergreifend, unterstützt Windows, macOS und Linux, und kannfür die Entwicklung von Anwendungen auf Geräten, in der Cloud sowie von eingebetteten Anwendungenverwendet werden.

Um das Toolkit for Visual Studio installieren zu können, müssen Sie bereits entweder Visual Studio 2017oder Visual Studio 2015, Aktualisierung 3, und .NET Core for Windows installiert haben.

Weitere Informationen finden Sie unter:

88

Page 93: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Verwenden des AWS Lambda-Projekts im AWS Toolkit for Visual Studio

• Weitere Informationen zu Microsoft .NET-Core finden Sie unter .NET-Core.• Weitere Informationen zu .NET Core-Voraussetzungen und Installationsanweisungen für Windows-,

macOS- und Linux-Plattformen finden Sie unter .NET Core Downloads.• Weitere Informationen über AWS Lambda-Funktionen finden Sie unter What Is AWS Lambda?

Voraussetzungen

Um mit den folgenden Tutorials fortzufahren, müssen Sie zunächst:

• Visual Studio 2015 Aktualisierung 3 oder Visual Studio 2017 installieren.• .NET-Core für Windows installieren (nicht erforderlich für Visual Studio 2017).• Installieren Sie das AWS-Toolkit for Visual Studio und geben Sie Ihre Anmeldeinformationen an. Weitere

Informationen finden Sie unter Setting Up the AWS Toolkit for Visual Studio (p. 3).

Themen• Tutorial: Verwenden des AWS Lambda-Projekts im AWS Toolkit for Visual Studio (p. 89)• Tutorial: Tutorial: Erstellen und testen einer serverlosen Anwendung mit AWS Lambda (p. 96)• Tutorial: Erstellen einer Amazon Rekognition Lambda-Anwendung (p. 105)• Tutorial: Verwenden von AmazonProtokollierungs-Frameworks mit AWS Lambda zur Erstellung von

Anwendungsprotokollen (p. 113)

Tutorial: Verwenden des AWS Lambda-Projekts imAWS Toolkit for Visual StudioMit dem .NET Core-Projektvorlagen für Visual Studio in AWS Lambda können Sie ganz einfach eine AWSLambda-Funktion mithilfe von Microsoft .NET Core erstellen.

Informationen zu den Voraussetzungen und zum Einrichten von AWS Toolkit for Visual Studio finden Sieunter Using the AWS Lambda Templates in the AWS Toolkit for Visual Studio (p. 88).

Erstellen eines .NET Core-Projekts mit Lambda in Visual Studio1. Wählen Sie in Visual Studio im Menü File (Datei) zunächst New (Neu) und dann Project (Projekt) aus.2. Wählen Sie im Bereich Installed (Installiert) Visual C# und die Projektvorlage AWS Lambda Project

(.NET Core) aus.

Zwei Typen von Projekten stehen zur Auswahl:• AWS Lambda-Projekte zum Erstellen eines Projekts für die Entwicklung und Bereitstellung einer

einzelnen Lambda-Funktion.• Serverlose AWS-Funktionen zum Erstellen von Lambda-Funktionen mit einer serverlosen AWS

CloudFormation-Vorlage. Mit serverlosen AWS-Anwendungen können Sie mehr als nur die Funktiondefinieren. Beispielsweise können Sie mit der serverlosen Bereitstellung gleichzeitig eine Datenbankerstellen, IAM-Rollen hinzufügen usw. Serverlose AWS-Anwendungen ermöglichen Ihnen auch,mehrere Funktionen zur gleichen Zeit bereitzustellen.

89

Page 94: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Verwenden des AWS Lambda-Projekts im AWS Toolkit for Visual Studio

3. Nach dem Projekttyp wählen Sie einen Plan aus. Für AWS Lambda Project (.NET Core) (AWS Lambda-Projekt (.NET Core)) werden auf der Seite Select Blueprint (Plan auswählen) mehrere Lambda-Funktionsvorlagen angezeigt.

4. Wählen Sie den Typ der Lambda-Funktion, die Sie entwickeln möchten, und dann Finish (Abschließen)aus, um das Visual Studio-Projekt zu erstellen. Sie können jetzt die Struktur und den Code des Projektsüberprüfen.

90

Page 95: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Verwenden des AWS Lambda-Projekts im AWS Toolkit for Visual Studio

Überprüfen der ProjektdateienUntersuchen Sie die Datei aws-lambda-tools-defaults.json, die als Teil Ihres Projekts erstellt wird.Sie können die Optionen in dieser Datei festlegen, die standardmäßig vom Lambda-Tool gelesen wird.Die in Visual Studio-Vorlagen erstellten Projektvorlagen legen für viele dieser Felder Standardwerte fest.Hier wird der Funktions-Handler angegeben, daher müssen ihn nicht im Assistenten festlegen. Wenn Siedie Funktion, die Klasse oder die Assembly jedoch umbenennen, müssen Sie das Feld in der Datei aws-lambda-tools-defaults.json aktualisieren.

{ "profile":"default", "region" : "us-east-2", "configuration" : "Release", "framework" : "netcoreapp1.0", "function-runtime":"dotnetcore1.0", "function-memory-size" : 256, "function-timeout" : 30, "function-handler" : "BlogExample::BlogExample.Function::FunctionHandler"}

Wenn Sie diese Datei „aws-lambda-tools-default.json“ verwenden, benötigen die Lambda-Tools zumBereitstellen der Funktion lediglich den Namen der Lambda-Funktion und die IAM-Rolle.

Ihr Projekt kann nun in Lambda veröffentlicht werden.

Veröffentlichen in LambdaSo veröffentlichen Sie die Funktion in Lambda

1. Klicken Sie im Solution Explorer (Lösungs-Explorer) mit der rechten Maustaste auf das Projekt undwählen Sie dann Publish to AWS Lambda (Für AWS Lambda veröffentlichen) aus.

91

Page 96: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Verwenden des AWS Lambda-Projekts im AWS Toolkit for Visual Studio

2. Geben Sie auf der Seite Upload Lambda Function (Lambda-Funktion hochladen) unter Function Name(Funktionsname) einen Namen für die Funktion ein oder wählen Sie eine zuvor veröffentlichte Funktionaus, die erneut veröffentlicht werden soll. Wählen Sie dann Next (Weiter).

3. Legen Sie auf der Seite Advanced Function Details (Erweiterte Funktionsdetails) die Felder wie folgt fest:• Erforderlich: Geben Sie einen Role Name (Rollennamen) für eine Rolle ein, die Ihrem Konto

zugeordnet ist. Wählen Sie eine vorhandene Rolle oder eine neue Rolle auf der Grundlage einer vonAWS verwalteten Richtlinie oder einer eigenen verwalteten Richtlinie aus. Mithilfe der Rolle werdenAnmeldeinformationen für AWS-Service-Aufrufe durch den Code in der Funktion bereitgestellt. IhrKonto muss über die Berechtigung zum Ausführen der IAM-Aktion „ListPolicies“ verfügen, sonst ist dieListe Role Name (Rollenname) leer und Sie können nicht fortfahren.

• Optional: Wenn Ihre Lambda-Funktion auf Ressourcen auf eine zugreift, wählen Sie die Subnetze undSicherheitsgruppen aus.

• Optional: Legen Sie Umgebungsvariablen fest, die für Ihre Lambda-Funktion benötigt werden. DieSchlüssel werden automatisch mit dem Standard-Service-Schlüssel verschlüsselt (dies ist kostenfrei)oder Sie können einen AWS KMS-Schlüssel angeben (hierfür fällt eine Gebühr an). KMS ist einverwalteter Service, mit dem Sie Schlüssel zum Verschlüsseln Ihrer Daten erstellen und steuernkönnen. Wenn Sie über einen AWS KMS-Schlüssel verfügen, können Sie ihn in der Liste auswählen.

4. Klicken Sie auf Upload (Hochladen).

92

Page 97: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Verwenden des AWS Lambda-Projekts im AWS Toolkit for Visual Studio

5. Die Seite Uploading Function (Funktion hochladen) wird angezeigt, während die Funktion hochgeladenwird, und automatisch geschlossen, wenn der Upload beendet ist. Wenn Sie den Assistenten geöffnetlassen möchten, damit Sie den Bericht anzeigen können, deaktivieren Sie Automatically close wizardon successful completion (Assistent nach erfolgreichem Abschluss automatisch schließen) unten imFormular, bevor der Upload abgeschlossen ist. Schließen Sie die Seite, wenn Sie den Bericht überprüfthaben.

93

Page 98: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Verwenden des AWS Lambda-Projekts im AWS Toolkit for Visual Studio

6. Nachdem die Funktion hochgeladen wurde, wird die Seite Function (Funktion) geöffnet. Verwenden Siedie Registerkarten auf der linken Seite, um die Funktion zu testen, Ereignisquellen hinzuzufügen und dasProtokoll anzuzeigen. Auf der Registerkarte Configuration (Konfiguration) können Sie VPC-Untergruppenund Sicherheitsgruppen sowie Speicher, Zeitbeschränkungen und Umgebungsvariablen hinzufügen.

7. Um Ereignisquellen zum Herstellen einer Verbindung zwischen einer AWS-Ressource (z. B. einemAmazon S3-Bucket, Amazon SNS-Thema oder Amazon Kinesis Data Streams-Stream) und einerLambda-Funktion hinzuzufügen, wählen Sie Event Sources (Ereignisquellen) aus. Dadurch wird dieSeite Add Event Source (Ereignisquelle hinzufügen) angezeigt.

Wählen Sie auf der Seite Add Event Source (Ereignisquelle hinzufügen) unter Source Type (Quelltyp)die entsprechende Ereignisquelle aus und wählen Sie OK aus, um die Ereignisquelle hinzuzufügen.

8. Um die Funktion zu testen, wählen Sie unter Example Requests (Beispielanfragen) eine Beispielanfrageaus.

94

Page 99: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Verwenden des AWS Lambda-Projekts im AWS Toolkit for Visual Studio

9. Um den Test durchzuführen, wählen Sie Invoke (Aufrufen) aus.

10.Zeigen Sie die Ausgabe aus dem Test unter Log output (Protokollausgabe) an.

95

Page 100: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Tutorial: Erstellen und testen einerserverlosen Anwendung mit AWS Lambda

Nachdem Ihre Lambda-Funktion veröffentlicht wurde, kann sie verwendet werden. Anwendungsfälle findenSie unter Examples of How to Use AWS Lambda.

Lambda überwacht automatisch Lambda-Funktionen und gibt Metriken über Amazon CloudWatch an.Informationen zur Überwachung und Problembehebung Ihrer Funktion finden Sie unter Troubleshootingand Monitoring AWS Lambda Functions with Amazon CloudWatch.

Tutorial: Tutorial: Erstellen und testen einerserverlosen Anwendung mit AWS LambdaSie können eine serverlose Lambda-Anwendung mithilfe einer AWS Toolkit for Visual Studio-Vorlageerstellen. Zu den Lambda-Projektvorlagen gehört die Vorlage AWS Serverless Application (ServerloseAWS-Anwendung, bei der es sich um die AWS Toolkit for Visual Studio-Implementierung des AWSServerless Application Model (AWS SAM) handelt. Über diesen Projekttyp können Sie eine Reihe vonAWS Lambda-Funktionen entwickeln und mit beliebigen AWS-Ressourcen als komplette Anwendungbereitstellen. Dabei verwenden Sie zum Verwalten der Bereitstellung AWS CloudFormation.

Informationen zu den Voraussetzungen und zum Einrichten von AWS Toolkit for Visual Studio finden Sieunter Using the AWS Lambda Templates in the AWS Toolkit for Visual Studio (p. 88).

Themen• Erstellen eines neuen serverlosen AWS-Anwendungsprojekts (p. 96)• Untersuchen der Dateien in der serverlosen Anwendung (p. 98)• Bereitstellen der serverlosen Anwendung (p. 101)

Erstellen eines neuen serverlosen AWS-Anwendungsprojekts1. Wählen Sie in Visual Studio im Menü File (Datei) zunächst New (Neu) und dann Project (Projekt) aus.2. Wählen Sie im Bereich Installed (Installiert) Visual C# und die Lambda-Projektvorlage aus.

96

Page 101: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Tutorial: Erstellen und testen einerserverlosen Anwendung mit AWS Lambda

Zwei Typen von Projekten stehen zur Auswahl:• AWS Lambda-Projekte zum Erstellen eines Projekts für die Entwicklung und Bereitstellung einer

einzelnen Lambda-Funktion.• Serverlose AWS-Funktionen zum Erstellen von Lambda-Funktionen mit einer serverlosen AWS

CloudFormation-Vorlage. Mit serverlosen AWS-Anwendungen können Sie mehr als nur die Funktiondefinieren. Beispielsweise können Sie mit der serverlosen Bereitstellung gleichzeitig eine Datenbankerstellen, IAM-Rollen hinzufügen usw. Serverlose AWS-Anwendungen ermöglichen Ihnen auch,mehrere Funktionen zur gleichen Zeit bereitzustellen.

3. Wählen Sie AWS Serverless Application with Tests (.NET Core) (Serverlose AWS-Anwendung mit Tests(.NET Core)) aus und vergeben Sie den Namen Blogger. Die Seite Select Blueprint (Plan auswählen)wird mit mehreren Lambda-Funktionsvorlagen angezeigt.

97

Page 102: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Tutorial: Erstellen und testen einerserverlosen Anwendung mit AWS Lambda

4. Wählen Sie den Plan Blog API using DynamoDB (Blog-API mit DynamoDB) und dann Finish(Abschließen) aus, um das Visual Studio-Projekt zu erstellen.

Untersuchen der Dateien in der serverlosen AnwendungBlog.cs

Blog.cs ist eine einfache Klasse zur Darstellung der in Amazon DynamoDB gespeicherten Blog-Elemente.

Functions.cs

Functions.cs definiert die C#-Funktionen, die als Lambda-Funktionen verfügbar gemacht werden sollen.Es sind vier Funktionen zum Verwalten einer Blog-Plattform definiert:

• GetBlogsAsync: ruft eine Liste aller Blogs ab.• GetBlogAsync: ruft einen einzelnen Blog ab, der durch die Abfrageparameter-ID oder die ID im URL-

Ressourcenpfad identifiziert wird.• AddBlogAsync: fügt einen Blog in die DynamoDB-Tabelle ein.• RemoveBlogAsync: entfernt einen Blog aus der DynamoDB-Tabelle.

Jede dieser Funktionen übernimmt ein APIGatewayProxyRequest-Objekt und gibteineAPIGatewayProxyResponse zurück.

Sie machen diese Lambda-Funktionen als HTTP-APIs mit Amazon API Gateway verfügbar. DieAPIGatewayProxyRequest enthält alle Informationen der HTTP-Anforderung. Die GetBlogAsync-Aufgabe sucht die Blog-ID im Ressourcenpfad oder der Abfragezeichenfolge.

public async Task GetBlogAsync(APIGatewayProxyRequest request, ILambdaContext context)

98

Page 103: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Tutorial: Erstellen und testen einerserverlosen Anwendung mit AWS Lambda

{ string blogId = null; if (request.PathParameters != null && request.PathParameters.ContainsKey(ID_QUERY_STRING_NAME)) blogId = request.PathParameters[ID_QUERY_STRING_NAME]; else if (request.QueryStringParameters != null && request.QueryStringParameters.ContainsKey(ID_QUERY_STRING_NAME)) blogId = request?.QueryStringParameters[ID_QUERY_STRING_NAME]; ...}

Der Standard-Konstruktor für diesen Kurs gibt den Namen der DynamoDB-Tabelle, in der die Blogsgespeichert sind, als Umgebungsvariable weiter. Diese Umgebungsvariable wird beim Bereitstellen derFunktion durch Lambda festgelegt.

public Functions(){ // Check if a table name was passed in through environment variables and, if so, // add the table mapping var tableName = System.Environment.GetEnvironmentVariable(TABLENAME_ENVIRONMENT_VARIABLE_LOOKUP); if(!string.IsNullOrEmpty(tableName)) { AWSConfigsDynamoDB.Context.TypeMappings[typeof(Blog)] = new Amazon.Util.TypeMapping(typeof(Blog), tableName); }

var config = new DynamoDBContextConfig { Conversion = DynamoDBEntryConversion.V2 }; this.DDBContext = new DynamoDBContext(new AmazonDynamoDBClient(), config);}

serverless.template

serverless.template ist die AWS CloudFormation-Vorlage für die Bereitstellung der vier Funktionen.Durch die Parameter für die Vorlage können Sie den Namen der DynamoDB-Tabelle festlegen undauswählen, ob DynamoDB die Tabelle erstellen oder davon ausgehen soll, dass sie bereits vorhanden ist.

Die Vorlage definiert vier Ressourcen vom Typ AWS::Serverless::Function. Dies ist einebesondere Meta-Ressource, die innerhalb der AWS-SAM-Spezifikation definiert ist. Die Spezifikationist eine Transformation, die während der DynamoDB-Bereitstellung auf die Vorlage angewendetwird. Die Transformation erweitert den Meta-Ressourcentyp in die konkreteren Ressourcen, z. B.AWS::Lambda::Function oder AWS::IAM::Role. Die Transformation wird zu Beginn der Vorlagendateiwie folgt deklariert.

{ "AWSTemplateFormatVersion" : "2010-09-09", "Transform" : "AWS::Serverless-2016-10-31",

...

}

Die GetBlogs-Deklaration ist ähnlich den Funktionsdeklarationen.

"GetBlogs" : { "Type" : "AWS::Serverless::Function", "Properties": { "Handler": "Blogger::Blogger.Functions::GetBlogsAsync", "Runtime": "dotnetcore1.0", "CodeUri": "",

99

Page 104: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Tutorial: Erstellen und testen einerserverlosen Anwendung mit AWS Lambda

"Description": "Function to get a list of blogs", "MemorySize": 256, "Timeout": 30, "Role": null, "Policies": [ "AWSLambdaFullAccess" ], "Environment" : { "Variables" : { "BlogTable" : { "Fn::If" : ["CreateBlogTable", {"Ref":"BlogTable"}, { "Ref" : "BlogTableName" } ] } } }, "Events": { "PutResource": { "Type": "Api", "Properties": { "Path": "/", "Method": "GET" } } } }}

Viele der Felder ähneln denen einer Lambda-Projektbereitstellung. In der DynamoDB-Eigenschaft wird derName der Environment-Tabelle als Umgebungsvariable weitergegeben. Die CodeUri-Eigenschaft weistDynamoDB an, wo Ihr Anwendungspaket in Amazon S3 gespeichert ist. Lassen Sie diese Eigenschaftleer. Das Toolkit trägt während der Bereitstellung einen Wert ein, nachdem es das Anwendungspaket inS3 hochgeladen hat. (Dabei wird die Vorlagendatei auf dem Datenträger nicht geändert.) Im AbschnittEvents werden die HTTP-Bindungen für Ihre Lambda-Funktion definiert. Dies ist die einzige API Gateway-Einrichtung, die Sie für Ihre Funktion benötigen. In diesem Abschnitt können Sie auch andere Arten vonEreignisquellen einrichten.

Einer der Vorteile der Nutzung von AWS CloudFormation zum Verwalten der Bereitstellung besteht darin,dass Sie in der Vorlage auch andere AWS-Ressourcen hinzufügen und konfigurieren können, die für IhreAnwendung erforderlich sind. DynamoDB übernimmt dann das Erstellen und Löschen der Ressourcen.

100

Page 105: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Tutorial: Erstellen und testen einerserverlosen Anwendung mit AWS Lambda

Bereitstellen der serverlosen AnwendungStellen Sie die serverlose Anwendung bereit, indem Sie mit der rechten Maustaste auf das Projekt klickenund Publish to AWS Lambda (Für AWS Lambda veröffentlichen) auswählen.

Hierbei wird der Bereitstellungsassistent gestartet. Da die gesamte Lambda-Konfiguration in der Dateiserverless.template erledigt wurde, müssen Sie lediglich die folgenden Informationen bereitstellen:

• Den Namen des CloudFormation-Stacks, der den Container für alle in der Vorlage deklariertenRessourcen darstellt.

• Den S3-Bucket, in den Ihr Anwendungspaket hochgeladen werden soll.

Diese müssen in derselben AWS-Region vorhanden sein.

101

Page 106: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Tutorial: Erstellen und testen einerserverlosen Anwendung mit AWS Lambda

Da die serverlose Vorlage Parameter aufweist, wird im Assistent eine zusätzliche Seite angezeigt, damitSie die Werte für diese Parameter angeben können. Sie können die BlogTableName-Eigenschaftleer lassen und CloudFormation das Generieren eines eindeutigen Namens für die Tabelle überlassen.Sie müssen ShouldCreateTable auf true festlegen, damit DynamoDB die Tabelle erstellt. Umeine vorhandene Tabelle zu verwenden, geben Sie den Tabellennamen ein und legen Sie denShouldCreateTable-Parameter auf false fest. Sie können für die anderen Felder die Standardwerteübernehmen und Publish (Veröffentlichen) auswählen.

102

Page 107: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Tutorial: Erstellen und testen einerserverlosen Anwendung mit AWS Lambda

Nachdem die Veröffentlichung abgeschlossen ist, wird die CloudFormation-Stack-Ansicht im AWS Explorergeöffnet. In dieser Ansicht wird der Fortschritt der Erstellung aller in Ihrer serverlosen Vorlage deklariertenRessourcen angezeigt.

Wenn die Stack-Erstellung abgeschlossen ist, wird die Root-URL für das API Gateway auf der Seiteangezeigt. Wenn Sie auf diesen Link klicken, wird ein leeres JSON-Array zurückgegeben, da Sie derTabelle keine Blogs hinzugefügt haben. Um Blogs in die Tabelle aufzunehmen, müssen Sie mit der HTTP-PUT-Methode ein JSON-Dokument an diese URL übergeben, das den Blog angibt. Dies kann in Code odermit verschiedenen Tools erfolgen. In diesem Beispiel wird das Tool Postman verwendet. Dabei handelt

103

Page 108: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Tutorial: Erstellen und testen einerserverlosen Anwendung mit AWS Lambda

es sich um eine Chrome-Erweiterung, Sie können aber ein beliebiges Tool verwenden, das Ihnen zusagt.In diesem Tool legen Sie die URL fest und ändern die Methode in PUT. Fügen Sie auf der RegisterkarteBody einen Beispielinhalt ein. Wenn Sie den HTTP-Aufruf durchführen, sehen Sie, dass die Blog-IDzurückgegeben wird.

Geben Sie den Link zur serverlosen AWS-URL im Browser ein, dann erhalten Sie den soebenveröffentlichten Blog.

104

Page 109: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Erstellen einer Amazon

Rekognition Lambda-Anwendung

Mit der serverlosen AWS-Anwendungsvorlage können Sie eine Sammlung von Lambda-Funktionen unddie anderen AWS-Ressourcen der Anwendung verwalten. Mit der AWS-SAM-Spezifikation können Sieaußerdem mithilfe einer vereinfachten Syntax eine serverlose Anwendung in der DynamoDB-Vorlagedeklarieren.

Tutorial: Erstellen einer Amazon Rekognition Lambda-AnwendungIn diesem Tutorial erfahren Sie, wie Sie eine Lambda-Anwendung erstellen, die Amazon Rekognition fürdas Taggen von Amazon S3-Objekten mit ermittelten Bezeichnungen verwendet.

Informationen zu den Voraussetzungen und zum Einrichten von AWS Toolkit for Visual Studio finden Sieunter Using the AWS Lambda Templates in the AWS Toolkit for Visual Studio (p. 88).

Erstellen eines .NET Core-Projekts mit Lambda ImageRekognition in Visual Studio1. Wählen Sie in Visual Studio im Menü File (Datei) zunächst New (Neu) und dann Project (Projekt) aus.2. Wählen Sie im Bereich Installed (Installiert) Visual C# und die AWS Lambda-Projektvorlage aus.

Wählen Sie ein AWS Lambda-Projekt mit Tests (.NET Core) aus, geben Sie dem Projekt den Namen„ImageRekognition“ und wählen Sie dann OK aus.

105

Page 110: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Erstellen einer Amazon

Rekognition Lambda-Anwendung

3. Nach dem Projekttyp wählen Sie einen Plan aus. Pläne stellen Einstiegscode bereit, die Ihnen beimSchreiben von Lambda-Funktionen helfen sollen. Wählen Sie für dieses Beispiel den Plan Detect ImageLabels (Bildbeschriftungen erkennen) aus.

Dieser Plan bietet Code für das Überwachen von Amazon S3-Ereignissen. Dabei wird AmazonRekognition zum Erkennen von Bezeichnern und zum Hinzufügen dieser als Tags zum S3-Objektverwendet.

106

Page 111: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Erstellen einer Amazon

Rekognition Lambda-Anwendung

4. Wählen Sie den Typ der Lambda-Funktion, die Sie entwickeln möchten, und dann Finish (Abschließen)aus, um das Visual Studio-Projekt zu erstellen.

Wenn das Projekt abgeschlossen ist, verfügen Sie wie dargestellt über eine Projektmappe mit zweiProjekten: dem Quell-Projekt, das den Code der Lambda-Funktion für die Bereitstellung in Lambda enthält,und einem Testprojekt mit xUnit zum lokalen Testen Ihrer Funktion.

Sie stellen eventuell beim ersten Erstellen Ihrer Projekte fest, dass Visual Studio nicht alle NuGet-Referenzen findet. Dies tritt auf, da diese Pläne Abhängigkeiten erfordern, die von NuGet abgerufen

107

Page 112: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Erstellen einer Amazon

Rekognition Lambda-Anwendung

werden müssen. Wenn neue Projekte erstellt werden, ruft Visual Studio nur lokale Referenzen ab, aberkeine Remote-Referenzen von NuGet. Sie können dies ganz einfach ändern, indem Sie mit der rechtenMaustaste auf Ihre Referenzen klicken und Restore Packages (Wiederherstellungspakete) auswählen.

Überprüfen der Dateien1. Öffnen Sie die Datei 1Function.cs und überprüfen Sie den Code aus dem Plan. Das erste

Codesegment ist das Assembly-Attribut, das am Anfang der Datei hinzugefügt wird.

// Assembly attribute to enable the Lambda function's JSON input to be converted into a .NET class.[assembly: LambdaSerializerAttribute(typeof(Amazon.Lambda.Serialization.Json.JsonSerializer))]

Standardmäßig akzeptiert Lambda nur Eingabeparameter und Rückgabetypen vom TypSystem.IO.Stream. Wenn Sie typisierte Klassen als Eingabeparameter und Rückgabetypenverwenden, müssen Sie einen Serializer registrieren. Dieses Assembly-Attribut registriert den Lambda-JSON-Serializer, der für das Konvertieren der Streams an typisierte Klassen Newtonsoft.Jsonverwendet. Sie können den Serializer auf Assembly- oder Methodenebene festlegen.

Die Klasse enthält zwei Konstruktoren. Der erste ist ein Standardkonstruktor, der verwendet wird, wennLambda Ihre Funktion aufruft. Dieser Konstruktor erstellt die Serviceclients für S3 und Rekognition undruft die AWS-Anmeldeinformationen für diese Clients über die IAM-Rolle ab, die Sie der Funktion beider Bereitstellung zuweisen. Die AWS-Region für die Clients wird auf die Region festgelegt, in der IhreLambda-Funktion ausgeführt wird. In diesem Plan fügen Sie dem S3-Objekt nur Tags hinzu, wenn derRekognition-Service über ein Mindestmaß an Vertrauen für den Bezeichner verfügt. Dieser Konstruktorprüft die Umgebungsvariable MinConfidence, um das Mindestmaß an Vertrauen zu ermitteln. Siekönnen diese Umgebungsvariable bei der Bereitstellung der Lambda-Funktion festlegen.

public Function(){ this.S3Client = new AmazonS3Client(); this.RekognitionClient = new AmazonRekognitionClient();

var environmentMinConfidence = System.Environment.GetEnvironmentVariable(MIN_CONFIDENCE_ENVIRONMENT_VARIABLE_NAME); if(!string.IsNullOrWhiteSpace(environmentMinConfidence)) { float value; if(float.TryParse(environmentMinConfidence, out value)) { this.MinConfidence = value; Console.WriteLine($"Setting minimum confidence to {this.MinConfidence}"); } else { Console.WriteLine($"Failed to parse value {environmentMinConfidence} for minimum confidence. Reverting back to default of {this.MinConfidence}"); } } else { Console.WriteLine($"Using default minimum confidence of {this.MinConfidence}"); }}

Sie können den zweiten Konstruktor für Tests verwenden. Das Testprojekt konfiguriert eigene S3- undRekognition-Clients und übergibt diese.

108

Page 113: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Erstellen einer Amazon

Rekognition Lambda-Anwendung

public Function(IAmazonS3 s3Client, IAmazonRekognition rekognitionClient, float minConfidence){ this.S3Client = s3Client; this.RekognitionClient = rekognitionClient; this.MinConfidence = minConfidence;}

FunctionHandler ist die Methode, die Lambda aufruft, nachdem die Instance erstellt wurde. BeachtenSie, dass der Eingabeparameter vom Typ S3Event und nicht Stream ist. Dies ist aufgrund desregistrierten Lambda-JSON-Serializers möglich. Das S3Event enthält alle Informationen zu dem inAmazon S3 ausgelösten Ereignis. Die Funktion durchläuft alle S3-Objekte, die Teil des Ereignisseswaren, und weist Rekognition an, die Bezeichner zu ermitteln. Nachdem die Bezeichner ermitteltwurden, werden sie dem S3-Objekt als Tags hinzugefügt.

public async Task FunctionHandler(S3Event input, ILambdaContext context){ foreach(var record in input.Records) { if(!SupportedImageTypes.Contains(Path.GetExtension(record.S3.Object.Key))) { Console.WriteLine($"Object {record.S3.Bucket.Name}:{record.S3.Object.Key} is not a supported image type"); continue; }

Console.WriteLine($"Looking for labels in image {record.S3.Bucket.Name}:{record.S3.Object.Key}"); var detectResponses = await this.RekognitionClient.DetectLabelsAsync(new DetectLabelsRequest { MinConfidence = MinConfidence, Image = new Image { S3Object = new Amazon.Rekognition.Model.S3Object { Bucket = record.S3.Bucket.Name, Name = record.S3.Object.Key } } });

var tags = new List(); foreach(var label in detectResponses.Labels) { if(tags.Count < 10) { Console.WriteLine($"\tFound Label {label.Name} with confidence {label.Confidence}"); tags.Add(new Tag { Key = label.Name, Value = label.Confidence.ToString() }); } else { Console.WriteLine($"\tSkipped label {label.Name} with confidence {label.Confidence} because maximum number of tags reached"); } }

await this.S3Client.PutObjectTaggingAsync(new PutObjectTaggingRequest { BucketName = record.S3.Bucket.Name,

109

Page 114: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Erstellen einer Amazon

Rekognition Lambda-Anwendung

Key = record.S3.Object.Key, Tagging = new Tagging { TagSet = tags } }); } return;}

Beachten Sie, dass der Code Aufrufe von Console.WriteLine() enthält. Wenn die Funktion inLambda ausgeführt wird, werden alle Aufrufe von Console.WriteLine() an Amazon CloudWatchLogs umgeleitet.

2. Öffnen Sie die Datei aws-lambda-tools-defaults.json, die der Plan erstellt hat. DieseDatei enthält Standardwerte, die der Plan festgelegt hat, um einige Felder im Bereitstellungs-Assistenten auszufüllen. Sie ist auch beim Festlegen von Befehlszeilen-Optionen mit Integration derneuen .NET Core-Befehlszeilenschnittstelle (CLI) hilfreich. Für die Verwendung navigieren Sie zumProjektverzeichnis der Funktion und geben dotnet lambda help ein.

Ein wichtiges Feld ist der Funktions-Handler. Damit wird in Lambda angegeben, welche Methode im Codeals Reaktion auf die aufgerufene Funktion aufgerufen werden soll. Das Format des Felds ist <assembly-name>::<full-type-name>::<method-name>. Sie müssen unbedingt auch den Namespace in denTypnamen einschließen.

Bereitstellen der Funktion1. Klicken Sie mit der rechten Maustaste auf das Lambda-Projekt und wählen Sie dann Publish to AWS

Lambda (Für AWS Lambda veröffentlichen) aus. Damit starten Sie den Bereitstellungs-Assistenten.Beachten Sie, dass viele der Felder bereits festgelegt wurden. Diese Werte stammen aus der zuvorbeschriebenen Datei aws-lambda-tools-defaults.json.

2. Geben Sie einen Funktionsnamen ein. Verwenden Sie für dieses Beispiel ImageRekognition undwählen Sie dann Next (Weiter) aus.

110

Page 115: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Erstellen einer Amazon

Rekognition Lambda-Anwendung

3. Wählen Sie auf der Seite Advanced Function Details (Erweiterte Funktionsdetails) eine IAM-Rolle aus,mit der Ihr Code die Berechtigung für den Zugriff auf S3 und Rekognition erhält. Um diesen Beitrag kurzzu halten, wählen Sie die verwaltete Richtlinie Power User aus. Die Tools erstellen basierend auf dieserRichtlinie eine Rolle.

4. Legen Sie abschließend die Umgebungsvariable MinConfidence auf „60“ fest und wählen Sieanschließend Upload (Hochladen) aus.

111

Page 116: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Erstellen einer Amazon

Rekognition Lambda-Anwendung

Dadurch wird der Bereitstellungsprozess gestartet, bei dem das Lambda-Projekt erstellt und gepackt unddann die Lambda-Funktion erstellt wird. Nach Abschluss der Veröffentlichung wird die Ansicht Function(Funktion) im Fenster AWS Explorer angezeigt. Hier können Sie eine Testfunktion aufrufen, CloudWatchLogs für die Funktion anzeigen und Ereignisquellen konfigurieren.

5. Nachdem die Funktion bereitgestellt wurde, müssen Sie Amazon S3 für das Senden der Ereignisse anIhre neue Funktion konfigurieren. Wählen Sie auf der Registerkarte Event Sources (Ereignisquellen)die Option Add (Hinzufügen) aus. Wählen Sie dann Amazon S3 und den Bucket aus, den Sie mit IhrerLambda-Funktion verbinden möchten. Der Bucket muss sich in der Region befinden, in der die Lambda-Funktion bereitgestellt wird.

Testen der FunktionNachdem die Funktion bereitgestellt und ein S3-Bucket als Ereignisquelle für diese konfiguriert wurde,öffnen Sie den S3-Bucket-Browser im AWS Explorer für den Bucket, den Sie ausgewählt haben. Laden Sieanschließend einige Bilder hoch.

Wenn der Upload abgeschlossen ist, können Sie überprüfen, ob Ihre Funktion ausgeführt wurde, indemSie die Protokolle in der Ansicht Ihrer Funktion einsehen. Oder klicken Sie mit der rechten Maustaste aufdie Bilder im Bucket-Browser und wählen Sie Properties (Eigenschaften) aus. Auf der Registerkarte Tagskönnen Sie die Tags anzeigen, die auf Ihr Objekt angewendet wurden.

112

Page 117: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchTutorial: Verwenden von AmazonProtokollierungs-

Frameworks mit AWS Lambda zurErstellung von Anwendungsprotokollen

Tutorial: Verwenden von AmazonProtokollierungs-Frameworks mit AWS Lambda zur Erstellung vonAnwendungsprotokollenSie können Amazon CloudWatch Logs nutzen, um Ihre Anwendungsprotokolle zu überwachen, speichernund zu öffnen. Um Protokolldaten in CloudWatch Logs zu schreiben, können Sie ein AWS SDK verwenden,oder den CloudWatch Logs-Agenten installieren, um bestimmte Protokollordner zu überwachen. DieVerwendung von CloudWatch Logs mit .NET-Anwendungen ist jetzt noch benutzerfreundlicher, daCloudWatch Logs mit verschiedenen gängigen .NET-Frameworks für die Protokollierung integriert wurde.

Zu den unterstützten .NET-Frameworks für die Protokollierung gehören NLog, Log4net und das neueintegrierte ASP.NET Core-Framework für die Protokollierung. Sie müssen lediglich für jedes Frameworkdas entsprechende NuGet-Paket hinzufügen, CloudWatch Logs als Ausgangsquelle hinzufügen und dannIhre Protokollierungsbibliothek wie immer verwenden.

Wenn Sie beispielsweise CloudWatch Logs mit einer .NET-Anwendung verwenden, die NLog einsetzt,fügen Sie das AWS.Logger.NLog NuGet-Paket und dann das AWS-Ziel in Ihrer NLog.config-Dateihinzu. Hier finden Sie ein Beispiel für eine - NLog.config-Datei, mit der sowohl CloudWatch Logs alsauch die Konsole als Ausgang für die Protokollmitteilungen dienen können.

<?xml version="1.0" encoding="utf-8" ?><nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" throwExceptions="true"> <targets>

113

Page 118: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchBereitstellen eines AWS Lambda-

Projekts mit der .NET Core-CLI

<target name="aws" type="AWSTarget" logGroup="NLog.ConfigExample" region="us-east-1"/> <target name="logfile" xsi:type="Console" layout="${callsite} ${message}" /> </targets> <rules> <logger name="*" minlevel="Info" writeTo="logfile,aws" /> </rules></nlog>

Wenn Sie, nach Abschließen dieser Schritte, Ihre Anwendung ausführen, werden die mit NLoggeschriebenen Protokollmitteilungen an CloudWatch Logs gesendet. Anschließend können Sie dieProtokollmitteilungen der Anwendung in Fast-Echtzeit über die CloudWatch Logs-Konsole ansehen. In derCloudWatch Logs-Konsole können Sie auch Metriken und Alarme, basierend auf den ProtokollmitteilungenIhrer Anwendung, einrichten.

Die Plugins für die Protokollierung bauen alle auf dem AWS SDK for .NET auf und verwenden dasselbeVerhalten wie SDK zum Abrufen der AWS-Anmeldeinformationen. Die Anmeldeinformationen für die Plug-ins zur Protokollierung müssen über die folgenden Berechtigungen verfügen, um auf CloudWatch Logszugreifen zu können:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogGroups" ], "Resource": [ "arn:aws:logs:*:*:*" ] } ]}

Die AWS .NET-Plug-ins zur Protokollierung sind ein neues Open-Source-Projekt auf GitHub. Dort findenSie alle Plug-ins, einschließlich Beispielen und Anweisungen zur Konfiguration von CloudWatch Logs fürjedes der unterstützten .NET-Frameworks für die Protokollierung.

Bereitstellen eines AWS Lambda-Projekts mitder .NET Core-CLI

Das AWS Toolkit for Visual Studio beinhaltet AWS Lambda .NET Core-Projektvorlagen für Visual Studio.Sie müssen die Aktualisierung 3 für Visual Studio 2015 installieren, bevor Sie die .NET Core for Windowsund das Toolkit for Visual Studio installieren können. Die in Visual Studio integrierten Lambda-Funktionenkönnen Sie mithilfe der .NET Core-Befehlszeilenschnittstelle (CLI) bereitstellen.

Note

Weitere Informationen zum Erstellen von Lambda-Funktionen in Visual Studio finden Sie unterlambda.Weitere Informationen zu Microsoft .NET Core finden Sie unter .NET-Core.Weitere Informationen über Lambda-Funktionen finden Sie unter What Is AWS Lambda?

Themen

114

Page 119: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchListe der über die CLI verfügbaren Lambda-Befehle

• Liste der über die CLI verfügbaren Lambda-Befehle (p. 115)• Veröffentlichen eines .NET Core Lambda-Projekts über die .NET Core CLI (p. 115)

Liste der über die CLI verfügbaren Lambda-BefehleÜber die .NET Core CLI sind zahlreiche Lambda-Befehle verfügbar.

1. Öffnen Sie eine Eingabeaufforderung und navigieren Sie zum Ordner, der ein Visual Studio .NET Core-Lambda-Projekt enthält.

2. Typ dotnet lambda --help.

C:\Lambda\AWSLambda1\AWSLambda1>dotnet lambda --help AWS Lambda Tools for .NET Core functions Project Home: https://github.com/aws/aws-lambda-dotnet . Commands to deploy and manage |LAM| functions: . deploy-function Deploy the project to |LAM| invoke-function Invoke the function in |LAM| with an optional input list-functions List all of your |LAM| functions delete-function Delete a |LAM| function get-function-config Get the current runtime configuration for a |LAM| function update-function-config Update the runtime configuration for a |LAM| function . Commands to deploy and manage AWS Serverless applications using |CFNlong|: . deploy-serverless Deploy an AWS Serverless application list-serverless List all of your AWS Serverless applications delete-serverless Delete an AWS Serverless application . Other Commands: . package Package a |LAM| project into a .zip file ready for deployment . To get help on individual commands execute:

dotnet lambda help <command>

Veröffentlichen eines .NET Core Lambda-Projektsüber die .NET Core CLIBei den folgenden Anweisungen wird davon ausgegangen, dass Sie eine AWS Lambda .NET Core-Funktion in Visual Studio erstellt haben.

1. Öffnen Sie eine Eingabeaufforderung und navigieren Sie zum Ordner, der Ihr Visual Studio .NET CoreLambda-Projekt enthält.

2. Typ dotnet lambda deploy-function.

#. Geben Sie auf Aufforderung den Namen der bereitzustellenden Funktion ein. Sie können einen neuenNamen oder den Namen einer bereits vorhandenen Funktion verwenden.

1. Geben Sie auf Aufforderung die AWS-Region (die Region, für die Ihre Lambda Funktion bereitgestelltwird) ein.

115

Page 120: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchVeröffentlichen eines .NET Core Lambda-

Projekts über die .NET Core CLI

2. Wählen Sie auf Aufforderung die IAM-Rolle aus bzw. erstellen Sie diese, die Lambda für die Ausführungder Funktion übernimmt.

3. Nach erfolgreichem Abschluss wird die Mitteilung New Lambda function created angezeigt.

C:\Lambda\AWSLambda1\AWSLambda1>dotnet lambda deploy-functionExecuting publish command... invoking 'dotnet publish', working folder 'C:\Lambda\AWSLambda1\AWSLambda1\bin\Release\netcoreapp1.0\publish'... publish: Publishing AWSLambda1 for .NETCoreApp,Version=v1.0... publish: Project AWSLambda1 (.NETCoreApp,Version=v1.0) will be compiled because expected outputs are missing... publish: Compiling AWSLambda1 for .NETCoreApp,Version=v1.0... publish: Compilation succeeded.... publish: 0 Warning(s)... publish: 0 Error(s)... publish: Time elapsed 00:00:01.2479713... publish:... publish: publish: Published to C:\Lambda\AWSLambda1\AWSLambda1\bin\Release\netcoreapp1.0\publish... publish: Published 1/1 projects successfullyZipping publish folder C:\Lambda\AWSLambda1\AWSLambda1\bin\Release\netcoreapp1.0\publish to C:\Lambda\AWSLambda1\AWSLambda1\bin\Release\netcoreapp1.0\AWSLambda1.zipEnter Function Name: (AWS Lambda function name)DotNetCoreLambdaTestEnter AWS Region: (The region to connect to AWS services)us-west-2Creating new Lambda functionSelect IAM Role that Lambda will assume when executing function: 1) lambda_exec_LambdaCoreFunction 2) *** Create new IAM Role ***1New Lambda function created

Wenn Sie eine vorhandene Funktion bereitstellen, fragt die Bereitstellungsfunktion nur nach der AWS-Region.

C:\Lambda\AWSLambda1\AWSLambda1>dotnet lambda deploy-functionExecuting publish commandDeleted previous publish folder... invoking 'dotnet publish', working folder 'C:\Lambda\AWSLambda1\AWSLambda1\bin\Release\netcoreapp1.0\publish'... publish: Publishing AWSLambda1 for .NETCoreApp,Version=v1.0... publish: Project AWSLambda1 (.NETCoreApp,Version=v1.0) was previously compiled. Skipping compilation.... publish: publish: Published to C:\Lambda\AWSLambda1\AWSLambda1\bin\Release\netcoreapp1.0\publish... publish: Published 1/1 projects successfullyZipping publish folder C:\Lambda\AWSLambda1\AWSLambda1\bin\Release\netcoreapp1.0\publish to C:\Lambda\AWSLambda1\AWSLambda1\bin\Release\netcoreapp1.0\AWSLambda1.zipEnter Function Name: (AWS Lambda function name)DotNetCoreLambdaTestEnter AWS Region: (The region to connect to AWS services)us-west-2Updating code for existing function

Ihre Lambda Funktion ist einsatzbereit, sobald sie bereitgestellt wurde. Weitere Informationen finden Sieunter Examples of How to Use AWS Lambda.

116

Page 121: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio BenutzerhandbuchVeröffentlichen eines .NET Core Lambda-

Projekts über die .NET Core CLI

Lambda überwacht automatisch Lambda-Funktionen und gibt Metriken über Amazon CloudWatchan. Informationen zur Überwachung und Problembehebung Ihrer Lambda-Funktion finden Sie unterTroubleshooting and Monitoring AWS Lambda Functions with Amazon CloudWatch.

117

Page 122: AWS Toolkit for Visual Studio - Benutzerhandbuch · AWS Toolkit for Visual Studio Benutzerhandbuch Einrichten des AWS Toolkit for Visual Studio Einrichtung des AWS Toolkit for Visual

AWS Toolkit for Visual Studio Benutzerhandbuch

DokumentverlaufDie folgende Tabelle enthält wichtige Änderungen an der Dokumentation seit der letzten Veröffentlichungdes AWS Toolkit for Visual Studio User Guide.

Letzte Aktualisierung der Dokumentation: 05. Februar 2019

Änderung Beschreibung Veröffentlichungsdatum

ASP.NET Core-Detailshinzugefügt

Der AWS Elastic Beanstalk-Bereitstellungsassistentunterstützt jetzt ASP.NET Core-Anwendungen. Weitere Detailsfinden Sie unter Deploying anASP.NET Core Application toElastic Beanstalk (p. 24).

25. Juli 2016

Bereitstellungsassistentenüberarbeitet

In dieser Version wird einneuer Publish to ElasticBeanstalk (Für ElasticBeanstalk veröffentlichen)-Assistent bereitgestellt. WeitereInformationen finden Sieunter Deploying to ElasticBeanstalk (Für Elastic Beanstalkbereitstellen) (p. 19). Mit derEinführung dieses neuenAssistenten erhält der Publishto Amazon Web Services(Für Amazon Web Servicesveröffentlichen) -Assistentden Legacy-Status. WeitereInformationen finden Sie unterDeploying to Elastic Beanstalk(Legacy) (Für Elastic Beanstalk(Legacy) bereitstellen) (p. 33)und Deploying to AWSCloudFormation (Legacy) (FürAWS CloudFormation (Legacy)bereitstellen) (p. 38).

17. Dezember 2014

Unterstützung für Amazon VPC Diese Version bietet Support fürAmazon Virtual Private Cloud.

4. April 2013

Neue Version Dies ist Version 3.0 des AWSToolkit for Visual Studio UserGuide.

8. Juni 2012

118