palais des
congrès
Paris
7, 8 et 9
février 2012
Guillaume SAUTHIER
Développeur JOnAS
Bull
Stéphane WOILLEZ
Consultant Cloud Computing
Microsoft
Java dans Windows Azure
l’...
Introduction
 Quelques rappels sur Windows Azure
 Introduction à JOnAS
 JOnAS: install, config et lancement Démo
Instal...
I. INTRODUCTION
Le choix du langage et de l’outil de programmation
Six Datacenters
(Europe, US, Asie)
24 Points de présence du
CDN
Le choi...
www.interoperabilitybridges.com
Microsoft et l’Open Source
Serveur d’application Java EE / OSGiTM
 Certifié Java EE 5
 Preview Java EE 6
 Preview OSGi Enterprise R4.3
 OpenSourc...
Dédié aux applications d’entreprise
 3 Tiers : Présentation/Métier/Données
 Présentation : Servlet 3.0 / JSP 2.2 / JSF 2...
Grands comptes
 Groupe France Telecom
 Ministère de l’intérieur
 Ministère de l’écologie
Intégrations
 Ubuntu 11.10
Pr...
Mise en œuvre rapide
Démonstration
II. INSTALLATION
Permet d’utiliser des fonctions d’un progiciel ou d’un module
Il faut automatiser l’installation des composants
Deux mécan...
Les indispensables
 Une Java Virtual Machine
 Un JOnAS
 Une application
 Un script d’initialisation
En quelques lignes...
Package applicatif
 Son contenu va être disponible sur la machine hôte
Dossier ‘approot’
Définition du service
 Nommage
 Description des Roles
 Nommage
 Taille de la machine virtuelle
 Pointeur sur le scrip...
Fichier *.csdef : définition de service
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<ServiceDefinition xmlns="h...
Configuration du service
 Nombre d’instances du/des Roles
 Certificats associés
 Configuration des plugins
 Couples cl...
Fichier *.cscfg: config de service
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<ServiceConfiguration
xmlns="htt...
Script d’initialisation
SET BLOB_URL=http://jonas.blob.core.windows.net
IF NOT EXIST "ow2-jonas-5.2.2-light.zip" cscript /...
Déploiement sur Azure
Démonstration
III. INTEGRATION
Rencontre avec jonas-admin
 La console d’administration web de JOnAS
 Expérience utilisateur améliorée avec Flex
 Modul...
Administrer JOnAS sur Azure
Démonstration
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 ...
Exemple de DataSource
<datasources xmlns="http://jonas.ow2.org/ns/datasource/1.0">
</datasource>
<datasource-configuration...
Application / SQL Azure
Démonstration
Essayez vous-même:
IV. EVOLUTION
Windows Azure Market Place
 OW2 JOnAS disponible sur étagère
Administration
 Module jonas-admin dédié à Azure
 Topologi...
● Modèle de facturation à la consommation
● Il existe aussi des forfaits et des accords entreprise
● Tous les prix sont pu...
Windows Azure sait héberger des environnements autres que
.NET
JOnAS, serveur Java EE OSGi Open Source tourne
parfaitement...
QUESTIONS ?
Des ressources Windows Azure
gratuites
Testez Windows Azure
gratuitement pendant
90 jours
 http://aka.ms/
tester-azure-90...
Chaque semaine, les DevCamps
ALM, Azure, Windows Phone, HTML5, OpenData
http://msdn.microsoft.com/fr-fr/devcamp
Télécharge...
Java dans Windows Azure, l'exemple de JOnAS
Upcoming SlideShare
Loading in...5
×

Java dans Windows Azure, l'exemple de JOnAS

859

Published on

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

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
859
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • 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)
  • Java dans Windows Azure, l'exemple de JOnAS

    1. 1. palais des congrès Paris 7, 8 et 9 février 2012
    2. 2. Guillaume SAUTHIER Développeur JOnAS Bull Stéphane WOILLEZ Consultant Cloud Computing Microsoft Java dans Windows Azure l’exemple de JOnAS INT202
    3. 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
    4. 4. I. INTRODUCTION
    5. 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
    6. 6. www.interoperabilitybridges.com Microsoft et l’Open Source
    7. 7. Serveur d’application Java EE / OSGiTM  Certifié Java EE 5  Preview Java EE 6  Preview OSGi Enterprise R4.3  OpenSource : LGPL Consortium OW2  Principal contributeur : Bull  Partenariats OW2 JOnAS
    8. 8. Dédié aux applications d’entreprise  3 Tiers : Présentation/Métier/Données  Présentation : Servlet 3.0 / JSP 2.2 / JSF 2.0  Métier : EJB 3.0  Données : JPA 2.0 / JDBC 4.0 / JCA 1.5 (EIS)  Transactions : JTA 1.1  Sécurité : LDAP, … Interopérabilité  Webservices SOAP, REST Utilisabilité  Serveur à la bonne taille (modularité)  Support IDE : Eclipse / Netbeans OW2 JOnAS
    9. 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
    10. 10. Mise en œuvre rapide Démonstration
    11. 11. II. INSTALLATION
    12. 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. 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
    14. 14. Package applicatif  Son contenu va être disponible sur la machine hôte Dossier ‘approot’
    15. 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
    16. 16. Fichier *.csdef : définition de service <?xml version="1.0" encoding="utf-8" standalone="no"?> <ServiceDefinition xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" name="WindowsAzureProject"> <WorkerRole name="Main" vmsize="Medium"> <Startup> <!-- Sample startup task calling startup.cmd from the role's approot folder --> <Task commandLine="util/.start.cmd startup.cmd" executionContext="elevated" taskType="background"/> </Startup> <Runtime executionContext="elevated"> <EntryPoint> <!-- Sample entry point calling run.cmd from the role's approot folder --> <ProgramEntryPoint commandLine="run.cmd" setReadyOnProcessStart="true"/> </EntryPoint> <Environment> <Variable name="YOUR_ENV_VARIABLE" value="[unused]"/> </Environment> </Runtime> <Imports> <Import moduleName="RemoteAccess"/> <Import moduleName="RemoteForwarder"/> </Imports> <Endpoints> <InputEndpoint localPort="9000" name="http" port="80" protocol="tcp"/> </Endpoints> </WorkerRole> </ServiceDefinition>
    17. 17. Configuration du service  Nombre d’instances du/des Roles  Certificats associés  Configuration des plugins  Couples clé/valeur Fichier *.cscfg
    18. 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. 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
    20. 20. Déploiement sur Azure Démonstration
    21. 21. III. INTEGRATION
    22. 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
    23. 23. Administrer JOnAS sur Azure Démonstration
    24. 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
    25. 25. Exemple de DataSource <datasources xmlns="http://jonas.ow2.org/ns/datasource/1.0"> </datasource> <datasource-configuration> <name>jdbc_1</name> <url>jdbc:sqlserver://rvdzir6adn.database.windows.net:1433;database=pastebean; encrypt=true;hostNameInCertificate=*.database.windows.net</url> <classname>com.microsoft.sqlserver.jdbc.SQLServerDriver</classname> <username>jonas@rvdzir6adn</username> <password>*****</password> <mapper>rdb.sqlserver</mapper> </datasource-configuration> <connectionManager-configuration> <connchecklevel>0</connchecklevel> <connteststmt>SELECT 1</connteststmt> <connmaxage>1440</connmaxage> <maxopentime>60</maxopentime> <initconpool>10</initconpool> <minconpool>10</minconpool> <maxconpool>100</maxconpool> <pstmtmax>100</pstmtmax> <maxwaittime>5</maxwaittime> <maxwaiters>100</maxwaiters> <samplingperiod>30</samplingperiod> </connectionManager-configuration> </datasource> </datasources>
    26. 26. Application / SQL Azure Démonstration Essayez vous-même:
    27. 27. IV. EVOLUTION
    28. 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. 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. 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
    31. 31. QUESTIONS ?
    32. 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. 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
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×