35
palais des congrès Paris 7, 8 et 9 février 2012

Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Embed Size (px)

DESCRIPTION

Windows Azure est un environnement idéal pour déployer des applications gourmande en puissance de calcul qui sont capable d’utiliser les capacité d’élasticité du Cloud. Lors de cette session nous exposerons les nouvelles fonctionnalités de Windows HPC Server 2008 R2 pour les scénarios de débordement vers Windows Azure et nous passerons en revue les outils permettant de supporter cette mise en œuvre.

Citation preview

Page 1: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

palais des congrès Paris

7, 8 et 9 février 2012

Page 2: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Mardi 7 FévrierThomas VARLETConsultant HPC et Cloud Computing AzureMicrosoft France

Faire du débordement de charge d'un cluster Windows HPC Server avec Windows Azure (CLO210)

Page 3: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Agenda

Windows HPC Server 2008 R2

Windows Azure HPC Scheduler

Scénarios de débordement

Q&A

Page 4: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Windows HPC Server 2008 R2

Page 5: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Bibliothèques de distribution

Outils pour utiliser toutes ces ressources de calcul - MS-MPI - SOA - Excel

Windows HPC Server 2008 R2

Ordonnanceur

Gérer les ressources de calcul du cluster pour les utilisateurs

Administration

Deployer/Administrer/surveiller les machines du cluster

Troisième génération de la solution HPC par Microsoft

Page 6: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

GUI

Page 7: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Une plateforme complète et intégrée de cluster HPC Construit à partir de Windows Server 2008 R2 64-bit Répond aux besoin actuels et futurs du HPC

Windows HPC Server 2008 R2

Windows Server 2008 R2 HPC

Edition

• Securisé, fiable, testé • Support de hardware

haute performances (x64, réseaux rapides, GPU)

Microsoft HPC Pack 2008 R2

Enterprise

• Ordonnanceur• Gestion des ressources • Gestion du Cluster• Message Passing Interface• Support de Windows 7• Support de Windows

Azure

Microsoft Windows HPC

Server 2008 R2 Suite

• Propose une solution complète

• Rentabilise les investissements sur l’administration Windows et ses outils

• Rend les opérations aussi faciles que sur un seul système

Page 9: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

•En locale :

• Compute Node

• Workstation node

• Server scavengin

•Débordement dans Azure

• Payer a l’usage

• Solution Hybride d’usage du cloud public

• Ajuster dynamiquement ce qui tourne en local ou dans le cloud

Ressources utilisablesPuissance locale et dans Azure

Locale

RDB

Blobs

Azure

Compute Nodes

DesktopsHPC Head Node

Broker Node

VM Role

Worker Role

Web Role

Page 10: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Cluster WHPCS avec des Azure Node

Page 11: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Roadmap

Microsoft HPC Server 2008 R2

SP1

Integration with Windows Azure:

“Burst” SOA and Parametric sweep jobs to Azure as worker roles.

All compute nodes in Azure with head-node only on-premise.

User activity scheduling for workstation nodes

C# cluster SOA debugger for VS 2010.

Microsoft HPC Server 2008 R2

Excel on HPC clusters Schedule jobs to

workstations Business critical SOA Scale to 1000+ nodes

out-of-the-box Dual boot clusters Diskless compute

nodes Extensible diagnostics

and troubleshooting framework

Flexible, customizable color-coded Heat map

Microsoft HPC Server 2008 R2

SP2

MPI runtime in Windows Azure

Azure VM role New job scheduler policies Lend/Borrow resource

pools Over/under subscribe

nodes Common data for SOA

Apps Multi-domain support for

workstations nodes Web Portal for job

submission and  job status Smart Card authentication

July 2010 Dec 2010 June 2011 Nov. 2011

Microsoft HPC Server 2008 R2

SP3

More Azure feature Simplification of ports

used More tools Updated tools Harvest cycles from

servers on your network. New job scheduler

policies More configuration of

the task level preemption t

Windows Azure HPC Job Scheduler (Windows Azure SDK

Page 12: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Windows Azure HPC Scheduler

Page 13: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

• Lancer des jobs HPC sans devoir gérer ou mainteninr un cluster

•SLA garanties

•Ne payer que ce que vous utilisez

Solution cloud

Azure

RDB

Blobs

Frontale et Compute nodes dans Azure

HPC Head Node

Worker/Web Role

Worker/Web Role

HPC VM

Page 14: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Permet a des développeurs de créer un package Azure pour des applications intensive en calcul

Application + cluster dans Azure

Même ordonnanceur que celui de Windows HPC Serveur 2008 R2 SP2 Pack

Même propriétés d’ordonnancement Même « run time »

batch/SOA/MPI

« Windows Azure Scheduler SDK »

Page 15: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Un déploiement Windows AzureFront End

Windows Azure Scheduler en Action

Windows Azure

Scheduler

Compute Worker

Compute Worker

Compute Worker

Compute Worker

Compute Worker

Node Manager

Application

Standard HPCJob Scheduler API

Application Front End

(Web Page)

Page 16: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Scenarios de débordement

Page 17: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Scenarios

Page 18: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Besoin d’une infra HPC Provide compute power for user

Development / testing / production / prototyping Simulation/regulation

Pas prets au cloud public Application non prête

Ne peut pas utiliser un cloud public Pas encore ?

Il est extrement facile d’ajouter des Azures Nodes Workload

Accéder a des ressources dans l’infrastructure local Serveur de fichier, DB, …

Azure connect ? Azure Blob Azure SQL ?

Puissance HPC locale

Page 19: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Utiliser Windows HPC Server 2008 R2 Machines dédiés, Vol de cycle sur des stations/serveurs

Local: WHPCS R2

Page 20: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

On and off workloads (e.g. batch job)Over provisioned capacity is wasted Time to market can be cumbersome

Unexpected/unplanned peak in demand Sudden spike impacts performance Can’t over provision for extreme cases

Successful services needs to grow/scale Keeping up w/growth is big IT challenge Complex lead time for deployment

Services with micro seasonality trends Peaks due to periodic increased demandIT complexity and wasted capacity

Les scénarios d’usage du Cloud

Page 21: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Infrastructure HPC existante Puissance suffisante pour

la production, Développement, Test.

Besoin de puissance le plus rapidement possible Disponibilité immédiate

Puissance de calcul « infinie » disponible dans Azure

Cloud – Growing fast in Azure

Page 22: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Windows HPC Server 2008 R2 Azures Nodes Etendre un cluster local vers le cloud afin

d’absorber des piques de charge et cela sans changer l’application

Avec votre suscription Azure ajoutez des processeurs a votre cluster très rapidement

Débordement dans Azure

Page 23: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Infrastructure HPC existante Puissance suffisante pour

la production, Développement, Test.

Besoin de puissance pendant une durée limitée Besoin règlementaire Evènement périodique/exceptionnels Project

Cloud – Burst in Azure

Page 24: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Windows HPC Server 2008 R2 Azures Nodes Etendre un cluster local vers le cloud afin d’absorber

des piques de charge et cela sans changer l’application

Avec votre souscription Azure ajouter des ressources quand vous en avez besoin

Payer les ressources que lorsque vous les utilisez

Débordement dans Azure 2

Page 25: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Pas de puissance de calcul en local Besoin de puissance a des moments données Projet Réglementaire

Cloud - Applications in Azure

Page 26: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Une application entièrement hébergé dans Azure Pas de frontale en local

L’application est accédée depuis Un client riche local Application web ou un portail Service Web

Plusieurs business model Usage de l’application est facturé au client L’Application et le calcul sont fournis

comme un service

Scheduler et Runtimes supporté dans Azure Pas une frontale, un scheduler embraqué dans Azure Tous les runtimes: Parametric Sweep, MPI, Cluster SOA, Excel

Applications dans Azure

Page 27: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Offrire un solution complète en utilisant Windows Azure comme ressource Solution de type SAAS

Scenario utilisateur Se connecte sur un portail web Charge les données Lance le calcul

Calcul tourne dans Azure Recupère les données

Solution in Azure

Page 28: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Créer une application Azure En utilisant les ressources Azure

Vos clients accèdent a cette solution SAAS Utilise votre souscription Windows Azure Vos client payent l’usage

de votre solution

Solution dans Azure (CSV)

Page 29: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Les Rôles Windows Azurepour construire ses applications

• Les rôles permettent de construire son architecture applicative• Ils exécutent différents types de tâches spécialisées ou non• Les rôles dialoguent entre eux au travers de files de messages

• Implémente l’interactivité avec l’utilisateur• Basé sur Internet Information Server préinstallé• Supporte les extensions classiques IIS• Piloté et configuré au travers des outils de développement

• Pas d’interactivité avec l’utilisateur• Implémente la logique métier de l’application• Similaire au batch, à la couche applicative, aux services windows• Piloté et configuré au travers des outils de développement

• Utilisé pour pouvoir installer des applications complexe• Les images sont construites par l’utilisateur avec Hyper-V• Le master créé est téléchargé sur Azure pour être utiliséVM Role

Worker Role

Web Role

Page 30: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Les Services “Storage”

BLOBS: Structure hiérarchique pour le stockage de fichiers identifiés par leur nom et chemin, ainsi que les métadonnées associées.

TABLES: Structure tabulaire. Une table est un ensemble d’entités (EAV*) définies chacune par un ensemble de propriétés.

QUEUES: File de messages selon le principe FIFO, pour la communication asynchrone entre instances.

DRIVES: Disque NTFS partagé entre de multiples instances.

HTTP/S

• Le “Storage” Windows Azure est un service de stockage géré par Windows Azure• Les données peuvent être utilisées dans les applications Azure, ou accédées directement par URL• L’URL d’accès peut être personnalisée avec son propre nom de domaine• L’accès aux blobs est sécurisé par un système de contrôle d’accès permettant de définir des règles fines• Les Blobs peuvent être mis en cache par le service Windows Azure Content Delivery Network (CDN)

Page 31: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Worker RoleWeb Role

1n

Queue

Blob

Table

Architecture typique

1) The user submit a job trough the web

UI

2) The job is added in the Table for futur access

3) The « job » is divided in tasks. The tasks are put in a

Queue

4) The worker get the tasks in the queue and process them

6) The differents output are assembled to get the final result

5) Each worker post the results of his computation in a Blob

1

2

3 4

56

Page 32: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Q&A

Page 33: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Premier ouvrage rédigé en FrançaisSur l’intégralité de la plateforme Windows Azure

Disponible dès aujourd’hui!Consultation et achat possible sur le stand (52) des éditions ENI

Livre sur Windows Azure

Page 34: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure

Depuis combien de temps utilisons nous Azure comme solution de débordement pour Windows HPC Server 2008 R2 ?

Question

Page 35: Faire du débordement de charge d’un cluster Windows HPC Server avec Windows Azure