Créer un travail Batch à l’aide du portail Azure
Azure Batch exécute des applications à grande échelle dans le cloud avec efficacité. Vous pouvez planifier des tâches exigeantes en ressources de calcul et ajuster dynamiquement les ressources de votre solution sans gérer l’infrastructure. Azure Batch peut créer et gérer un pool de nœuds de calcul (machines virtuelles), installer l’application que vous souhaitez exécuter et planifier les travaux à exécuter sur les nœuds de calcul.
Vous pouvez utiliser Azure Batch pour générer une application SaaS ou une application cliente où vous avez besoin d’une exécution à grande échelle. Par exemple, vous pouvez utiliser Batch pour créer un service exécutant une simulation Monte Carlo pour une société de services financiers, ou un service pour traiter de nombreuses images.
Fonctionnement d’Azure Batch
Comme le montre le diagramme ci-dessous, un scénario Azure Batch classique du monde réel nécessite des fichiers de données et d’application. Le workflow Batch commence par charger les fichiers de données et d’application sur un compte Stockage Azure. En fonction de la demande, vous créez un pool Batch avec autant de nœuds de calcul virtuels Windows ou Linux que nécessaire. Si la demande augmente, les nœuds de calcul peuvent être mis à l’échelle automatiquement.
Vous pouvez diviser le diagramme en deux parties :
- Votre service
- Batch en tant que plateforme de calcul en arrière-plan
Votre service utilise Azure comme plateforme pour effectuer des tâches de calcul intensives via Batch et récupérer les résultats via le Stockage Azure. En arrière-plan, les pools sont des regroupements de machines virtuelles. Les pools sont les ressources sur lesquelles les travaux et les tâches sont exécutés.
Batch utilise le Stockage Azure pour extraire les applications ou les données nécessaires pour effectuer une tâche sur une machine virtuelle et écrire la sortie de la tâche. Votre service peut superviser la progression des travaux et des tâches par le biais des API Batch. Votre service peut ensuite récupérer les résultats à partir du Stockage Azure une fois les travaux et les tâches terminés.
Création d’un pool Azure Batch dans un réseau virtuel
Pour exécuter un travail Batch, vous devez ajouter un pool à votre compte Batch. Un pool contient des nœuds de calcul qui sont requis pour exécuter votre travail Batch. Les nœuds de calcul sont des machines virtuelles qui traitent les tâches qui composent un travail. Lorsque vous créez un pool, vous pouvez spécifier le nombre, la taille et le système d’exploitation des nœuds en fonction de la demande.
Le service Batch doit communiquer avec un agent de nœud Batch qui s’exécute sur chaque nœud du pool. Par exemple, le service demande à l’agent de nœud d’exécuter une tâche, d’arrêter une tâche ou d’obtenir les fichiers d’une tâche. Un ou plusieurs équilibreurs de charge autorisent la communication avec l’agent de nœud du pool. Le nombre d’équilibreurs de charge dépend du nombre de nœuds dans un pool.
Un équilibreur de charge transmet la communication au nœud de pool souhaité. Chaque nœud a un numéro de port unique. Par défaut, les équilibreurs de charge ont des adresses IP publiques qui leur sont associées.
Il est également possible d’accéder à distance à des nœuds de pool via le protocole RDP (Remote Desktop Protocol) ou SSH, qui sont activés par défaut. Là encore, la communication s’effectue via les points de terminaison de l’équilibreur de charge.
Quand vous créez un pool Azure Batch, vous pouvez provisionner le pool dans un sous-réseau d’un réseau virtuel Azure spécifié. Les nœuds de calcul d’un pool peuvent communiquer entre eux afin d’exécuter des tâches multi-instances sans nécessiter de réseau virtuel distinct. Par défaut, les points de terminaison avec des adresses IP publiques sont utilisés pour communiquer avec les comptes Batch, les pools Batch et les nœuds de pool.
Réseaux virtuels Azure et sous-réseaux
Un réseau virtuel est le bloc de construction fondamental de votre réseau privé dans Azure. Les réseaux virtuels permettent à un grand nombre de ressources Azure, comme des machines virtuelles, de communiquer en toute sécurité entre elles, avec Internet et avec les réseaux locaux.
Si un réseau virtuel est comparable à un réseau traditionnel que vous utiliseriez dans votre propre centre de données, il offre des avantages supplémentaires en matière d’infrastructure Azure, tels que la mise à l’échelle, la disponibilité et l’isolation.
Les principaux scénarios que vous pouvez exécuter avec un réseau virtuel incluent :
- Communication entre les ressources Azure et Internet
- La communication entre des ressources Azure
- La communication avec des ressources locales
- Filtrage du trafic réseau
- Routage du trafic réseau
- Intégration aux services Azure
Un sous-réseau est une plage d’adresses IP dans votre réseau virtuel. Vous pouvez diviser un réseau virtuel en plusieurs sous-réseaux pour plus de sécurité et une meilleure organisation. Lorsque vous configurez un réseau virtuel, vous spécifiez la topologie, y compris les sous-réseaux et les espaces d’adressage disponibles. Si vous prévoyez de connecter le réseau virtuel à d’autres réseaux virtuels ou réseaux locaux, vous devez sélectionner des plages d’adresses qui ne se chevauchent pas.
Il n’existe aucune limite de sécurité entre les sous-réseaux. Par conséquent, les machines virtuelles de chaque sous-réseau peuvent communiquer entre elles, mais vous pouvez configurer des groupes de sécurité réseau qui vous permettent de contrôler le flux de trafic vers et depuis des sous-réseaux et des machines virtuelles.