Infrastructuur als code

Voltooid

Infrastructuur als code (IaC) is het proces voor het beheren en inrichten van cloudinfrastructuurresources via machineleesbare code die is opgeslagen in broncodebeheer. De mogelijkheid om uw infrastructuur te behandelen als elke andere broncode is waarom deze procedure infrastructuur als code wordt genoemd.

IaC is een belangrijk onderdeel van DevOps, omdat hiermee infrastructuurconfiguratie en -implementatie kan worden geautomatiseerd. Deze automatisering vermindert de hoeveelheid tijd en moeite die nodig is voor het beheren en inrichten van infrastructuur, en zorgt ervoor dat de infrastructuur consistent en betrouwbaar is geconfigureerd. IaC helpt er ook voor te zorgen dat de infrastructuur veilig is en voldoet aan het organisatiebeleid.

Systeemeigen azure-hulpprogramma's versus cloudagnostische hulpprogramma's

Een van de belangrijkste factoren bij het kiezen van een IaC-hulpprogramma is uw cloudomgeving:

  • Systeemeigen Azure-hulpprogramma's: IaC-hulpprogramma's zoals de Azure CLI, Azure PowerShell en Bicep zijn alleen beschikbaar in Azure. Omdat hetzelfde bedrijf zowel cloudinfrastructuur als de IaC-hulpprogramma's biedt, is het voordeel minder tijd tussen release van cloudfuncties en ondersteuning in de hulpprogramma's.

  • Cloudagnostische hulpprogramma's: Met IaC-hulpprogramma's zoals Terraform kunt u infrastructuur beheren als code in omgevingen met meerdere clouds. Afhankelijk van het IaC-hulpprogramma worden nieuw uitgebrachte Azure-functies mogelijk niet onmiddellijk ondersteund.

Imperatieve versus declaratieve IaC-hulpprogramma's

Er zijn twee typen IaC-configuratiehulpprogramma's:

  • Imperatieve IaC-hulpprogramma's: een imperatief hulpprogramma of taal is een hulpprogramma waarin de code expliciet aangeeft wat er moet worden gedaan en hoe. De code die u schrijft, voert acties uit in een specifieke volgorde, één stap voor stap, om uw infrastructuur te configureren. De meeste imperatieve IaC-hulpprogramma's zijn niet idempotent omdat de configuratie stap voor stap wordt uitgevoerd.

    Imperatieve IaC-hulpprogramma's voor het beheren en inrichten van resources in Azure zijn onder andere:

    • De Azure CLI
    • Azure PowerShell
  • Declaratieve IaC-hulpprogramma's: met een declaratief hulpprogramma of taal kunt u het gewenste resultaat opgeven in plaats van hoe u elke stap wilt uitvoeren. De meeste declaratieve IaC-hulpprogramma's voldoen aan een gemeenschappelijk patroon. Nadat u de definitie van uw infrastructuur hebt gemaakt, voert u een opdracht uit om in te richten wat u hebt gedefinieerd. Declaratieve IaC-hulpprogramma's zijn idempotent omdat de configuratie meerdere keren kan worden toegepast, ongeacht de status van de configuratie van de infrastructuur. Deze mogelijkheid helpt u configuratiedrift te voorkomen door niet-compatibele infrastructuur weer in overeenstemming te brengen.

    Declaratieve IaC-hulpprogramma's voor het beheren en inrichten van resources in Azure zijn onder andere:

    • Bicep
    • Terraform

Aanbevelingen

  • Gebruik een IaC-benadering voor het implementeren, beheren, beheren en ondersteunen van Azure-implementaties.
  • Gebruik systeemeigen Azure-hulpprogramma's voor IaC in de volgende scenario's:
    • U wilt alleen systeemeigen Azure-hulpprogramma's gebruiken. Uw organisatie heeft eerdere ervaring met het implementeren van Azure Resource Manager-sjablonen (ARM-sjablonen).
    • Uw organisatie wil onmiddellijke ondersteuning voor alle preview- en algemene beschikbaarheidsversies van Azure-services.
  • Gebruik niet-systeemeigen hulpprogramma's voor IaC in de volgende scenario's:
    • Uw organisatie beheert infrastructuur in omgevingen met meerdere clouds.
    • Uw organisatie heeft geen directe ondersteuning nodig voor alle preview- en GA-versies van Azure-services.