Vous pourriez vous retrouver à avoir besoin d’une solution bon marché mais efficace pour stocker vos fichiers à un moment donné, mais où trouver cette solution? Jetez un œil au stockage Binary Large Object (blob) de Microsoft Azure! Le stockage blob est l’un des services de stockage Azure qui vous permet de stocker de grandes quantités de fichiers de données texte et binaires, du contenu en streaming, ou même du contenu statique pour la distribution.
Dans ce tutoriel, vous apprendrez à travailler avec le stockage blob dans Azure en suivant quelques exemples courants.
Continuez à lire pour vous plonger dedans!
Prérequis
Ce tutoriel sera une démonstration pratique. Si vous souhaitez suivre, assurez-vous d’avoir les éléments suivants installés et disponibles.
- PowerShell 7 installé.
- Module Az PowerShell installé dans votre environnement PowerShell 7.
- Exécutable AzCopy téléchargé et accessible.
- Abonnement Azure – Il existe plusieurs façons d’utiliser des ressources Azure spécifiques à peu ou pas de frais.
Construction d’un environnement Azure
Avant d’utiliser le stockage blob pour stocker vos fichiers, vous devrez d’abord importer les modules PowerShell Core, vous connecter à votre abonnement Azure et construire un environnement Azure.
1. Lancez PowerShell 7 et exécutez la commande suivante pour importer les modules que vous utiliserez pour stocker des fichiers dans le stockage blob.

2. Ensuite, connectez-vous à votre locataire Azure Active Directory (AD), puis exécutez la commande ci-dessous pour effectuer une authentification interactive dans votre navigateur Web, comme indiqué ci-dessous.
Bien que cela dépasse le cadre de ce tutoriel, il existe d’autres méthodes d’authentification, telles qu’un Service Principal ou l’utilisation d’un jeton d’accès.

Assurez-vous toujours que le locataire et l’abonnement affichés après la connexion sont ceux que vous avez l’intention d’utiliser. Si nécessaire, vous pouvez changer votre contexte.
3. Exécutez maintenant la commande ci-dessous pour créer un nouveau groupe de ressources appelé demo
, et y ajouter cinq chiffres aléatoires (Get-Random -Maximum 99999
). Les groupes de ressources sont hiérarchiquement inférieurs aux abonnements et contiennent des ressources permettant une gestion plus granulaire.
Remarquez que le -Emplacement
du groupe de ressources est défini sur Central US
pour cet exemple. Lorsque la commande est terminée, elle stocke le résultat dans la variable $resourceGroup
.

4. Exécutez la commande ci-dessous pour effectuer les tâches suivantes et créer un nouveau compte de stockage Azure. Pour cet exemple, le compte de stockage est nommé storage et suivi de cinq nombres aléatoires (Get-Random -Maximum 99999
). La variable $storageAccount
contiendra l’objet retourné après l’exécution de la commande.

5. Exécutez la commande ci-dessous pour exécuter quelques tâches pour l’assignation du Rôle Azure AD :
- La valeur
-SignInName
utilise le compte sur lequel vous êtes actuellement connecté via la propriétéUserID
retournée par la cmdletGet-AzAccessToken
. - La valeur de
-RoleDefinitionName
est le rôle intégré Contributeur de données Blob de stockage que vous attribuez. - La valeur
-Scope
définit la portée de l’attribution de rôle pour le compte de stockage que vous avez créé (stockage10029 illustré ci-dessous) via la propriétéId
de la variable$storageAccount
.
Vous pouvez toujours fournir des attributions de rôle plus granulaires aux conteneurs individuels si nécessaire.

6. Enfin, exécutez la série de commandes ci-dessous pour créer un fichier appelé temp.dat sur votre système local. Vous téléchargerez et téléchargerez ce fichier depuis le compte de stockage dans les sections suivantes pour démontrer le fonctionnement du stockage de blobs.

Téléchargement de fichiers via PowerShell
Maintenant que vous avez créé un environnement Azure et créé un fichier exemple, commençons par télécharger le fichier dans le stockage de blob. Le stockage de blob fonctionne différemment des systèmes de fichiers standard. Chaque fichier dans le stockage de blob est un objet et est conservé dans des conteneurs.
Les fonctionnalités principales des blobs sont similaires à celles des autres systèmes de fichiers, mais il existe des cas d’utilisation où l’un ou l’autre pourrait être une meilleure solution. Les blobs peuvent même sauvegarder des systèmes de fichiers virtuels (par exemple, BlobFuse).
Microsoft offre plusieurs méthodes pour télécharger des fichiers dans vos comptes de stockage via PowerShell, AzCopy et Azure Portal. Mais commençons par télécharger le fichier exemple (temp.dat) dans le stockage de blob via PowerShell. PowerShell vous offre une expérience cohérente pour travailler avec vos comptes de stockage Azure.
Les actions requises pour effectuer cette démonstration entraîneront des coûts. Surveillez votre consommation et supprimez les ressources lorsque vous n’avez plus l’intention de les utiliser.
Exécutez les commandes ci-dessous pour créer un nouveau conteneur et télécharger le fichier temp.dat ($file
) en tant qu’objet. Le conteneur est nommé demo pour cet exemple, mais vous pouvez le nommer différemment selon vos préférences.

Téléchargement de fichiers via AzCopy
Peut-être avez-vous des cas d’utilisation plus complexes, tels que la synchronisation de contenu ou la copie de contenu entre différents comptes à grande échelle. Si c’est le cas, l’outil en ligne de commande AzCopy est ce dont vous avez besoin.
Exécutez les commandes ci-dessous pour vous connecter à votre locataire Azure et copiez votre fichier local ($file
) vers l’URL de votre conteneur. Vous vous connectez au locataire Azure car AzCopy n’est pas conscient des informations d’identification que vous utilisez avec PowerShell.

Au lieu de téléverser, peut-être souhaitez-vous télécharger des fichiers via AzCopy. Si c’est le cas, exécutez la commande ci-dessous pour
copier
les fichiers spécifiés (temp.dat
) depuis votre conteneur vers le répertoire local actuel:& .\azopy.exe copy "$($container.CloudBlobContainer.Uri.AbsoluteUri)/temp.dat" .\temp.dat
Téléchargement de Fichiers via le Portail Azure
Si vous préférez une méthode graphique pour téléverser vos fichiers, alors Azure Storage Explorer est votre allié. Azure Storage Explorer est l’une des meilleures méthodes graphiques pour gérer votre stockage de blobs. Vous pouvez accéder à l’explorateur de stockage depuis la ressource de votre compte de stockage dans le portail Azure.
1. Ouvrez votre navigateur Web préféré et accédez à votre explorateur de stockage dans le portail Azure.
2. Cliquez sur le conteneur demo sous CONTENEURS DE BLOBS, comme indiqué ci-dessous, puis cliquez sur Téléverser pour accéder au volet Téléverser le blob (panneau de droite).
3. Cliquez maintenant sur l’icône de dossier dans le panneau Téléverser le blob pour sélectionner les fichiers à téléverser (temp.dat).
4. Enfin, cliquez sur Upload (bouton bleu) pour télécharger votre fichier.

Une fois le téléchargement terminé, vous pouvez fermer la lame Upload blob et voir votre blob téléchargé, comme sur l’image ci-dessous.

Téléchargement de fichiers via le portail Azure
De manière similaire au téléchargement de contenu dans le stockage de blob, Azure prend en charge le téléchargement de contenu de nombreuses manières. Mais comme vous venez de télécharger un fichier (temp.dat) via le portail Azure, téléchargeons le même fichier en utilisant Azure Storage Explorer dans le portail Azure.
Sélectionnez le fichier (temp.dat) à télécharger et cliquez sur le bouton Download dans Azure Storage Explorer, comme indiqué ci-dessous. Cela ouvre une nouvelle boîte de dialogue pour confirmer le téléchargement que vous verrez à l’étape suivante.

Maintenant, cliquez sur le bouton Click here to begin download pour télécharger les fichiers que vous avez sélectionnés.

Téléchargement de fichiers via PowerShell
Tout comme pour le téléchargement de fichiers, vous avez également la possibilité de télécharger des fichiers depuis le stockage de blob en exécutant des commandes dans PowerShell. Avec PowerShell, vous pouvez répertorier les objets dans un conteneur, puis les télécharger.
Exécutez les commandes ci-dessous pour répertorier tous les objets dans votre conteneur et télécharger temp.dat dans votre répertoire local.

Si vous préférez utiliser des liens uniques à durée de vie courte pour télécharger des fichiers, vous pouvez utiliser des jetons d’accès partagé (SAS) pour créer un lien de téléchargement préautorisé. Ces jetons sont des jetons d’authentification uniques et privés que vous pouvez utiliser pour vérifier votre accès.
Exécutez les commandes ci-dessous pour créer un nouveau lien de téléchargement pour le fichier (temp.dat
) que vous souhaitez télécharger. Le lien de téléchargement généré expire après 10 secondes et télécharge (Invoke-WebRequest $uri
) le contenu en utilisant ce lien dans la variable $temp
.

Héberger une page Web sur Internet public à partir du stockage de blob
Jusqu’à présent, vous avez vu des cas d’utilisation de téléchargement de fichiers par des utilisateurs authentifiés. Mais saviez-vous que le stockage de blob peut également offrir une excellente option pour le contenu public ? Un exemple est l’utilisation d’un blob pour héberger le contenu de votre page Web, ce que vous allez réaliser dans cette démonstration.
Même si le contenu de votre page Web est chiffré en transit et au repos, n’importe qui peut accéder à ce contenu si l’accès public est autorisé.
Depuis que vous configurez un cas d’utilisation différent, vous utiliserez l’un des principaux avantages du cloud public en termes d’échelle et d’élasticité. Vous pouvez provisionner un nouveau compte de stockage pour un cas d’utilisation spécifique et limiter le risque d’utilisation de conteneurs publics.
1. Exécutez la commande ci-dessous pour créer un nouveau compte de stockage comme vous l’avez fait à l’étape quatre de la section « Construction d’un environnement Azure ». Mais cette fois, vous passerez l’objet retourné à la variable $publicStorageAccount
.

Vous disposez maintenant d’un compte de stockage dédié pour votre contenu public, et vous pouvez le configurer pour héberger du contenu web statique avec la commande suivante.
2. Ensuite, exécutez la cmdlet Enable-AzStorageStaticWebsite
pour configurer le compte de stockage ($publicStorageAccount
) pour votre nouveau cas d’utilisation. L’option -IndexDocument
définit la page web par défaut que vous souhaitez présenter aux utilisateurs. Le -Contexte
sera le nouveau compte de stockage que vous venez de créer.

3. Exécutez les commandes ci-dessous pour créer un nouveau document HTML dans votre répertoire actuel et téléchargez ce document dans le conteneur spécifiquement pour héberger du contenu web. Le type de contenu est défini sur HTML (ContentType="text/html"
), afin que les navigateurs web puissent interpréter correctement le document.
Accéder au document sur un navigateur web affiche le message Hello from <nom du compte de stockage>.

4. Exécutez maintenant la commande suivante pour obtenir l’URL à laquelle les utilisateurs peuvent accéder à votre contenu.

5. Enfin, ouvrez l’URL dans votre navigateur, vous verrez quelque chose de similaire à la capture d’écran suivante.

Nettoyage des ressources
Maintenant que vous avez testé ces nouveaux concepts d’utilisation du stockage de blobs, vous voudrez nettoyer vos ressources. Pourquoi ? Cela vous aide à maintenir votre abonnement propre. Plus important encore, vous arrêtez d’accumuler des frais supplémentaires.
Étant donné que toutes les ressources que vous avez utilisées dans ce tutoriel se trouvent dans un seul groupe de ressources, vous pouvez nettoyer toutes les ressources en supprimant le groupe de ressources.
Les ressources ne seront pas toujours contenues dans un seul groupe de ressources, ce qui illustre pourquoi une utilisation libérale de la segmentation logique peut être bénéfique, surtout lors de tests fréquents ou d’itérations.
Exécutez la cmdlet Remove-AzResourceGroup
ci-dessous, en spécifiant la propriété ResourceGroupName
de la variable $resourceGroup
pour supprimer le groupe de ressources et toutes les ressources à l’intérieur.

Conclusion
Dans ce tutoriel, vous avez abordé le téléchargement et le téléversement de fichiers vers et depuis des blobs dans le stockage cloud sur différentes plateformes. Vous avez également appris qu’il est possible d’héberger une page web à partir du stockage de blobs à laquelle les utilisateurs peuvent accéder publiquement.
Vous pouvez faire beaucoup plus avec le stockage de blob et d’autres types de stockage, donc comment pourriez-vous développer ces concepts ? Peut-être travailler avec des comptes de stockage de fichiers, fournir des systèmes de fichiers sans serveur, ou utiliser des blocs de pages pour les disques durs virtuels avec les machines virtuelles Azure ?