Windows Azure est une plateforme IaaS qui n'est pas réservée exclusivement aux application .NET. Cette session explore et explique comment déployer le serveur d'application JOnAS sur le cloud de Microsoft
3. Introduction
Quelques rappels sur Windows Azure
Introduction à JOnAS
JOnAS: install, config et lancement Démo
Installation
Installer des composants logiciels dans Azure
Déployer JOnAS dans Windows Azure Démo
Intégration
Administration de JOnAS dans Azure Démo
Intégration avec SQL Azure Démo
Evolutions
Evolutions prévues de l’intégration de JOnAS dans Azure
Conclusion
Questions
Agenda de la session
5. Le choix du langage et de l’outil de programmation
Six Datacenters
(Europe, US, Asie)
24 Points de présence du
CDN
Le choix du/des Datacenters
qui vous hébergent
Des services automatisés
pour vos applications
Clusters applicatifs
Bases de données
Machines virtuelles
Stockage
CDN
Cache distribué
VPN
Service Bus
Reporting
Contrôle d’accès
MarketPlace
Votre DataCenter
CLoud
Windows Azure, c’est quoi ?
• Une plate forme de cloud computing public à l’échelle mondiale
• L’hébergement d’ applications internes, B2B, ou publiques
• Des SLA de production en très haute disponibilité
• Des services d’interconnectivités applicatives multiples
• Un haut niveau de sécurité à vos applications et données
• Une réduction importante des couts de projets et d’hébergement
Windows Azure
9. Grands comptes
Groupe France Telecom
Ministère de l’intérieur
Ministère de l’écologie
Intégrations
Ubuntu 11.10
Projets collaboratifs
Compatible One
4CaaST
OW2 JOnAS / Déploiements
12. Permet d’utiliser des fonctions d’un progiciel ou d’un module
Il faut automatiser l’installation des composants
Deux mécanismes d’installation sont disponibles :
1. L’intégration du composant dans le package applicatif
2. La création d’un master de VM personnalisé (VMROLE)
Si l’installateur du composant supporte l’automatisation et
n’est pas trop long, on l’intègre dans le package applicatif
Si le composant est compliqué à installer, ou nécessite une
intervention humaine, on utilise le VMRole
Installer des composants dans Azure
DEMONSTRATION
13. Les indispensables
Une Java Virtual Machine
Un JOnAS
Une application
Un script d’initialisation
En quelques lignes
Le package applicatif contient les binaires (JVM, …)
La définition de service fournit les méta-données
Description des Roles, Endpoints et Environnement
Le script initialise et lance JOnAS dans la VM
Génération du package avec Eclipse et le plugin Azure
Déployer JOnAS dans Azure
15. Définition du service
Nommage
Description des Roles
Nommage
Taille de la machine virtuelle
Pointeur sur le script de démarrage
Variables d’environnement
Description des Endpoints
Activation de modules/plugins
Fichier *.csdef
17. Configuration du service
Nombre d’instances du/des Roles
Certificats associés
Configuration des plugins
Couples clé/valeur
Fichier *.cscfg
18. Fichier *.cscfg: config de service
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<ServiceConfiguration
xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration"
osFamily="2"
osVersion="*"
serviceName="WindowsAzureProject">
<Role name="Main">
<Instances count="1" />
<ConfigurationSettings>
<Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.Enabled"
value="true"/>
<Setting name="Microsoft.WindowsAzure.Plugins.RemoteForwarder.Enabled"
value="true"/>
<!-- NOTE: replace the following settings with your own -->
<Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountUsername"
value="bull"/>
<Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountEncryptedPassword"
value="...."/>
<Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountExpiration"
value="2039-12-31T23:59:59.0000000-08:00"/>
</ConfigurationSettings>
<Certificates>
<Certificate name="Microsoft.WindowsAzure.Plugins.RemoteAccess.PasswordEncryption"
thumbprint="E05B79E3F7DFA2AD1D7845A7A8CC2A5F43D073A4"
thumbprintAlgorithm="sha1"/>
</Certificates>
</Role>
</ServiceConfiguration>
19. Script d’initialisation
SET BLOB_URL=http://jonas.blob.core.windows.net
IF NOT EXIST "ow2-jonas-5.2.2-light.zip" cscript /nologo "utildownload.vbs" "%BLOB_URL%/demo/ow2-jonas-5.2.2-light.zip"
IF NOT EXIST "jdk1.7.0_02.zip" cscript /nologo "utildownload.vbs" "%BLOB_URL%/demo/jdk1.7.0_02.zip"
@REM Prepare directory (shorter names)
rd "C:%ROLENAME%"
mklink /D "C:%ROLENAME%" "%ROLEROOT%approot"
cd /d "C:%ROLENAME%"
@REM Unpack Java SDK + OW2 JOnAS
IF NOT EXIST "jdk1.7.0_02" cscript /nologo "utilunzip.vbs" "jdk1.7.0_02.zip" "%CD%"
IF NOT EXIST "ow2-jonas-5.2.2" cscript /nologo "utilunzip.vbs" "ow2-jonas-5.2.2-light.zip" "%CD%"
@REM Set required environment variables
SET JONAS_ROOT=C:%ROLENAME%ow2-jonas-5.2.2
SET JAVA_HOME=C:%ROLENAME%jdk1.7.0_02
SET PATH=%PATH%;%JAVA_HOME%bin;%JONAS_ROOT%bin
@REM Overwrite some JOnAS files
COPY /Y "conf*" "%JONAS_ROOT%conf"
COPY /Y "libext*" "%JONAS_ROOT%libext"
@REM Place application's modules in the deploy/ directory
COPY /Y "deploy*" "%JONAS_ROOT%deploy"
@REM Spawn a JOnAS process and exit the current shell
@REM ------------------------------------------------------------
%JONAS_ROOT%binjonas.bat start
22. Rencontre avec jonas-admin
La console d’administration web de JOnAS
Expérience utilisateur améliorée avec Flex
Modulaire et évolutive
Gestion des Classloaders
Gestion des fuites de connexions
Système d’audit des applications
Console OSGi
Documentation
…
Administration de JOnAS dans Azure
24. Une application gère son modèle de donnée avec JPA
C’est la couche ORM
Independence vis-à-vis de la base sous jacente avec JDBC
JOnAS a besoin d’un driver JDBC
SQL Server JDBC Driver v4 supporte SQL Azure
Fourniture d’une DataSource (XML)
Connectée sur l’URL de la base de donnée
Utilisant le driver JDBC adéquat
Avec informations de connexion
Gestion du pool de connexions
Notes
Penser à créer une nouvelle base en plus de ‘master’ (droits)
Configurer le firewall pour pouvoir accéder à la base
Username de la forme: [login]@[server]
Intégration avec SQL Azure
28. Windows Azure Market Place
OW2 JOnAS disponible sur étagère
Administration
Module jonas-admin dédié à Azure
Topologie du cluster
Interactions avec le portail de management Azure
JOnAS/Azure Manager
Déploiement et mises à jour d’applications Java EE
Synchronisées sur l’ensemble du cluster
Evolutions / additions au plugins Eclipse
Déploiement des applications sur le cloud en 1 clic
Evolutions de l’intégration de JOnAS
29. ● Modèle de facturation à la consommation
● Il existe aussi des forfaits et des accords entreprise
● Tous les prix sont publics, il existe un outil d’estimation de coût en ligne
● Un exemple : Un cluster de 2 serveurs JOnAS, bi-cœurs 3.5Go de mémoire,
utilisant 500Go de stockage avec 1 million de transactions et 1 To de bande
passante coute 390€ par mois, prix liste.
http://www.microsoft.com/windowsazure/offers/
http://www.microsoft.com/windowsazure/pricing-calculator/
390€
par mois
prix liste
Stockage 500GB
1 million d’accès
2 VMs - 2 x 1.6GHz
3.5 Go Mémoire
NLB
JOnAS
1 Tera Octets
de trafic
JOnAS sur Azure, Combien ca coute
30. Windows Azure sait héberger des environnements autres que
.NET
JOnAS, serveur Java EE OSGi Open Source tourne
parfaitement dans Azure
JOnAS bénéficie des services d’automatisation de la plate
forme
JOnAS fonctionne très bien avec SQL Azure
Bull délivre des services de support pour les environnements
de production JOnAS sur Azure
Conclusion
http://support.bull.com/ols/product/applications/Environnement-j2ee/help/kbf/g/eofjonas
32. Des ressources Windows Azure
gratuites
Testez Windows Azure
gratuitement pendant
90 jours
http://aka.ms/
tester-azure-90j
Abonnés MSDN, vous
bénéficiez de Windows
Azure
http://aka.ms/
activer-azure-msdn
33. Chaque semaine, les DevCamps
ALM, Azure, Windows Phone, HTML5, OpenData
http://msdn.microsoft.com/fr-fr/devcamp
Téléchargement, ressources et
toolkits : RdV sur MSDN
http://msdn.microsoft.com/fr-fr/
Les offres à connaître
90 jours d’essai gratuit de Windows Azure
www.windowsazure.fr
Jusqu’à 35% de réduction sur Visual Studio
Pro, avec l’abonnement MSDN
www.visualstudio.fr
Pour aller plus loin
10 février
2012
Live
Meeting
Open Data - Développer des applications riches avec le
protocole Open Data
16 février
2012
Live
Meeting
Azure series - Développer des applications sociales sur la
plateforme Windows Azure
17 février
2012
Live
Meeting
Comprendre le canvas avec Galactic et la librairie three.js
21 février
2012
Live
Meeting
La production automatisée de code avec CodeFluent Entities
2 mars
2012
Live
Meeting
Comprendre et mettre en oeuvre le toolkit Azure pour Windows
Phone 7, iOS et Android
6 mars
2012
Live
Meeting
Nuget et ALM
9 mars
2012
Live
Meeting
Kinect - Bien gérer la vie de son capteur
13 mars
2012
Live
Meeting
Sharepoint series - Automatisation des tests
14 mars
2012
Live
Meeting
TFS Health Check - vérifier la bonne santé de votre plateforme
de développement
15 mars
2012
Live
Meeting
Azure series - Développer pour les téléphones, les tablettes et
le cloud avec Visual Studio 2010
16 mars
2012
Live
Meeting
Applications METRO design - Désossage en règle d'un template
METRO javascript
20 mars
2012
Live
Meeting
Retour d'expérience LightSwitch, Optimisation de l'accès aux
données, Intégration Silverlight
23 mars
2012
Live
Meeting
OAuth - la clé de l'utilisation des réseaux sociaux dans votre
application
Prochaines sessions des Dev Camps
Editor's Notes
Géo DRP = Capacité de construire une application répartie sur plusieurs datacenters Azure, permettant la continuité de service, même si un datacenter disparait.
CDN = Content Delivery Network. Un réseau de serveurs de cache répartis sur le globe, et permettant la réplication géographique des applications et données pour une très grande montée en charge.
Ici on montre la page de téléchargement de JOnAS (jonas.ow2.org).
On parle de l’installeur en mettant en avant l’aspect plus avancé des options de configuration
Auparavant on aura téléchargé le zip de JOnAS;
Opérations: décompresser, positionner JONAS_ROOT et démarrer JOnAS
Montrer l’exemple Java EE 5 EAR Sample
Création d’un package avec Eclipse:
Nouveau projet Azure
Mono role
Remplir le approot avec des fichiers pré-existant
Montrer le script de démarrage
Création du packaging
Upload
On attend pas la fin …
On se connecte sur l’instance jonas-admin démarrée au préalable
On montre les fonctions de la console (déploiment, upload, montoring, ..) et les différents modules
Ici, on se contente de montrer une application qui utilise la couche de persistence
On se connecte aussi sur la console de management SQL Azure pour montrer que les infos sont bien en table
Les Dev Camps
sont des événements en live meeting qui vous permettent d’approfondir les technologies Microsoft.
Ils sont créés et animés par les meilleurs experts de Microsoft en France. Experts techniques, responsables de produits. Et comme tout live meeting, ils sont interactifs et vous permettent d’échanger en direct pour obtenir des réponses précises à vos question.
http://msdn.microsoft.com/fr-fr/devcamp
Le site MSDN
Vous le savez, vous y trouverez toutes les ressources essentielles. N’hésitez pas à faire part de vos remarques, idées et commentaires pour aider l’équipe Microsoft à améliorer les sites MSDN pour qu’ils répondent au mieux à vos attentes
Les offres à connaitre
90 jours d’essai pour Windows Azure. Entièrement gratuits. Ca laisse le temps de mettre en place et tester des scenarios sur la plateforme
Jusqu’à 35% de réduction sur Visual Studio Pro avec l’abonnement MSDN, et -15% de réduction sur Visual Studio premium avec l’abonnement MSDN (RdV sur le stand MSDN)