Blueprints können wiederverwendet werden, indem Sie sie in einem anderen Blueprint als Komponente verschachteln. Blueprints verschachteln Sie zur Wiederverwendung und Modularitätskontrolle bei der Maschinenbereitstellung. Beim Arbeiten mit verschachtelten Blueprints gelten jedoch spezielle Regeln und Überlegungen.

Ein Blueprint, der ein oder mehrere verschachtelte Blueprints enthält, wird als äußerer Blueprint bezeichnet. Wenn Sie eine Blueprint-Komponente zur Design-Arbeitsfläche hinzufügen, während Sie einen anderen Blueprint erstellen oder bearbeiten, wird die Blueprint-Komponente als verschachtelter Blueprint bezeichnet, und der Container-Blueprint, zu dem er hinzugefügt wird, wird als äußerer Blueprint bezeichnet.

Die Verwendung von verschachtelten Blueprints bringt Überlegungen mit sich, die nicht immer offensichtlich sind. Es ist wichtig, die Regeln und Überlegungen zu verstehen, um die Möglichkeiten der Maschinenbereitstellung optimal zu nutzen.

Allgemeine Regel und Überlegungen für das Verschachteln von Blueprints

  • Als Best Practice zum Minimieren der Blueprint-Komplexität sollten Sie Blueprints nicht tiefer als drei Ebenen verschachteln, wobei der Blueprint der obersten Ebene als eine der drei Ebenen zählt.

  • Wenn ein Benutzer Berechtigungen für den obersten Blueprint hat, so ist er zu allen Aspekten des Blueprints berechtigt, einschließlich verschachtelter Blueprints.

  • Sie können eine Genehmigungsrichtlinie auf einen Blueprint anwenden. Nach der Genehmigung werden das Blueprint-Katalogelement und all seine Komponenten, einschließlich verschachtelter Blueprints, bereitgestellt. Sie können auch verschiedene Genehmigungsrichtlinien auf verschiedene Komponenten anwenden. Alle Genehmigungsrichtlinien müssen genehmigt werden, bevor der angeforderte Blueprint bereitgestellt wird.

  • Beim Bearbeiten eines veröffentlichten Blueprints werden keine Bereitstellungen geändert, die bereits mithilfe dieses Blueprints bereitgestellt wurden. Zum Bereitstellungszeitpunkt liest die sich ergebende Bereitstellung aktuelle Werte aus dem Blueprint, einschließlich den verschachtelten Blueprints. Die einzigen Änderungen, die Sie an implementierte Bereitstellungen weitergeben können, sind Bearbeitungen von Softwarekomponenten, wie beispielsweise Bearbeitungen an Aktualisierungs- oder Deinstallationsskripts.

  • Einstellungen, die Sie im äußeren Blueprint definieren, überschreiben in Ihren verschachtelten Blueprints konfigurierte Einstellungen, wobei die folgenden Ausnahmen gelten:

    • Sie können den Namen eines verschachtelten Blueprints ändern, nicht aber den Namen einer Maschinenkomponente oder einer anderen Komponente in einem verschachtelten Blueprint.

    • Sie können keine benutzerdefinierten Eigenschaften für eine Maschinenkomponente in einem verschachtelten Blueprint hinzufügen oder löschen. Sie können diese benutzerdefinierten Eigenschaften jedoch bearbeiten. Sie können keine Eigenschaftengruppen für eine Maschinenkomponente in einem verschachtelten Blueprint hinzufügen, bearbeiten oder löschen.

  • Änderungen, die Sie oder ein anderer Architekt an den Einstellungen von verschachtelten Blueprints vornehmen, werden in Ihren äußeren Blueprints angezeigt, außer Sie haben diese Einstellungen im äußeren Blueprint überschrieben.

  • Die Leasedauer eines verschachtelten Blueprints und des äußeren Blueprints kann auf einen beliebigen Wert festgelegt werden. Die maximale Leasedauer des äußeren Blueprints sollte aber auf den niedrigsten maximalen Leasewerte eines verschachtelten Blueprints begrenzt werden. Auf diese Weise kann der Anwendungsarchitekt einen zusammengesetzten Blueprint mit einheitlichen und variablen Leasewerten entwerfen, der jedoch die durch den Infrastrukturarchitekt identifizierten Einschränkungen einhält. Wenn der für einen verschachtelten Blueprint definierte maximale Leasewert niedriger als der für den äußeren Blueprint definierte maximale Leasewert ist, schlägt die Bereitstellungsanforderung fehl.

  • Bei der Arbeit an einem äußeren Blueprint können Sie die Einstellungen für die Maschineneinstellungen überschreiben, die für eine Maschinenkomponente in einem verschachtelten Blueprint konfiguriert sind.

  • Bei der Arbeit an einem äußeren Blueprint können Sie eine Softwarekomponente auf eine Maschinenkomponente in einem verschachtelten Blueprint ziehen.

Regeln und Überlegungen für das Verschachteln von Blueprints im Zusammenhang mit Netzwerken und der Sicherheit

  • Alle Netzwerk- und Sicherheitskomponenten in äußeren Blueprints können Maschinen zugeordnet werden, die in verschachtelten Blueprints definiert sind.

  • Wenn Anwendungsisolierung auf den äußeren Blueprint angewendet wird, überschreibt dieser die Anwendungsisolierungseinstellungen, die in verschachtelten Blueprints angegeben sind.

  • Transportzoneneinstellungen, die im äußeren Blueprint definiert sind, überschreiben Transportzoneneinstellungen, die in verschachtelten Blueprints angegeben werden.

  • Bei der Arbeit an einem äußeren Blueprint können Sie Lastausgleichsdienst-Einstellungen relativ zu den Netzwerkkomponenteneinstellungen und Maschinenkomponenteneinstellungen konfigurieren, die in einem inneren bzw. verschachtelten Blueprint konfiguriert sind.

  • Bei einem verschachtelten Blueprint, der eine On-Demand-NAT-Netzwerkkomponente enthält, können die in dieser On-Demand-NAT-Netzwerkkomponente angegebenen IP-Bereiche im äußeren Blueprint nicht bearbeitet werden.

  • Der äußere Blueprint kann keinen inneren Blueprint enthalten, der Einstellungen für bedarfsgesteuerte Netzwerke oder Einstellungen für Lastenausgleich bei Bedarf enthält. Die Verwendung eines inneren Blueprints, der eine bedarfsgesteuerte NSX-Netzwerkkomponenten oder eine NSX-Lastausgleichsdienst-Komponente enthält, wird nicht unterstützt.

  • Bei einem verschachtelten Blueprint, der NSX-Netzwerk- oder -Sicherheitskomponenten enthält, können Sie das Netzwerkprofil oder Sicherheitsrichtlinieninformationen, die im verschachtelten Blueprint angegeben sind, nicht ändern. Sie können diese Einstellungen aber für andere vSphere-Maschinenkomponenten wiederverwenden, die Sie dem äußeren Blueprint hinzufügen.

  • Um sicherzustellen, dass NSX-Netzwerk- und -Sicherheitskomponenten in verschachtelten Blueprints in einem zusammengesetzten Blueprint eindeutig benannt werden, setzt vRealize Automation ein Präfix vor die ID des verschachtelten Blueprints für Netzwerk- und Sicherheitskomponentennamen, die nicht eindeutig sind. Wenn Sie z. B. einen Blueprint mit dem ID-Namen xbp_1 zu einem äußeren Blueprint hinzufügen und beide Blueprints eine On-Demand-Sicherheitsgruppenkomponente mit dem Namen OD_Security_Group_1 enthalten, wird die Komponente in dem verschachtelten Blueprint auf der Designarbeitsfläche des Blueprints in xbp_1_OD_Security_Group_1 umbenannt. Die Namen von Netzwerk- und Sicherheitskomponenten im äußeren Blueprint erhalten kein Präfix.

Überlegungen für das Verschachteln von Blueprints im Zusammenhang mit Softwarekomponenten

Für skalierbare Blueprints empfiehlt es sich, Einzel-Layer-Blueprints zu erstellen, die andere Blueprints nicht wiederverwenden. Normalerweise werden Aktualisierungsprozesse während Skalierungsvorgängen durch implizite Abhängigkeiten ausgelöst. Beispielsweise Abhängigkeiten, die Sie beim Binden einer Softwareeigenschaft an eine Maschineneigenschaft erstellen. Implizite Abhängigkeiten in einem verschachtelten Blueprint lösen jedoch nicht immer Aktualisierungsprozesse aus. Wenn Sie verschachtelte Blueprints in einem skalierbaren Blueprint verwenden müssen, können Sie manuell Abhängigkeiten zwischen Komponenten in Ihrem verschachtelten Blueprint festlegen, um explizite Abhängigkeiten zu erstellen, die stets eine Aktualisierung auslösen.