Moduleregisters begrijpen
In deze les leert u wat Bicep-registers zijn en waarom ze nuttig zijn voor het delen van uw Bicep-code. U leert ook hoe u een register maakt voor uw eigen organisatie.
Waarom deelt u Bicep-modules?
Wanneer u met Bicep werkt, gebruikt u vaak vergelijkbare resources herhaaldelijk. Het is ook gebruikelijk om combinaties te maken van resources die u op meerdere locaties implementeert. Bicep-modules bieden een handige manier om herbruikbare Bicep-bestanden te maken. Elke module definieert doorgaans een set resources met een vooraf gedefinieerde configuratie.
Een van de voordelen van het gebruik van modules is dat u ze met anderen kunt delen en u kunt profiteren van de modules die anderen met u delen. U kunt bijvoorbeeld tijd investeren in het bouwen en testen van een Bicep-bestand om een set resources te implementeren die u vaak samen gebruikt. Wanneer u uw bestand deelt als bicep-module, kunnen uw collega's de module gebruiken om snel dezelfde resources te implementeren.
Een Bicep-register is de plaats waar modules worden opgeslagen en gedeeld. Iedereen kan een eigen register maken. In de toekomst is Microsoft van plan meer typen Bicep-inhoud te publiceren naar registers, naast modules.
Tip
Microsoft onderhoudt een openbaar Bicep-moduleregister. Het openbare register bevat modules die iedereen in de community kan gebruiken. In de loop van de tijd bevat het openbare register modules om enkele veelvoorkomende scenario's in Bicep te bereiken.
Deze Learn-module is gericht op het delen van uw eigen modules met behulp van privéregisters. De samenvattingseenheid bevat een koppeling naar meer informatie over het openbare register.
Hoe worden registers vergeleken met sjabloonspecificaties?
U kunt een Azure Resource Manager-sjabloon (ARM-sjabloon) opslaan als sjabloonspecificatie. Een sjabloonspecificatie is een manier om uw sjablonen herbruikbaar te maken en te delen via uw organisatie.
Modules die zijn opgeslagen in Bicep-registers en sjabloonspecificaties, zijn beide manieren om herbruikbaarheid toe te voegen aan uw implementatiecode. Maar ze zijn geoptimaliseerd voor verschillende dingen:
- Bicep-modules zijn bedoeld om te worden gecombineerd tot een grotere implementatie. Sjabloonspecificaties zijn ontworpen om te worden geïmplementeerd als een volledige sjabloon. U kunt sjabloonspecificaties implementeren met behulp van Azure Portal, samen met hulpprogramma's zoals de Azure CLI en Azure PowerShell. Maar als u een sjabloonspecificatie hebt gemaakt, kunt u deze desgewenst ook gebruiken als module.
- Sjabloonspecificaties worden als resources opgeslagen in Azure. Modules in registers worden opgeslagen als containerartefacten.
- Sjabloonspecificaties bieden mogelijkheden voor toegangsbeheer. Wanneer u met een privéregister werkt, moet u de toegang tot uw modules op andere manieren beheren. In een latere les vindt u meer informatie over toegangsbeheer.
Wanneer u besluit tussen sjabloonspecificaties en Bicep-modules, is een goede vuistregel: als de sjabloon wordt geïmplementeerd zoals in uw organisatie, zijn sjabloonspecificaties waarschijnlijk geschikt. Maar als u deze sjabloon waarschijnlijk opnieuw wilt gebruiken binnen meerdere bovenliggende sjablonen, kunnen Bicep-modules uw behoeften verbeteren. Een register is een goede manier om modules te delen.
Privéregisters
Bicep-registers zijn gebaseerd op een technologie die containerregisters wordt genoemd.
Als uw organisatie Gebruikmaakt van Kubernetes of een andere containerisatietechnologie, bent u mogelijk al bekend met registers. U hoeft echter geen containers of Kubernetes te gebruiken om met Bicep te werken. Registers bieden een algemene en handige manier om artefacten op te slaan en te delen. U kunt ze beschouwen als vergelijkbaar met opslagaccounts.
Bicep ondersteunt momenteel Azure Container Registry. In de toekomst is Microsoft van plan andere registers te ondersteunen, zoals Docker Hub.
Azure Container Registry biedt meerdere servicelagen, met verschillende mogelijkheden en limieten. Wanneer u uw eigen register inricht, moet u de laag selecteren die aan uw vereisten voldoet. Er zijn koppelingen naar meer informatie in de samenvattingseenheid.
Binnenkort leert u hoe u modules publiceert in een register.
Tip
In Azure Container Registry wordt een module een opslagplaats genoemd. Verwar dit niet met een Git-opslagplaats. De termen zijn hetzelfde, maar de betekenis is anders.
Toegangsbeheer
Omdat Azure Container Registry een privéregister biedt voor uw organisatie, kunt u bepalen wie er toegang heeft. Azure Container Registry biedt verschillende opties voor het beheren van toegang, waaronder Microsoft Entra-id en sleutels die u aan afzonderlijke gebruikers geeft.
Wanneer u met Bicep werkt, is de eenvoudigste methode om Microsoft Entra-verificatie te gebruiken. Bicep detecteert automatisch de Microsoft Entra-identiteit die u gebruikt in de Azure CLI of Azure PowerShell, zodat u zich niet opnieuw hoeft aan te melden. In de volgende oefening ziet u hoe verificatie werkt. Wanneer u een Bicep-moduleregister van een pijplijn gebruikt, gebruikt u een speciaal type identiteit dat een service-principal wordt genoemd.
U kunt afzonderlijk bepalen wie gemachtigd is om modules naar uw register te schrijven en wie gemachtigd is om modules te lezen.