Infrastruktuuri koodina blogisarjan kolmannessa osassa aiheena on ARM Bicep ja Microsoftin tarjoamat valmiit AVM – Azure Verified Modules. AVM moduulit nopeuttavat IaC kehitystä huomattavasti, jos ne sopivat sinun projektiin.
AVM – Azure Verified Modules
Azure Verified Modules (AVM) ovat Microsoftin kehittämiä ja hyväksymiä moduuleja, jotka on suunniteltu käytettäväksi Azure Bicep – ja Terraform-infrastruktuurin koodauskielissä. Nämä moduulit tarjoavat valmiita, testattuja ja luotettavia malleja erilaisten Azure-resurssien, kuten virtuaalikoneiden, verkkopalveluiden ja tietokantojen, luomiseen ja hallintaan. Ne nopeuttavat kehitystyötä suunnattomasti, kun kehitystiimin ei tarvitse luoda ja ylläpitää omiaa Bicep moduuleja.
Hyödyntämällä Azure Verified Modules (AVM) -moduuleja Bicep- tai Terraform-koodissa käyttäjät voivat olla varmoja, että heidän infrastruktuurinsa on rakennettu parhaiden käytäntöjen mukaisesti ja tukee sujuvaa yhteentoimivuutta Azure-palveluiden kanssa. Tämä tekee pilvipalveluiden hallinnasta tehokkaampaa, turvallisempaa ja helpommin ylläpidettävää. Microsoftin virallisesti tukemat moduulit tarjoavat luotettavuuden ja turvallisuuden tason, joka on tärkeä yritysten kriittisten sovellusten ja palveluiden käyttöönotossa Azure-ympäristössä.
AVM Bicep moduulien käyttö
Mircrosoft tarjoaa julkisen Bicep moduuli repositoryn, jonka käyttö on helppoa. Voit ottaa moduulin suoraan käyttöön bicep tiedostossa viittaamalla tähän julkiseen repositoryyn. Alla esimerkki miten luoda Storage Account käyttämällä valmista AVM moduulia.
param storageAccountName string = 'uniquestorageaccountname'
module storageAccount 'br/public:avm/res/storage/storage-account:<version>' = {
name: 'storageAccountDeployment'
params: {
// Required parameters
name: storageAccountName
// Non-required parameters
allowBlobPublicAccess: false
}
}
AVM moduulit nopeuttavat IaC kehitystyötä. Niitä hyödyntämällä sinun ei tarvitse kehittää omia monikäyttöisiä Bicep tai Terraform moduuleita. Saat valmiit moduulit ja voit siirtyä nopeammin kuvaamaan pilviresursseja, joita tarvitse omassa pilviprojektissasi.
Static Web App luominen valmiin AVM modulin avulla
Alla on isompi esimerkki miten AVM moduulilla voi luoda Static Web App resurssin
param storageAccountName string = 'uniquestorageaccountname'
@description('Required. Status of Enterprise Grade CDN. Default is Disabled.')
param enterpriseGradeCdnStatus string = 'Disabled'
module staticSite 'br/public:avm/res/web/static-site:<version>' = {
name: 'staticSiteDeployment'
params: {
// Required parameters
name: storageAccountName
// Non-required parameters
allowConfigFileUpdates: true
appSettings: {
environment: 'development'
}
enterpriseGradeCdnStatus: enterpriseGradeCdnStatus
functionAppSettings: {
environment: 'development'
}
linkedBackend: {
resourceId: '<resourceId>'
}
location: '<location>'
lock: {
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
privateEndpoints: [
{
privateDnsZoneResourceIds: [
'<privateDNSZoneResourceId>'
]
subnetResourceId: '<subnetResourceId>'
tags: {
Environment: 'Non-Prod'
'hidden-title': 'This is visible in the resource name'
Role: 'DeploymentValidation'
}
}
]
sku: 'Standard'
stagingEnvironmentPolicy: 'Enabled'
tags: {
Environment: 'Non-Prod'
'hidden-title': 'This is visible in the resource name'
Role: 'DeploymentValidation'
}
}
}
Lisätietoja AVM moduuleista
Azure Verified Modules [Microsoft Github]
Infrastruktuuri koodina blogisarjan osat
- Mikä on Infrastruktuuri koodina? – osa 1
- Infrastruktuuri koodina, osa 2 – Azure ja ARM Bicep
- Infrastruktuuri koodina, osa 3 – AVM – Azure Verified Modules
Kiinnostaako pilvi-infrastruktuurin automatisointi
Me toteutamme IaC ja Devops automaatiot
Do you need help with Infrastructure as Code development
We build IaC and Devops automation solutions