Je werkt voor BY, een nieuwe verzekeraar. BY heeft geen eigen hardware en is in de startup fase niet van plan om uitgaven te doen aan kapitaal. Daarom beginnen ze direct in de cloud. Jij werkt als netwerk engineer voor de verzekeraar en moet direct aan de slag om een initiele netwerk op te zetten en deze door te ontwikkelen.
De labs vereisen contributor
of owner
rechten op de subscription. Indien je onvoldoende rechten hebt, werken bepaalde onderdelen niet goed:
Auto-shutdown
van VMs.Network Watcher
functionaliteiten werken niet allemaal.- Instellen van
diagnostic settings
offlow logs
. - Aanmaken
resource groups
kan falen
De code samples voor Windows zijn grotendeels bedoeld voor in PowerShell
(Windows en Core). De Linux code samples werken in ieder geval in Bash
.
Windows ondersteunt SSH sinds Windows 10/Windows Server 2016. Vanuit de CLI, kan je inloggen op een server met de onderstaande command:
ssh <username>@<ip/fqdn>
ssh admin@10.0.0.1
De Azure portal is de tool om Azure Resource Management te leren kennen. Er zijn veel opties en instellingen. Gebruik de zoekbalk bovenin voor het vinden van items. Je kan alles vinden door te klikken, maar zoeken is vaak sneller als je niet precies weet waar iets te vinden is.
De naamgeving is van belang. Je kan met een goede naamgeving veel informatie in een oogopslag zichtbaar maken.
Bedenk van tevoren een zinnige naamgeving voor je resources. Wat wil je erin verwerkt hebben?
resource groups
zijn uniek per subscription per regio- resources moeten een unieke naam in een resource group hebben
- bepaalde resources moeten een globaal unieke naam hebben (de naam is ook onderdeel van de FQDN)
- Windows VM namen mogen maximaal 15 tekens lang zijn
- bepaalde resources hebben strengere eisen dan anderen
Resource groups
helpen met het groeperen van uitgerolde diensten. Goed nadenken over wat bij elkaar in een groep hoort is van belang. Het maakt de volgende zaken makkelijker:
- opschonen van resources
- uitdelen van rechten
- categoriseren van resources
BY verwacht dat de resource groups
zinnig zijn ingedeeld.
Dit lab gaat uit van resources uitgerold in West Europe
. Dit is arbitrair gekozen. Het belangrijkste is dat (bijna) alles wordt uitgerold in dezelfde regio, ongeacht welke wordt gekozen. Er zijn een paar uitzonderingen op de regels.
Voor de cloud is besloten om 10.128.0.0/14 te gebruiken. Hieruit worden drie virtual networks
met een /16 grootte uitgerold.
Hieronder een verdeling van de superscope naar VNETs
.
Virtual Network | scope |
---|---|
Hub | 10.128.0.0/16 |
Spoke A | 10.129.0.0/16 |
Spoke B | 10.130.0.0/16 |
Elke subnet is /24 groot. Dit houdt het simpel.
Voor elke lab opdracht is een eindstaat in Terraform gemaakt. Indien je later door wilt gaan of gewoonweg een correcte optie wilt zien, kun je deze uitrollen. Dit kan o.a. in de Azure Cloud Shell.
NOTE: De credentials voor alle apparaten uitgerold door de templates is
adminuser
/AzureLabs10IT!
.
NOTE: Indien de Cloud Shell gebruikt wordt voor het uitrollen van de resource, wordt in ACLs het IP van de Cloud Shell container als source toegestaan, niet de publieke IP van het apparaat waar je vandaan werkt. Denk hierbij aan RDP/SSH source IPs die door NSGs en Azure Firewalls gefilterd worden.
# (optioneel) az account set --name "<subscription name>"
git clone https://github.com/draggeta/AzureLab.git
terraform -chdir=AzureLab/ex<number>/tf init
terraform -chdir=AzureLab/ex<number>/tf apply
rm -rf AzureLab/