

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Holen Sie sich exportierte Ausgaben aus einem bereitgestellten CloudFormation Stack
<a name="using-cfn-stack-exports"></a>

Wenn Sie mehrere Stapel in derselben AWS-Konto Region haben, möchten Sie möglicherweise Informationen zwischen ihnen austauschen. Dies ist nützlich, wenn ein Stack die von einem anderen Stack erstellten Ressourcen verwenden muss.

Sie könnten zum Beispiel einen Stack haben, der Netzwerkressourcen wie Subnetze und Sicherheitsgruppen für Ihre Webserver erstellt. Andere Stacks, die die eigentlichen Webserver erstellen, können dann die vom ersten Stack erstellten Netzwerkressourcen nutzen. Sie müssen die Ressourcen nicht IDs in der Vorlage des Stacks fest codieren oder IDs als Eingabeparameter übergeben.

Um Informationen zwischen Stackn auszutauschen, *exportieren* Sie Ausgabewerte aus einem Stack und *importieren* sie in einen anderen Stack. Funktionsweise:

1. In der Vorlage des ersten Stacks (beispielsweise des NetzwerkStacks) definieren Sie bestimmte Werte für den Export, indem Sie das Feld `Export` im Abschnitt `Outputs` verwenden. Weitere Informationen finden Sie unter [CloudFormation OutputsVorlagensyntax](outputs-section-structure.md).

1. Wenn Sie diesen Stapel erstellen oder aktualisieren, werden die CloudFormation Ausgabewerte exportiert AWS-Konto und sie anderen Stacks in derselben Region zur Verfügung gestellt.

1. In der Vorlage des anderen Stacks verwenden Sie die Funktion [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-importvalue.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-importvalue.html), um die exportierten Werte aus dem ersten Stack zu importieren.

1. Wenn Sie den zweiten Stack (z. B. den Webserver-Stack) erstellen oder aktualisieren, CloudFormation werden die exportierten Werte automatisch aus dem ersten Stapel abgerufen und verwendet.

Eine Anleitung sowie Beispielvorlagen finden Sie unter [Verweisen Sie auf Ressourcenausgaben in einem anderen CloudFormation Stack](walkthrough-crossstackref.md).

## Exportieren von Stack-Ausgabewerten im Vergleich zur Verwendung geschachtelter Stacks
<a name="output-vs-nested"></a>

Ein geschachtelter Stack ist ein Stack, den Sie innerhalb eines anderes Stacks mithilfe der `AWS::CloudFormation::Stack`-Ressource erstellen können. Bei geschachtelten Stacks können Sie alle Ressourcen aus einem einzigen Stack bereitstellen und verwalten. Sie können Ausgaben aus einem Stack in den geschachtelten Stack-Gruppen als Eingaben für einen anderen Stack in der Gruppe verwenden. Dies unterscheidet sich vom Exportieren von Werten.

Wenn Sie den Informationsaustausch auf innerhalb einer geschachtelten Stack-Gruppe isolieren möchten, wird empfohlen, geschachtelte Stacks zu verwenden. Um Informationen mit anderen Stacks (nicht nur innerhalb der Gruppe geschachtelter Stacks) auszutauschen, exportieren Sie Werte. Sie können z. B. einen einzelnen Stack mit einem Subnetz erstellen und dann seine ID exportieren. Andere Stacks können dieses Teilnetz verwenden, indem sie seine ID importieren. Jeder Stack muss nicht sein eigenes Subnetz erstellen. Solange Stacks die Subnetz-ID importieren, können sie nicht geändert oder gelöscht werden.

Weitere Informationen über verschachtelte Stapel finden Sie unter [Aufteilung einer Vorlage in wiederverwendbare Teile mit verschachtelten Stapeln](using-cfn-nested-stacks.md).

## Überlegungen
<a name="using-cfn-stack-exports-considerations"></a>

Die folgenden Einschränkungen gelten für Cross-Stack-Referenzen:
+ Jeder AWS-Konto`Export` Name muss innerhalb einer Region eindeutig sein.
+ Cross-Stack-Referenzen können nicht regionsübergreifend erstellt werden. Sie können die intrinsische Funktion `Fn::ImportValue` verwenden, um nur Werte zu importieren, die innerhalb derselben Region exportiert wurden.
+ Für Ausgaben kann der Wert der `Name`-Eigenschaft eines `Export` keine `Ref`- oder `GetAtt`-Funktionen verwenden, die von einer Ressource abhängen.

  Ebenso darf die `ImportValue`-Funktion keine `Ref`- oder `GetAtt`-Funktionen enthalten, die von einer Ressource abhängen.
+ Nachdem ein anderer Stack einen Ausgabewert importiert hat, können Sie den Stack, der den Ausgabewert exportiert, nicht löschen oder den exportierten Ausgabewert ändern. Alle Importe müssen entfernt werden, bevor Sie den exportierenden Stack löschen oder den Ausgabewert ändern können.

## Auflistung von exportierten Ausgabewerten
<a name="using-cfn-stack-exports-listing"></a>

Wenn Sie die exportierten Ausgabewerte aus Ihren Stapeln anzeigen möchten, verwenden Sie eine der folgenden Methoden:

**So listen Sie exportierte Ausgabewerte auf (Konsole)**

1. Öffnen Sie die CloudFormation Konsole unter [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/).

1. Wählen Sie in der Navigationsleiste am oberen Rand des Bildschirms Ihren AWS-Region.

1. Wählen Sie im linken Navigationsbereich **Exporte**.

**So listen Sie exportierte Ausgabewerte auf (AWS CLI)**  
Verwenden Sie den folgenden [https://docs.aws.amazon.com/cli/latest/reference/cloudformation/list-exports.html](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/list-exports.html)-Befehl. Ersetze es durch *us-east-1* dein. AWS-Region

```
aws cloudformation list-exports --region us-east-1
```

Es folgt eine Beispielausgabe.

```
{
    "Exports": [
        {
            "ExportingStackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/private-vpc/99764070-b56c-xmpl-bee8-062a88d1d800",
            "Name": "private-vpc-subnet-a",
            "Value": "subnet-07b410xmplddcfa03"
        },
        {
            "ExportingStackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/private-vpc/99764070-b56c-xmpl-bee8-062a88d1d800",
            "Name": "private-vpc-subnet-b",
            "Value": "subnet-075ed3xmplebd2fb1"
        },
        {
            "ExportingStackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/private-vpc/99764070-b56c-xmpl-bee8-062a88d1d800",
            "Name": "private-vpc-vpcid",
            "Value": "vpc-011d7xmpl100e9841"
        }
    ]
}
```

CloudFormation zeigt die Namen und Werte der exportierten Ausgaben für die aktuelle Region und den Stack, aus dem sie exportiert wurden. Um einen exportierten Ausgabewert in der Vorlage eines anderen Stacks zu verwenden, können Sie ihn mit dem Exportnamen und der Funktion `Fn::ImportValue` referenzieren.

## Auflistung von Stacks, die einen exportierten Ausgabewert importieren
<a name="using-cfn-stack-imports"></a>

Um exportierte Ausgabewerte zu löschen oder zu ändern, müssen Sie zunächst herausfinden, von welchen Stapeln sie importiert werden.

Um die Stapel anzuzeigen, die einen exportierten Ausgabewert importieren, verwenden Sie eine der folgenden Methoden:

**Auflisten von Stacks, die einen exportierten Ausgabewert importieren (Konsole)**

1. Öffnen Sie die CloudFormation Konsole unter [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/).

1. Wählen Sie im linken Navigationsbereich **Exporte**.

1. Um zu sehen, welche Stacks einen bestimmten Exportwert importieren, wählen Sie den **Exportnamen** für diesen Exportwert. CloudFormation zeigt die Seite mit den Exportdetails an, auf der alle Stapel aufgeführt sind, die den Wert importieren.

**Auflisten von Stacks, die einen exportierten Ausgabewert importieren (AWS CLI)**  
Verwenden Sie den Befehl [https://docs.aws.amazon.com/cli/latest/reference/cloudformation/list-imports.html](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/list-imports.html). *us-east-1*Ersetzen Sie es durch Ihren AWS-Region und `private-vpc-vpcid` durch den Namen des exportierten Ausgabewerts.

```
aws cloudformation list-imports --region us-east-1 \
    --export-name private-vpc-vpcid
```

CloudFormation gibt eine Liste von Stacks zurück, die den Wert importieren.

```
{
    "Imports": [
        "my-app-stack"
    ]
}
```

Sobald Sie wissen, welche Stack einen bestimmten exportierten Wert importieren, müssen Sie diese Stack ändern, um die `Fn::ImportValue`-Funktionen zu entfernen, die auf die Ausgabewerte verweisen. Sie müssen alle Importe entfernen, die auf exportierte Ausgabewerte verweisen, bevor Sie die exportierten Ausgabewerte löschen oder ändern können. 