U voegt beperkingstags toe aan cloudsjablonen en diverse andere onderdelen in vRealize Automation Cloud Assembly om deze af te stemmen op de capaciteiten die zijn gedefinieerd voor resources, cloudzones en profielen om zo geschikte implementaties te genereren.

Er zijn twee hoofdgebieden in vRealize Automation Cloud Assembly waar de beperkingstags van toepassing zijn. Het eerste bevindt zich aan de configuratiezijde van projecten en images. Het tweede bevindt zich aan de implementatiezijde van cloudsjablonen. Beperkingen die in beide gebieden worden toegepast, worden in cloudsjablonen samengevoegd om een set implementatievereisten te vormen.

Hoe beperkingstags werken voor projecten

Bij het configureren van Cloud Assembly kunnen cloudbeheerders beperkingstags op projecten en imagetoewijzingen toepassen. Op deze manier kunnen cloudbeheerders governancebeperkingen rechtstreeks op projectniveau toepassen. Alle beperkingen die op dit niveau worden toegevoegd, worden toegepast op elke cloudsjabloon die voor het betreffende project is aangevraagd.

Als de tags voor het project conflicteren met tags voor de cloudsjabloon, hebben de projecttags voorrang, waardoor de cloudbeheerder de governanceregels kan afdwingen. Als de cloudbeheerders bijvoorbeeld een tag location:london voor het project maken, maar een ontwikkelaar een tag location:boston op de cloudsjabloon plaatst, krijgt de eerst voorrang en wordt de resource geïmplementeerd in de infrastructuur met de tag location:london.

U kunt maximaal drie beperkingen voor projecten toepassen. Projectbeperkingen kunnen hard of zacht zijn. Deze zijn standaard hard. Met harde beperkingen kunt u implementatiebeperkingen strikt afdwingen. Als er niet aan een of meer harde beperkingen wordt voldaan, mislukt de implementatie. Zachte beperkingen bieden een manier om voorkeuren aan te geven die worden geselecteerd als ze beschikbaar zijn, maar de implementatie mislukt niet als er niet aan de zachte beperkingen wordt voldaan.

Hoe beperkingstags werken in cloudsjablonen

In cloudsjablonen voegt u beperkingstags als YAML-code toe aan resources, zodat deze overeenkomen met de juiste capaciteitstags die uw cloudbeheerder voor resources, cloudzones en opslag- en netwerkprofielen heeft gemaakt. Daarnaast zijn er nog andere complexere opties voor het implementeren van beperkingstags. U kunt bijvoorbeeld een variabele gebruiken om een of meer tags op een aanvraag in te vullen. Zo kunt u een of meer tags opgeven op het moment van de aanvraag.

Maak beperkingstags met behulp van het label tag in de YAML-code van de cloudsjabloon. Beperkingstags van projecten worden toegevoegd aan de beperkingstags die in cloudsjablonen zijn gemaakt.

vRealize Automation Cloud Assembly ondersteunt een eenvoudige tekenreeksnotatie om gemakkelijker beperkingen in YAML-bestanden te maken:

[!]tag_key[:tag_value][:hard|:soft]

vRealize Automation Cloud Assembly maakt standaard een positieve beperking met harde afdwinging. De tagwaarde is optioneel, maar wordt aanbevolen, zoals in de rest van de applicatie.

In het volgende voorbeeld van WordPress met MySQL worden YAML-beperkingstags weergegeven die locatiegegevens voor berekeningsresources opgeven.

name: "wordPressWithMySql"
components:
  mysql:
    type: "Compute"
    data:
      name: "mysql"
      # ... skipped lines ...
  wordpress:
    type: "Compute"
    data:
      name: "wordpress"
      instanceType: small
      imageType: "ubuntu-server-1604"
      constraints:
        - tag: "!location:eu:hard"
        - tag: "location:us:soft"
        - tag: "!pci"
      # ... skipped lines ...

Zie Deel 3: het ontwerp en de implementatie van het voorbeeld van een vRealize Automation Cloud Assembly-sjabloon voor meer informatie over werken met cloudsjablonen.

Hoe harde en zachte beperkingen in projecten en cloudsjablonen werken

Beperkingen in zowel projecten als cloudsjablonen kunnen hard of zacht zijn. Het vorige codefragment bevat voorbeelden van harde en zachte beperkingen. Alle beperkingen zijn standaard hard. Met harde beperkingen kunt u implementatiebeperkingen strikt afdwingen. Als er niet aan een of meer harde beperkingen wordt voldaan, mislukt de implementatie. Zachte beperkingen geven voorkeuren aan die indien beschikbaar van toepassing zijn, maar ze mislukken niet als er niet aan wordt voldaan.

Als u een reeks harde en zachte beperkingen voor een specifiek resourcetype hebt, kunnen de zachte beperkingen mogelijk doorslaggevend zijn. Dat wil zeggen, als meerdere resources aan een harde beperking voldoen, worden de zachte beperkingen gebruikt om de werkelijke resource te selecteren die in de implementatie wordt gebruikt.

U kunt bijvoorbeeld maximaal drie beperkingen voor een project opgeven in een combinatie van netwerk-, opslag- en uitbreidbaarheidsitems. U kunt ook aangeven of elke beperking hard of zacht is. Stel dat u een harde opslagbeperking maakt met de tag location:boston. Als geen enkele opslag in het project met deze beperking overeenkomt, mislukt elke gerelateerde implementatie.

Opmerking: In projecten en cloudsjablonen wordt het gedrag van beperkingen gewijzigd door de vlag failOnConstraintMergeConflict. Als deze vlag op waar is ingesteld en er een conflict is tussen projectbeperkingen en cloudsjabloonbeperkingen, mislukt de aanvraag. Als de vlag niet aanwezig is of op onwaar is ingesteld, hebben de projectbeperkingen voorrang op de cloudsjabloonbeperkingen.