Voor het volgende eenvoudige voorbeeld op basis van een plug-in in Automation Assembler bepalen de compute- en imagehelpers de plaatsing en het gastbesturingssysteem van een virtuele machine.
1. Voeg account- en zone-infrastructuur toe
De gebruiker voegt een AWS-cloudaccount toe met de cloudzones us-east-1 en us-west-2. De gebruiker tagt respectievelijk de zones region-east
en region-west
.
2. Voeg infrastructuur voor imagetoewijzing toe
De gebruiker voegt één ubuntu
-imagetoewijzing toe, die naar images met verschillende id's verwijst, afhankelijk van de zone.
3. Voeg het project toe
De gebruiker maakt een project. In het project voegt de gebruiker onder Inrichting de twee zones toe.
4. Start een ontwerp
In Automation Assembler begint de gebruiker op het tabblad Ontwerp een nieuw ontwerp op basis van een leeg canvas.
5. Voeg helpers toe aan het canvas
De gebruiker sleept een computehelper en imagehelper naar het canvas.
6. Configureer helpers
In de code voor de helpers voegt de gebruiker de ubuntu
-image en een overeenkomende beperkingstag toe voor region-west
. In de klassieke werkstroom zijn deze eigenschappen rechtstreeks aan de resource zelf toegevoegd.
Allocations_Image_1: type: Allocations.Image properties: image: ubuntu Allocations_Compute_1: type: Allocations.Compute properties: constraints: - tag: region-west
7. Voeg de resource van de virtuele machine toe aan het canvas
De gebruiker sleept een AWS-EC2-resource naar het canvas. Houd er rekening mee dat dit niet de (Classic)
-resource is. De nieuwere resources hebben een speciaal voorvoegsel wanneer ze worden weergegeven in de code.
8. Bind de resource aan de helpers
In het ontwerpcanvas tekent de gebruiker een verbinding die begint bij de toewijzingshelper en eindigt bij de EC2-instantie om eigenschapsbindingen toe te voegen. Deze eigenschapsbindingen verwijzen naar de eerdere infrastructuur zoals gedefinieerd door de helpers. De term selected
is onderdeel van de binding omdat de helper de selectie uitvoert.
Idem_AWS_EC2_INSTANCE_1: type: Idem.AWS.EC2.INSTANCE properties: name: db-demo account: ${resource.Allocations_Compute_1.selectedCloudAccount.name} region: ${resource.Allocations_Compute_1.selectedRegion.name} image_id: ${resource.Allocations_Image_1.selectedImageId} instance_type: t1.micro
Op het ontwerpcanvas verbinden stippellijnen de resource met de bijbehorende helpers.
9. Voltooide sjabloon
In het voltooide voorbeeld wordt de volgende code gebruikt. Houd er rekening mee dat de gebruiker de infrastructuur voor soorttoewijzing kan hebben geconfigureerd en ook gebruik kan hebben gemaakt van een soorthelper, in plaats van instance_type: t1.micro
direct aan de EC2-resource toe te voegen.
formatVersion: 1 inputs: {} resources: Allocations_Image_1: type: Allocations.Image properties: image: ubuntu Allocations_Compute_1: type: Allocations.Compute properties: constraints: - tag: region-west Idem_AWS_EC2_INSTANCE_1: type: Idem.AWS.EC2.INSTANCE properties: name: db-demo account: ${resource.Allocations_Compute_1.selectedCloudAccount.name} region: ${resource.Allocations_Compute_1.selectedRegion.name} image_id: ${resource.Allocations_Image_1.selectedImageId} instance_type: t1.micro
De EC2 systeemeigen eigenschappen van AWS kunnen hier verder worden geconfigureerd. Anders is de voltooide sjabloon gereed om te testen en te implementeren.