Microsoft HPC Pack

Microsoft HPC Pack est une solution HPC gratuite basée sur Microsoft Azure avec des technologies Windows Server et prend en charge un large éventail de charges de travail HPC. Cette page décrit les fonctionnalités et les détails de configuration pour l’intégration de HPC Pack à Cyclecloud.

Limitations et versions prises en charge

Microsoft HPC Pack 2016 (avec Update 3) et Microsoft HPC Pack 2019 sont pris en charge dans CycleCloud avec les limitations ci-dessous :

  • Le cluster doit être créé dans un domaine Active Directory.
  • Le cluster ne peut contenir qu’un seul nœud principal.
  • La haute disponibilité sur le nœud principal n’est pas encore prise en charge.
  • La personnalisation de l’image de machine virtuelle principale n’est pas prise en charge.
  • Les nœuds de calcul Linux ne sont pas encore pris en charge.
  • Le nœud principal nécessite un accès Internet sortant pour télécharger le fichier binaire Nuget et Python3.
  • La configuration CLI et cloud-init n’est pas encore prise en charge.

Prérequis

Domaine Active Directory

Actuellement, tous les nœuds HPC Pack doivent être joints à un domaine Active Directory. Si vous déployez le cluster HPC Pack dans un réseau virtuel qui dispose d’une connexion VPN de site à site ou ExpressRoute avec votre réseau d’entreprise, il existe généralement un domaine Active Directory existant. Si vous n’avez pas encore de domaine AD dans votre réseau virtuel, vous pouvez choisir de créer un domaine AD en favorisant le nœud principal en tant que contrôleur de domaine.

Azure Key Vault

Microsoft HPC Pack nécessite un certificat PFX pour sécuriser la communication de nœud, et nécessite également des informations d’identification utilisateur de domaine AD pour joindre les nœuds au domaine AD. Bien que vous puissiez spécifier directement un fichier PFX, un mot de passe de protection et un mot de passe utilisateur dans le modèle, nous vous recommandons vivement d’utiliser Azure Key Vault pour la gestion sécurisée du certificat et du mot de passe utilisateur. Reportez-vous à créer un certificat Azure Key Vault.

Le cluster requiert également le nom d’utilisateur et le mot de passe d’un compte d’administrateur AD pour joindre des nœuds au domaine à mesure qu’ils sont créés. Nous vous recommandons vivement d’utiliser Azure Key Vault.

Identité managée affectée par l’utilisateur Azure

Pour utiliser Azure Key Vault pour le certificat et les informations d’identification, vous devez créer une identité managée affectée par l’utilisateur Azure et accorder l’autorisation Get pour secret et le certificat du Key Vault Azure.

Vous pouvez vous référer à ce didacticiel Key Vault pour créer votre Key Vault et une identité managée avec un accès Key Vault.

Nous vous recommandons d’utiliser Azure Role-Based Access Control pour attribuer des autorisations Key Vault à l’identité managée.

Rôles de nœud HPC Pack

Il existe trois rôles de nœud différents dans le cluster HPC Pack :

  • Nœud principal : fournit les services de gestion et de planification des travaux de cluster. Actuellement, seul un seul nœud principal avec des bases de données locales est pris en charge.
  • Nœud Broker : reçoit les demandes d’un client SOA, les distribue aux hôtes de service sur les nœuds de calcul, puis collecte les réponses et les renvoie au client. Les nœuds broker seront créés dans le tableau de nœuds broker . Vous devez créer des nœuds broker si vous souhaitez exécuter une charge de travail SOA dans le cluster.
  • Nœud de calcul : accepte et exécute des travaux de cluster. Les nœuds de calcul seront créés dans le tableau de nœuds cn .

Créer un cluster HPC Pack

Vous pouvez cliquer sur l’icône Microsoft HPC Pack sous Schedulers pour créer un cluster Microsoft HPC Pack.

Dans la page À propos , spécifiez un nom de cluster unique pour le cluster, car il sera utilisé comme nom d’ordinateur NetBIOS du nœud principal, assurez-vous qu’il est unique dans le domaine AD et conforme aux conventions d’affectation de noms.

Paramètres de base

  • Version de HPC Pack : vous pouvez sélectionner HPC Pack 2019 ou HPC Pack 2016 (avec Update 3). Nous vous recommandons d’utiliser la dernière version de HPC Pack, c’est-à-dire HPC Pack 2019.
  • Machines Virtuelles : vous pouvez sélectionner la région Azure dans laquelle vous souhaitez créer le cluster HPC Pack et le type de machine virtuelle pour chaque rôle de nœud de cluster. Vous pouvez également spécifier Num. Broker pour créer un ou plusieurs nœuds Broker si vous souhaitez exécuter des charges de travail SOA dans le cluster.

Mise à l’échelle automatique

Le cluster est démarré sans aucun nœud de calcul. Vous pouvez activer la mise à l’échelle automatique pour augmenter/réduire automatiquement les nœuds de calcul en fonction des charges de travail de cluster, vous pouvez utiliser Max Cores pour spécifier le nombre maximal de cœurs de processeur virtuel de calcul de votre cluster. Le mise à l’échelle automatique s’exécute toutes les minutes en tant que tâche planifiée Windows sur le nœud principal.

Il existe deux options de scale-down pour les nœuds de calcul : Libérer ou arrêter. Si vous choisissez l’option Arrêter , le cluster HPC Pack supprime toujours les machines virtuelles de nœud de calcul sur le scale-down. Si vous choisissez l’option Désallouer , le cluster HPC Pack désaffecte les machines virtuelles de nœud de calcul sur le scale-down et les conserve jusqu’à un nombre configurable de jours (jours de rétention de machine virtuelle). Les nœuds de calcul désaffectés ne seront pas supprimés du cluster HPC Pack tant qu’ils sont toujours conservés. Toutefois, elles seront prises hors connexion et affichées comme inaccessibles dans le cluster HPC Pack. L’option Désallouer est recommandée pour le cluster HPC Pack, car elle peut réduire considérablement le temps de préparation du nœud sur le scale-up, et vous payez uniquement pour le stockage disque des machines virtuelles libérées.

Paramètres de l’infrastructure

  • Réseau virtuel : vous pouvez sélectionner un réseau virtuel et un sous-réseau existants dans lesquels le cluster HPC Pack sera créé.
  • domaine Active Directory : s’il existe déjà un domaine AD dans votre réseau virtuel, spécifiez le nom de domaine complet et le chemin d’accès de l’unité d’organisation dans lequel les nœuds de cluster seront joints. Vous pouvez également sélectionner Nouveau domaine AD pour créer un domaine AD en favorisant le nœud principal en tant que contrôleur de domaine.
  • Secrets et certificat : nous vous recommandons vivement de sélectionner Utiliser KeyVault pour utiliser Azure Key Vault pour transmettre le certificat de communication de nœud et le mot de passe utilisateur. Dans l’identité MSI, sélectionnez Identité affectée par l’utilisateur Azure que vous avez créée dans la liste déroulante, puis spécifiez le nom d’Azure Key Vault créé dans les prérequis.
  • Informations d’identification de l’utilisateur : Dans Nom d’utilisateur, spécifiez le nom d’utilisateur du domaine. Dans le secret de mot de passe, spécifiez le nom de secret Azure Key Vault que vous avez créé dans Prérequis pour stocker le mot de passe de l’utilisateur du domaine.
  • Certificat PFX : Dans le nom du certificat, spécifiez le nom de certificat Azure Key Vault que vous avez créé dans les prérequis.

Paramètres avancés

  • Paramètres Azure : sélectionnez les informations d’identification cloud Azure dans la liste déroulante.
  • Logiciel de cluster : spécifiez le système d’exploitation (OS) pour chaque rôle de nœud de cluster.
  • Mise en réseau avancée : par défaut, les serveurs DNS configurés dans le réseau virtuel sont appliqués à tous les nœuds HPC, vous pouvez éventuellement spécifier le serveur DNS si vous souhaitez utiliser un autre serveur DNS. Vous pouvez également sélectionner éventuellement l’adresse IP publique HN pour affecter une adresse IP publique pour le nœud principal.

azhpcpack CLI

L’interface CLIazhpcpack.ps1 est l’interface principale de tous les comportements de mise à l’échelle automatique (appels de tâches azhpcpack.ps1 autoscaleplanifiés). L’interface CLI est disponible dans C:\cycle\hpcpack-autoscaler\bin)

L’interface CLI peut être utilisée pour diagnostiquer les problèmes de mise à l’échelle automatique ou pour contrôler manuellement la mise à l’échelle du cluster à partir du nœud principal.

Commande Description
mise à l’échelle automatique Processus de mise à l’échelle automatique de bout en bout, notamment la création, la suppression et la jointure de nœuds.
compartiments Imprime les informations de compartiment de mise à l’échelle automatique, comme les limites, etc.
config Écrit la configuration de mise à l’échelle automatique effective, après tout prétraitement, dans stdout
create_nodes Créez un ensemble de nœuds en fonction de diverses contraintes. Version CLI de l’interface nodemanager.
default_output_columns Sortie des colonnes de sortie par défaut d’une commande facultative.
delete_nodes Supprimez le nœud et supprimez le cluster.
initconfig Crée une configuration de mise à l’échelle automatique initiale. Écrit dans stdout.
limites Écrit un ensemble détaillé de limites pour chaque compartiment. La valeur par défaut est json en raison du nombre de champs.
nœuds Nœuds de requête.
refresh_autocomplete Actualise les informations de saisie semi-automatique locale pour les ressources et nœuds spécifiques au cluster.
retry_failed_nodes Réessayez tous les nœuds dans un état d’échec.
validate_constraint Valide ensuite les sorties en tant que contraintes JSON une ou plusieurs contraintes.