Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
La ressource de magasin d’artefacts Azure Operator Service Manager (AOSM) gère les artefacts requis pour déployer des fonctions réseau (NFs). Ces artefacts incluent des images de fonction réseau conteneurisée (CNF), des images de fonction réseau virtualisée (VNF), des modèles Azure Resource Manager (ARM) et des packages Helm. Il existe deux saveurs de magasin d’artefacts :
- Azure Container Registry (ACR) : utilisé pour fournir un stockage pour les CNFs sur toutes les plateformes et les VNFs sur Azure Operator Nexus
- Compte de stockage - Utilisé pour fournir un stockage pour les machines virtuelles sur Azure Core
L’extension Azure CLI AOSM fournit une commande pour envoyer tous les artefacts nécessaires à une CNF ou VNF sur Azure Operator Nexus. Il existe certains cas d’usage où vous devrez peut-être pousser des artifacts vers un magasin d’artefacts ou les en retirer individuellement.
- Vous avez peut-être fourni l’image conteneur incorrecte et vous devez envoyer (push) une seule image de remplacement
- Vous devrez peut-être envoyer une nouvelle version d’un seul conteneur pour corriger un problème.
- Vous devrez peut-être modifier le modèle ARM NF dans le cadre d’un cycle de débogage
- Vous devrez peut-être modifier des packages Helm ou un modèle ARM de machine virtuelle dans le cadre d’un cycle de débogage
Cet article How-To explique comment envoyer des artefacts vers et depuis un réservoir d’artefacts soutenu par ACR en utilisant la ressource de manifeste d’artefact AOSM et l’outil en ligne de commande ORAS. Consultez ce guide pour l'article équivalent pour les magasins d’artefacts soutenus par le compte de stockage.
Conditions préalables
- Activer AOSM sur votre abonnement Azure
- Installer Azure CLI
- Déployer une ressource Artifact Store de type Azure Container Registry
- Déployez une ressource de manifeste Artifact qui contient une entrée pour l’artefact que vous souhaitez installer. Cet exemple montre la définition du manifeste d’artefact Bicep pour une image fictive de conteneur CNF de Contoso
resource acrArtifactManifest 'Microsoft.Hybridnetwork/publishers/artifactStores/artifactManifests@2023-09-01' = {
parent: 'contoso-cnf-store'
name: 'contoso-cnf-manifest'
location: 'eastus'
properties: {
artifacts: [
{
artifactName: 'contoso-cnf-container'
artifactType: 'OCIArtifact'
artifactVersion: '0.1.0'
}
]
}
}
- (Si vous téléchargez un artefact) L’artefact est déjà disponible dans la ressource de magasin d’artefacts AOSM
- (Si vous chargez un artefact) L’artefact est disponible dans l’environnement à partir duquel vous exécutez les commandes de cet article
- Installer ORAS CLI
- Vous avez besoin du rôle Contributeur sur le groupe de ressources qui contient votre magasin d’artefacts
Se connecter à un magasin d’artefacts pris en charge par ACR
Obtenir des autorisations délimitées au référentiel à partir de la ressource de manifeste d’artefact
az rest --method POST --url 'https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.HybridNetwork/publishers/<publisher>/artifactStores/<artifact-store-name>/artifactManifests/<artifact-manifest-name>/listCredential?api-version=2023-09-01'
Cette commande retourne le nom d’utilisateur et le mot de passe que vous utiliserez pour vous connecter à l’ACR qui sauvegarde le magasin d’artefacts. Le mot de passe se trouve dans le
token
champ.{ "acrServerUrl": "https://<acr-name>.azurecr.io", "acrToken": "<token>", "credentialType": "AzureContainerRegistryScopedToken", "expiry": "2024-03-27T10:25:03.9217887+00:00", "repositories": [ "<artifact-name>" ], "username": "<artifact-manifest-name>" }
Important
La ressource de manifeste d’artefact accorde des autorisations étroitement étendues pour les opérations d’envoi (push) et de tirage (pull). Vous devez utiliser un manifeste d’artefact qui contient une entrée pour l’artefact que vous souhaitez envoyer (push) ou extraire ( pull). Doit
artifactName
correspondre au nom de l’artefact dans le référentiel. DoitartifactVersion
correspondre à la balise d’artefactRecherchez le nom de l’ACR qui sauvegarde la ressource de magasin d’artefacts en ouvrant la navigation vers le magasin d’artefacts et en copiant le champ
Backing storage
Connectez-vous à l’ACR à l’aide de l’interface CLI ORAS
oras login <acr-name>.azurecr.io --username <artifact-manifest-name> --password <token>
Envoyer (push) un artefact vers un magasin d’artefacts soutenu par l’ACR
- Utilisez ORAS pour charger l’artefact dans l’ACR. Le
<artifact-name>
doit correspondre à la propriétéartifactName
dans le manifeste d’artefact. Le<artifact-tag>
doit correspondre à la propriétéartifactVersion
dans le manifeste d’artefact. Le<artifact-tag>
doit être dans le1.0.0
format
oras push <acr-name>.azurecr.io/<artifact-name>:<artifact-tag> </path/to/artifact>
Tirer (pull) un artefact d’un magasin d’artefacts soutenu par l’ACR
- Utilisez ORAS pour extraire l’artefact de l’ACR.
oras pull <acr-name>.azurecr.io/<artifact-name>:<artifact-tag>
Étapes suivantes
- Pour obtenir des instructions d’utilisation plus détaillées sur l’utilisation de la commande
oras push
- Consultez Tirer (pull) ORAS pour obtenir des instructions d’utilisation plus détaillées pour la commande
oras pull