Artefactcache - Overzicht

Met de functie Artefactcache kunnen gebruikers containerinstallatiekopieën in een privécontainerregister opslaan. Artefactcache is beschikbaar in de servicelagen Basic, Standard en Premium.

Dit artikel is deel één in een zesdelige reeks zelfstudies. In de zelfstudie wordt het volgende behandeld:

  1. Artefactcache
  2. Artefactcache inschakelen - Azure Portal
  3. Artefactcache met verificatie inschakelen - Azure Portal
  4. Artefactcache inschakelen - Azure CLI
  5. Artefactcache met verificatie inschakelen - Azure CLI
  6. Gids voor probleemoplossing voor artefactcache

Artefactcache

Met ArtefactCache kunt u containerinstallatiekopieën uit openbare en privéopslagplaatsen in de cache opslaan.

Het implementeren van artefactcache biedt de volgende voordelen:

Betrouwbaardere pull-bewerkingen: snellere pulls van containerinstallatiekopieën zijn haalbaar door de containerinstallatiekopieën in de cache op te nemen in ACR. Omdat Microsoft het Azure-netwerk beheert, zijn pull-bewerkingen sneller door ondersteuning voor geo-replicatie en beschikbaarheidszone te bieden aan de klanten.

Privénetwerken: in cache opgeslagen registers zijn beschikbaar op privénetwerken. Daarom kunnen gebruikers hun firewall configureren om te voldoen aan nalevingsstandaarden.

Ervoor zorgen dat upstream-inhoud wordt geleverd: alle registers, met name openbare registers, zoals Docker Hub en anderen, hebben anonieme pull-limieten om ervoor te zorgen dat ze services aan iedereen kunnen leveren. Met artefactcache kunnen gebruikers installatiekopieën ophalen uit de lokale ACR in plaats van het upstream-register. Artefactcache zorgt ervoor dat de inhoud van upstream wordt geleverd en gebruikers profiteren van het ophalen van de containerinstallatiekopieën uit de cache zonder dat ze worden geteld tot de pull-limieten.

Terminologie

  • Cacheregel: een cacheregel is een regel die u kunt maken om artefacten op te halen uit een ondersteunde opslagplaats in uw cache.

    • Een cacheregel bevat vier delen:

      1. Regelnaam: de naam van de cacheregel. Bijvoorbeeld Hello-World-Cache.

      2. Bron: de naam van het bronregister.

      3. Pad naar opslagplaats: het bronpad van de opslagplaats om artefacten te vinden en op te halen die u in de cache wilt opslaan. Bijvoorbeeld docker.io/library/hello-world.

      4. Nieuwe naamruimte voor ACR-opslagplaats: de naam van het pad naar de nieuwe opslagplaats voor het opslaan van artefacten. Bijvoorbeeld hello-world. De opslagplaats kan nog niet bestaan in het ACR-exemplaar.

  • Referenties

    • Referenties zijn een set gebruikersnaam en wachtwoord voor het bronregister. U hebt referenties nodig om te verifiëren bij een openbare of privéopslagplaats. Referenties bevatten vier onderdelen

      1. Referenties: de naam van uw referenties.

      2. Aanmeldingsserver voor bronregister: de aanmeldingsserver van uw bronregister.

      3. Bronverificatie: de sleutelkluislocaties voor het opslaan van referenties.

      4. Geheimen voor gebruikersnaam en wachtwoord: de geheimen die de gebruikersnaam en het wachtwoord bevatten.

Beperkingen

  • Cache vindt alleen plaats nadat ten minste één pull-installatiekopie van de installatiekopie is voltooid op de beschikbare containerinstallatiekopie. Voor elke beschikbare nieuwe installatiekopie moet een nieuwe pull-installatiekopie zijn voltooid. Artefactcache haalt niet automatisch nieuwe tags met afbeeldingen op wanneer er een nieuwe tag beschikbaar is. Het staat op de roadmap, maar wordt niet ondersteund in deze release.

  • ArtefactCache ondersteunt alleen 1000 cacheregels.

Upstream-ondersteuning

Artifact Cache ondersteunt momenteel de volgende upstream-registers:

Upstream-registers Ondersteuning Beschikbaarheid
Docker Hub Ondersteunt zowel geverifieerde pulls als niet-geverifieerde pulls. Azure CLI, Azure Portal
Microsoft-artefactregister Ondersteunt alleen niet-geverifieerde pulls. Azure CLI, Azure Portal
ECR Openbaar Ondersteunt alleen niet-geverifieerde pulls. Azure CLI, Azure Portal
GitHub Container Registry Ondersteunt zowel geverifieerde pulls als niet-geverifieerde pulls. Azure CLI, Azure Portal
Nvidia Ondersteunt zowel geverifieerde pulls als niet-geverifieerde pulls. Azure-CLI
Quay Ondersteunt zowel geverifieerde pulls als niet-geverifieerde pulls. Azure CLI, Azure Portal
registry.k8s.io Ondersteunt zowel geverifieerde pulls als niet-geverifieerde pulls. Azure-CLI
Google Container Registry Ondersteunt zowel geverifieerde pulls als niet-geverifieerde pulls. Azure-CLI

Jokertekens

Jokertekens gebruiken sterretjes (*) om meerdere paden in het containerinstallatiekopieënregister te vinden. Artefactcache ondersteunt momenteel de volgende jokertekens:

Notitie

De cacheregelstoewijzing van doelopslagplaats => bronopslagplaats.

Jokerteken op registerniveau

Met het jokerteken op registerniveau kunt u alle opslagplaatsen uit een upstream-register in de cache opslaan.

Cacheregel Toewijzing Opmerking
contoso.azurecr.io/* => mcr.microsoft.com/* Toewijzing voor alle installatiekopieën onder ACR aan MCR. contoso.azurecr.io/myapp/image1 => mcr.microsoft.com/myapp/image1
contoso.azurecr.io/myapp/image2 => mcr.microsoft.com/myapp/image2

Jokerteken op opslagplaatsniveau

Met het jokerteken op opslagplaatsniveau kunt u alle opslagplaatsen uit een upstream-registertoewijzing opslaan in het voorvoegsel van de opslagplaats.

Cacheregel Toewijzing Opmerking
contoso.azurecr.io/dotnet/* => mcr.microsoft.com/dotnet/* Specifieke opslagplaatsen onder ACR toewijzen aan bijbehorende opslagplaatsen in MCR. contoso.azurecr.io/dotnet/sdk => mcr.microsoft.com/dotnet/sdk
contoso.azurecr.io/dotnet/runtime => mcr.microsoft.com/dotnet/runtime
contoso.azurecr.io/library/dotnet/* => mcr.microsoft.com/dotnet/*
contoso.azurecr.io/library/python/* => docker.io/library/python/*
Specifieke opslagplaatsen onder ACR toewijzen aan opslagplaatsen uit verschillende upstreamregisters. contoso.azurecr.io/library/dotnet/app1 => mcr.microsoft.com/dotnet/app1
contoso.azurecr.io/library/python/app3 => docker.io/library/python/app3

Beperkingen voor cacheregels op basis van jokertekens

Regels voor jokertekens gebruiken sterretjes (*) om meerdere paden in het containerinstallatiekopieënregister te vinden. Deze regels mogen niet overlappen met andere regels voor jokertekenscache. Met andere woorden, als u een cacheregel voor jokertekens voor een bepaald registerpad hebt, kunt u geen andere jokertekenregel toevoegen die hiermee overlapt.

Hier volgen enkele voorbeelden van overlappende regels:

Voorbeeld 1:

Bestaande cacheregel: contoso.azurecr.io/* => mcr.microsoft.com/*
Nieuwe cache die wordt toegevoegd: contoso.azurecr.io/library/* => docker.io/library/*

De toevoeging van de nieuwe cacheregel wordt geblokkeerd omdat het pad contoso.azurecr.io/library/* van de doelopslagplaats overlapt met de bestaande jokertekenregel contoso.azurecr.io/*.

Voorbeeld 2:

Bestaande cacheregel: contoso.azurecr.io/library/* =>mcr.microsoft.com/library/*
Nieuwe cache die wordt toegevoegd: contoso.azurecr.io/library/dotnet/* =>docker.io/library/dotnet/*

De toevoeging van de nieuwe cacheregel wordt geblokkeerd omdat het pad contoso.azurecr.io/library/dotnet/* van de doelopslagplaats overlapt met de bestaande jokertekenregel contoso.azurecr.io/library/*.

Beperkingen voor statische/vaste cacheregels

Statische of vaste cacheregels zijn specifieker en gebruiken geen jokertekens. Ze kunnen overlappen met cacheregels op basis van jokertekens. Als een cacheregel een vast pad naar de opslagplaats opgeeft, mag deze overlappen met een cacheregel op basis van jokertekens.

Voorbeeld 1:

Bestaande cacheregel: contoso.azurecr.io/* =>mcr.microsoft.com/*
Nieuwe cache die wordt toegevoegd: contoso.azurecr.io/library/dotnet =>docker.io/library/dotnet

Het toevoegen van de nieuwe cacheregel is toegestaan omdat contoso.azurecr.io/library/dotnet dit een statisch pad is en kan overlappen met de regel voor jokertekens contoso.azurecr.io/*.

Volgende stappen

  • Ga naar het volgende artikel om Artefactcache in te schakelen met behulp van Azure Portal: Artefactcache inschakelen.