Ausführen von CFD-Simulationen

Azure
Batch
CycleCloud
Storage
Dynamics
GitHub
Windows

Simulationen numerischer Strömungsmechaniken (Computational Fluid Dynamics, CFD) erfordern erhebliche Computezeit und spezielle Hardware.Computational Fluid Dynamics (CFD) simulations require significant compute time along with specialized hardware. Mit zunehmender Clusterverwendung nehmen auch der Zeitaufwand für Simulationen und die Nutzung von Rastern insgesamt zu, was wiederum zu Problemen mit der begrenzten Kapazität und langen Warteschlangenzeiten führt.As cluster usage increases, simulation times and overall grid use grow, leading to issues with spare capacity and long queue times. Das Hinzufügen von physischer Hardware kann kostspielig und nicht für die schwankende Nutzung mit variierenden Spitzen- und Tiefstwerten geeignet sein, die bei Unternehmen üblich ist.Adding physical hardware can be expensive, and may not align to the usage peaks and valleys that a business goes through. Mit Azure können viele dieser Herausforderungen ohne jeglichen Investitionsaufwand gemeistert werden.By taking advantage of Azure, many of these challenges can be overcome with no capital expenditure.

Azure bietet die Hardware, die Sie zum Ausführen Ihrer CFD-Aufträge auf GPU- und CPU-VMs benötigen.Azure provides the hardware you need to run your CFD jobs on both GPU and CPU virtual machines. VM-Größen, die den Remotezugriff auf den direkten Speicher (Remote Direct Memory Access, RDMA) unterstützen, verfügen über FDR InfiniBand-basierte Netzwerke, die eine MPI-Kommunikation (Message Passing Interface) mit geringer Wartezeit ermöglichen.RDMA (Remote Direct Memory Access) enabled VM sizes have FDR InfiniBand-based networking which allows for low latency MPI (Message Passing Interface) communication. In Kombination mit Avere vFXT, einem gruppierten Dateisystem für Unternehmen, können Kunden einen maximalen Durchsatz für Lesevorgänge in Azure sicherstellen.Combined with the Avere vFXT, which provides an enterprise-scale clustered file system, customers can ensure maximum throughput for read operations in Azure.

Um die Erstellung, Verwaltung und Optimierung von HPC-Clustern (High Performance Computing) zu vereinfachen, kann Azure CycleCloud zum Bereitstellen von Clustern und Orchestrieren von Daten in Hybrid- und Cloudszenarien verwendet werden.To simplify the creation, management, and optimization of HPC clusters, Azure CycleCloud can be used to provision clusters and orchestrate data in both hybrid and cloud scenarios. CycleCloud überwacht ausstehende Aufträge und startet automatisch bedarfsbasierte Computeressourcen mit nutzungsabhängiger Bezahlung, die mit dem Workloadplaner Ihrer Wahl verbunden sind.By monitoring the pending jobs, CycleCloud will automatically launch on-demand compute, where you only pay for what you use, connected to the workload scheduler of your choice.

Relevante AnwendungsfälleRelevant use cases

Weitere relevante Branchen für CFD-Anwendungen sind:Other relevant industries for CFD applications include:

  • Luft- und RaumfahrtAeronautics
  • AutomobilbauAutomotive
  • Heizungs-, Lüftungs- und KlimaanlagenBuilding HVAC
  • Öl- und GasanlagenOil and gas
  • BiowissenschaftenLife sciences

AufbauArchitecture

Architekturdiagramm

Das obige Diagramm zeigt eine allgemeine Übersicht über einen typischen Hybridentwurf mit Auftragsüberwachung der On-Demand-Knoten in Azure:This diagram shows a high-level overview of a typical hybrid design providing job monitoring of the on-demand nodes in Azure:

  1. Stellen Sie eine Verbindung mit dem Azure CycleCloud-Server her, um den Cluster zu konfigurieren.Connect to the Azure CycleCloud server to configure the cluster.
  2. Konfigurieren und erstellen Sie den Hauptknoten des Clusters mit RDMA-fähigen Computern für MPI.Configure and create the cluster head node, using RDMA enabled machines for MPI.
  3. Fügen Sie den lokalen Hauptknoten hinzu, und konfigurieren Sie ihn.Add and configure the on-premises head node.
  4. Wenn nicht genügend Ressourcen verfügbar sind, skaliert Azure CycleCloud Computeressourcen in Azure hoch (oder herunter).If there are insufficient resources, Azure CycleCloud will scale up (or down) compute resources in Azure. Es kann ein Grenzwert vordefiniert werden, um eine Überlastung zu verhindern.A predetermined limit can be defined to prevent over allocation.
  5. Aufgaben werden den Ausführungsknoten zugeordnet.Tasks allocated to the execute nodes.
  6. Daten werden in Azure vom lokalen NFS-Server zwischengespeichert.Data cached in Azure from on-premises NFS server.
  7. Daten werden aus Avere vFXT für den Azure-Cache eingelesen.Data read in from the Avere vFXT for Azure cache.
  8. Die Auftrags- und Aufgabeninformationen werden mittels Relay an den Azure CycleCloud-Server weitergeleitet.Job and task information relayed to the Azure CycleCloud server.

KomponentenComponents

  • Azure CycleCloud ist ein Tool zum Erstellen, Verwalten, Ausführen und Optimieren von HPC- und Big Compute-Clustern in Azure.Azure CycleCloud a tool for creating, managing, operating, and optimizing HPC and Big Compute clusters in Azure.
  • Avere vFXT in Azure wird verwendet, um ein für die Cloud konzipiertes Dateisystem für Unternehmen bereitzustellen.Avere vFXT on Azure is used to provide an enterprise-scale clustered file system built for the cloud.
  • Microsoft Azure Virtual Machines (VMs) wird verwendet, um einen statischen Satz von Computeinstanzen zu erstellen.Azure Virtual Machines (VMs) are used to create a static set of compute instances.
  • VM-Skalierungsgruppen stellen eine Gruppe von identischen VMs bereit, die von Azure CycleCloud zentral hoch- und herunterskaliert werden können.Virtual machine scale sets provide a group of identical VMs capable of being scaled up or down by Azure CycleCloud.
  • Azure Storage-Konten werden für die Synchronisierung und Datenaufbewahrung verwendet.Azure Storage accounts are used for synchronization and data retention.
  • Virtuelle Netzwerke ermöglichen vielen Azure-Ressourcentypen (beispielsweise Azure-VMs) die sichere Kommunikation miteinander sowie mit dem Internet und lokalen Netzwerken.Virtual Networks enable many types of Azure resources, such as Azure Virtual Machines (VMs), to securely communicate with each other, the internet, and on-premises networks.

AlternativenAlternatives

Kunden können Azure CycleCloud auch verwenden, um ein Raster vollständig in Azure zu erstellen.Customers can also use Azure CycleCloud to create a grid entirely in Azure. Bei diesem Setup wird der Azure CycleCloud-Server in Ihrem Azure-Abonnement ausgeführt.In this setup, the Azure CycleCloud server is run within your Azure subscription.

Für einen modernen Anwendungsansatz, bei dem die Verwaltung eines Workloadplaners nicht erforderlich ist, kann Microsoft Azure Batch hilfreich sein.For a modern application approach where management of a workload scheduler is not needed, Azure Batch can help. Sie können mithilfe von Azure Batch umfangreiche auf Parallelverarbeitung ausgelegte HPC-Anwendungen effizient in der Cloud ausführen.Azure Batch can run large-scale parallel and high-performance computing (HPC) applications efficiently in the cloud. Azure Batch ermöglicht es Ihnen, die Azure-Computeressourcen für die parallele oder skalierte Ausführung Ihrer Anwendungen ohne manuelle Konfiguration oder Verwaltung der Infrastruktur zu definieren.Azure Batch allows you to define the Azure compute resources to execute your applications in parallel or at scale without manually configuring or managing infrastructure. Azure Batch plant rechenintensive Aufgaben und fügt basierend auf Ihren Anforderungen Computeressourcen dynamisch hinzu oder entfernt sie.Azure Batch schedules compute-intensive tasks and dynamically adds and removes compute resources based on your requirements.

Skalierbarkeit und SicherheitScalability, and Security

Die Ausführungsknoten in Azure CycleCloud können manuell oder mittels automatischer Skalierung skaliert werden.Scaling the execute nodes on Azure CycleCloud can be accomplished either manually or using autoscaling. Weitere Informationen finden Sie unter Automatische Skalierung in CycleCloud.For more information, see CycleCloud Autoscaling.

Allgemeine Informationen zum Entwerfen sicherer Lösungen finden Sie in der Dokumentation zur Azure-Sicherheit.For general guidance on designing secure solutions, see the Azure security documentation.

Bereitstellen des SzenariosDeploy the scenario

VoraussetzungenPrerequisites

Führen Sie vor dem Bereitstellen der Resource Manager-Vorlage die folgenden Schritte aus:Follow these steps before deploying the Resource Manager template:

  1. Erstellen Sie einen Dienstprinzipal zum Abrufen von „appId“ (App-ID), „displayName“ (Anzeigename), „name“ (Name), „password“ (Kennwort) and „tenant“ (Mandant).Create a service principal for retrieving the appId, displayName, name, password, and tenant.

  2. Generieren Sie ein SSH-Schlüsselpaar für die sichere Anmeldung beim CycleCloud-Server.Generate an SSH key pair to sign in securely to the CycleCloud server.

  3. Klicken Sie auf den Link unten, um die Lösung bereitzustellen.Click the link below to deploy the solution.

    In Azure bereitstellenDeploy to Azure

  4. Melden Sie sich beim CycleCloud-Server an, um einen neuen Cluster zu konfigurieren und zu erstellen.Log into the CycleCloud server to configure and create a new cluster.

  5. Erstellen eines Clusters.Create a cluster.

Der Avere-Cache ist eine optionale Lösung, die den Durchsatz der Lesevorgänge für die Anwendungsauftragsdaten deutlich erhöhen kann.The Avere Cache is an optional solution that can drastically increase read throughput for the application job data. Avere vFXT für Azure löst das Problem, das mit der Ausführung dieser HPC-Unternehmensanwendungen in der Cloud und der gleichzeitigen Nutzung von lokal oder in Azure Blob Storage gespeicherten Daten einhergeht.Avere vFXT for Azure solves the problem of running these enterprise HPC applications in the cloud while leveraging data stored on-premises or in Azure Blob storage.

Für Organisationen, die eine Hybridinfrastruktur mit lokalem Speicher und Cloud Computing planen, können HPC-Anwendungen anhand von Daten, die auf NAS-Geräten (Network Attached Storage) gespeichert sind, „Bursts“ in Azure ausführen und die erforderlichen CPUs nach Bedarf einrichten.For organizations that are planning for a hybrid infrastructure with both on-premises storage and cloud computing, HPC applications can "burst" into Azure using data stored in NAS devices and spin up virtual CPUs as needed. Das Dataset wird nie vollständig in die Cloud verschoben.The data set is never moved completely into the cloud. Die angeforderten Bytes werden während der Verarbeitung mithilfe eines Avere-Clusters vorübergehend zwischengespeichert.The requested bytes are temporarily cached using an Avere cluster during processing.

Folgen Sie zum Einrichten und Konfigurieren einer Avere vFXT-Installation den Anweisungen unter Leitfaden für die Avere-Einrichtung und -Konfiguration.To set up and configure an Avere vFXT installation, follow the Avere Setup and Configuration guide.

PreisePricing

Die Kosten für die Ausführung einer HPC-Implementierung mit einem CycleCloud-Server sind von verschiedenen Faktoren abhängig.The cost of running an HPC implementation using CycleCloud server will vary depending on a number of factors. Beispielsweise wird CycleCloud basierend auf der genutzten Computezeit berechnet, wobei der primäre Server und der CycleCloud-Server in der Regel ständig zugeordnet sind und ausgeführt werden.For example, CycleCloud is charged by the amount of compute time that is used, with the Primary and CycleCloud server typically being constantly allocated and running. Die Kosten für die Ausführungsknoten hängen davon ab, wie lange diese aktiv sind und ausgeführt werden und welche Größe verwendet wird.The cost of running the Execute nodes will depend on how long these are up and running as well as what size is used. Die normalen Azure-Gebühren für Speicher und Netzwerk gelten ebenfalls.The normal Azure charges for storage and networking also apply.

Dieses Szenario zeigt, wie CFD-Anwendungen in Azure ausgeführt werden können- Die Computer erfordern daher RDMA-Funktionen, die nur für bestimmte VM-Größen verfügbar sind.This scenario shows how CFD applications can be run in Azure, so the machines will require RDMA functionality, which is only available on specific VM sizes. Im Folgenden sind Beispiele für die Kosten aufgeführt, die in einem Monat für eine Skalierungsgruppe mit einem ausgehenden Datenverkehr von 1 TB, die kontinuierlich für acht Stunden pro Tag zugeordnet ist, anfallen können.The following are examples of costs that could be incurred for a scale set that is allocated continuously for eight hours per day for one month, with data egress of 1 TB. Enthalten sind auch die Preise für den Azure CycleCloud-Server und die Installation von Avere vFXT für Azure:It also includes pricing for the Azure CycleCloud server and the Avere vFXT for Azure install:

  • Region: NordeuropaRegion: North Europe
  • Azure CycleCloud-Server: 1x Standard D3 (vier CPUs, 14 GB Arbeitsspeicher, HDD Standard-Datenträger mit 32 GB)Azure CycleCloud Server: 1 x Standard D3 (4 x CPUs, 14 GB Memory, Standard HDD 32 GB)
  • Primärer Azure CycleCloud-Server: 1x Standard D12 v2 (vier CPUs, 28 GB Arbeitsspeicher, HDD Standard-Datenträger mit 32 GB)Azure CycleCloud Primary Server: 1 x Standard D12 v (4 x CPUs, 28 GB Memory, Standard HDD 32 GB)
  • Azure CycleCloud-Knotenarray: 10x Standard H16r (16 CPUs, 112 GB Arbeitsspeicher)Azure CycleCloud Node Array: 10 x Standard H16r (16 x CPUs, 112 GB Memory)
  • Avere vFXT für Azure-Cluster: 3x D16s v3 (200 GB Betriebssystem, SSD Premium-Datenträger mit 1 TB)Avere vFXT on Azure Cluster: 3 x D16s v3 (200 GB OS, Premium SSD 1-TB data disk)
  • Ausgehende Daten: 1 TBData Egress: 1 TB

Die Preisschätzung für die oben genannte Hardware finden Sie hier.Review this price estimate for the hardware listed above.

Nächste SchritteNext steps

Nachdem Sie das Beispiel bereitgestellt haben, können Sie sich ausführlicher über Azure CycleCloud informieren.Once you've deployed the sample, learn more about Azure CycleCloud.