24 février 2011

Silverlight 5 annoncé le 12 avril 2011?

Je n’ai pas d’info officielle, mais mon petit doigt me dit que le MIX 11 de Las Vegas serait l’endroit parfait pour annoncer la beta ou la version finale de Silverlight 5. Surtout que Scott Guthrie sera à la conférence d’ouverture. Ca promet.

14 février 2011

Resume et diapositives de ma session

La session que j’ai eu le plaisir d’animer aux TechDays 2011 avec PIA sera bientôt en ligne, et en attendant vous pouvez retrouver:

Merci à tous ceux qui sont venus et merci pour vos retour positifs sur site. Merci aux intervenants de PIA et à Christophe Lauer. Et merci à Guillaume Collic pour son résumé.

09 février 2011

Windows Azure DataMarket: Vendre et consommer de la donnée

SDC13681SDC13678Note: ceci est mon résumé de la session des TechDays 2011, pas mon avis.

Par Jean-Luc Boucho, de Winwise et Julien Lesaicherre de Microsoft France

Introduction

SDC13677La donnée existe dans différents formats et emplacements. Pour une application connectée, on a par exemple besoin de différentes données hétérogènes; mais il faut les trouver (elles ne sont pas centralisées) et savoir les consommer (chacune dans son format) puis éventuellement les payer (beaucoup de modes différents de paiement).

Les problèmes existent aussi bien au niveau du producteur, du consommateur éditeur de logiciels, et du consommateur final, pour lequel il n’y a pas de modèle homogène.

Windows Azure Marketplace propose:

  • Des composants applicatifs (par exemple pour la facturatione, la gestion de montée en charge).
  • Data Market: place de marché de la donnée (Data As A Service): le but est de réunir producteur et consommateurs de données, pour leur permettre respectivement de vendre et acheter leurs données.

Le but de DataMarket est d’offrir:

  • visibilité des données
  • certification des données
  • souscription des données
  • consommation: intégration avec Microsoft Excel, Microsoft PowerPivot, et les environnements de développement

Les composants de DataMarket:

  • Marketplace: portail permettant de découvrir les données dont on a besoin
  • Open Data Protocol (OData): protocole ouvert basé sur HTTP et REST pour exposer les données
  • Facturation: permet d’avoir une facturation unique quel que soit le nombre de fournisseurs
  • Visualisation: consultation d’ensembles de données depuis le portail

Consommation de données

SDC13682http://datamarket.azure.com offre une interface de découverte des données et de requêtage de celles-ci.

La consommation par le développeur se fait au choix:

  • via une API REST au format Atom (OData)
  • via un proxy créé par Visual Studio pour le développeur .NET

Intégration de données

Deux outils Microsoft permettent de se connecter aux données

  • Add-in Excel
  • PowerPivot pour Excel (analyses de croisement)

Il y a aussi des éditeurs tiers qui proposent et proposeront des outils consommant les données OData.

Migrer ses applications sur Windows Azure

SDC13673Note: ceci est mon résumé de la session des TechDays 2011, pas mon avis.

Par Michel Hubert et Jérémie Devillard, de Logica.

Préparation

Microsoft Assesment Planning Toolkit permet de vérifier techniquement la portabilité des applications existantes vers le cloud. Il trouve notamment les serveurs de bases de données, les applications Web, et les performances des machines. Il produit des rapports et indique notamment les estimations de machines équivalentes sur Windows Azure dont on aura besoin.

Les différents rôles

SDC13676Chaque rôle est l’équivalent d’une machine virtuelle:

  • Web Role: héberge un serveur IIS (NDLR: PaaS)
  • Worker role: exécute une tâche de fond (équivalent d’un service Windows) (NDLR: PaaS)
  • VM Role: machine virtuelle, dont je dois moi-même configurer et maintenir l’OS (NDLR: plutôt IaaS)

Note: le VM role est récent, et pour l’instant il n’y

a pas de système de snapshot.

La migration

Stockage des données

Choisir la bonne solution entre Tables (non relationnelles), Blobs (conteneurs de documents) et SQL Azure (si besoin de SGBDR).

En cas de migration vers SQL Azure il faut vérifier la compatibilité syntaxique de la base. Puis 2 étapes de migration: d’abord le schéma (SQL Azure Migration Wizard, ou alors SQL Server Migration Wizard si la base était MySQL, Access, Oracle, Sybase), puis les données (BCP ou SSIS mais il y en a d’autres) (NDLR: voir les autres outils sur CodePlex).

Frontal Web

Le déploiement vers Azure est long. On commence donc par un développement local avec l’émulateur. Puis un premier déploiement (environ 15 minutes). Après le premier déploiement, Web Deploy (Publish/Web Deploy depuis Visual Studio) permet de déployer rapidement les modifications de manière itérative. Au final, il faut refaire un déploiement complet car Web Deploy n’est pas fait pour la livraison finale.

Cycle de vie

L’application est publiée dans l’environnement de tests. Après tests par l’équipe locale, l’administrateur est responsable de publier dans l’environnement de production.

D’un point de vue des coûts, on peut dé-commissionner l’environnement de tests une fois la publication effectuée.

Le déploiement peut être automatisé avec MSBuild ou des CMDlets de PowerShell.

Supervision / Exploitation

On utilise:

  • compteurs de performance
  • logs: spécifiques Azure, IIS 7, Failed requests, … (il suffit de les paramétrer dans Azure)
  • System Center Operations Manager, grâce à un Management Pack spécifique pour Azure: on unifie ainsi le S.I. local et Azure

Intégration au S.I.

Plusieurs possibilités:

  • AppFabric: Service Bus (intégration des données) et Access Control (fédération d’entités: profils, autorisations)
  • SQL Azure Data Sync pour synchroniser avec une base locale
  • Windows Azure Connect qui permet d’être en VPN avec le S.I. local

02 février 2011

Combien coute Windows Azure

azurelogoCa y est, votre application est prête à être déployée dans le nuage. Tant que vous développiez et testiez en local, il n’y avait rien à payer à Microsoft. Mais une fois la phase de déploiement atteinte, il faudra payer à l’usage. Pourquoi, et combien?

Pourquoi payer?

Lorsque votre application Windows Azure est déployée, elle consomme des ressources pour fonctionner. Tout l’intérêt d’Azure c’est que les ressources résident chez Microsoft et sont virtuellement illimitées, c’est à dire qu’elles peuvent aller de l’équivalent d’un PC à l’équivalent d’un énorme ordinateur parallèle.

Du coup, les ressources en question ne sont plus chez vous, mais chez Microsoft. Vous ne payez plus de machine, de technicien, de locaux, d’électricité, de sécurisation pour héberger l’application chez vous. Il faut donc bien rémunérer à Microsoft le fait de prendre ces frais pour vous.

Combien payer?

L’utilisation d’Azure n’a pas un prix fixe, mais variable. Le but, c’est que tant que votre application est peu utilisée elle ne vous coûte quasiment rien. Quand elle sera très sollicitée (ce que je vous souhaite) elle coûtera plus cher, car elle consommera plus de ressources, mais à ce moment elle devrait vous rapporter bien plus (ce que je vous souhaite aussi) que ce qu’elle vous coûte.

A la base, il n’y a pas de frais fixe pour faire fonctionner une application Azure. Vous êtes simplement facturés pour l’utilisation mensuelle d’éléments tels que la puissance de calcul, le stockage, la communication réseau, mais encore l’utilisation d’une base de données SQL Azure ou de services comme AppFabric. Les détails de la tarification sont indiqués ici.

Alors d’accord, ça ne coûte que si l’on s’en sert. D’un point de vue business, le ROI est immédiat et justifie le coût (ce que je vous souhaite, sinon il faut revoir votre business model). Mais si on est un développeur souhaitant s’initier à Azure, pas une entreprise, comment évaluer le coût? Dans ce cas, le plus simple est d’acquérir une licence MSDN Premium, qui comprend les logiciels de développement Microsoft comme Visual Studio et des ressources d’Azure.

Dernière possibilité: acheter un package comprenant un nombre donné de ressources. C’est utile si votre application ne génère pas encore de ressources proportionnelles à son utilisation, par exemple durant le développement d’une version de démonstration en ligne. Vous trouverez ici la liste des packages existant.