Loading…

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

Like this presentation? Why not share!

Like this? Share it with your network

Share

Java dans Windows Azure, l'exemple de JOnAS

  • 1,111 views
Uploaded 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......

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

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,111
On Slideshare
1,108
From Embeds
3
Number of Embeds
1

Actions

Shares
Downloads
6
Comments
0
Likes
0

Embeds 3

http://a0.twimg.com 3

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    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.

Transcript

  • 1. palais descongrèsParis7, 8 et 9février 2012
  • 2. Java dans WindowsAzurel’exemple de JOnASINT202Guillaume SAUTHIER Stéphane WOILLEZDéveloppeur JOnAS Consultant Cloud ComputingBull Microsoft
  • 3. Agenda de la session 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
  • 4. I. INTRODUCTION
  • 5. Windows Azure 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 Votre DataCenter • Un haut niveau de sécurité à vos applications et données CLoud • Une réduction importante des couts de projets et d’hébergement Clusters applicatifs Des services automatisés Le choix du/des Datacenters pour vos applications Bases de données qui vous hébergent Machines virtuelles Stockage Six Datacenters CDN (Europe, US, Asie) 24 Points de présence du Cache distribué CDN VPN Service Bus Le choix du langage et de l’outil de programmation Reporting Contrôle d’accès MarketPlace
  • 6. Microsoft et l’Open Source www.interoperabilitybridges.com
  • 7. OW2 JOnAS 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
  • 8. OW2 JOnAS 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
  • 9. OW2 JOnAS / Déploiements 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
  • 10. DémonstrationMise en œuvre rapide
  • 11. II. INSTALLATION
  • 12. Installer des composants dansAzure 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 DEMONSTRATION
  • 13. Déployer JOnAS dans Azure 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
  • 14. Dossier ‘approot’ Package applicatif  Son contenu va être disponible sur la machine hôte
  • 15. Fichier *.csdef 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
  • 16. Fichier *.csdef : définition deservice<?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 roles 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 roles 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. Fichier *.cscfg Configuration du service  Nombre d’instances du/des Roles  Certificats associés  Configuration des plugins  Couples clé/valeur
  • 18. Fichier *.cscfg: config deservice<?xml version="1.0" encoding="utf-8" standalone="no"?><ServiceConfigurationxmlns="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’initialisationSET BLOB_URL=http://jonas.blob.core.windows.netIF 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 JOnASIF 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 variablesSET JONAS_ROOT=C:%ROLENAME%ow2-jonas-5.2.2SET JAVA_HOME=C:%ROLENAME%jdk1.7.0_02SET PATH=%PATH%;%JAVA_HOME%bin;%JONAS_ROOT%bin@REM Overwrite some JOnAS filesCOPY /Y "conf*" "%JONAS_ROOT%conf"COPY /Y "libext*" "%JONAS_ROOT%libext"@REM Place applications modules in the deploy/ directoryCOPY /Y "deploy*" "%JONAS_ROOT%deploy"@REM Spawn a JOnAS process and exit the current shell@REM ------------------------------------------------------------%JONAS_ROOT%binjonas.bat start
  • 20. DémonstrationDéploiement sur Azure
  • 21. III. INTEGRATION
  • 22. Administration de JOnAS dansAzure 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  …
  • 23. DémonstrationAdministrer JOnAS sur Azure
  • 24. Intégration avec SQL Azure 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]
  • 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. DémonstrationApplication / SQL AzureEssayez vous-même:
  • 27. IV. EVOLUTION
  • 28. Evolutions de l’intégration deJOnAS 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
  • 29. JOnAS sur Azure, Combien cacoute ● 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. JOnAS 390€ NLB par mois prix liste 1 Tera Octets 2 VMs - 2 x 1.6GHz Stockage 500GB de trafic 3.5 Go Mémoire 1 million d’accès http://www.microsoft.com/windowsazure/offers/ http://www.microsoft.com/windowsazure/pricing-calculator/
  • 30. Conclusion 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 Azurehttp://support.bull.com/ols/product/applications/Environnement-j2ee/help/kbf/g/eofjonas
  • 31. QUESTIONS ?
  • 32. Des ressources Windows Azuregratuites Testez Windows Azure Abonnés MSDN, vous gratuitement pendant bénéficiez de 90 jours Windows Azure  http://aka.ms/  http://aka.ms/ tester-azure-90j activer-azure-msdn
  • 33. Pour aller plus loin Prochaines sessions des Dev Camps Chaque semaine, les 10 Live Open Data - Développer des applications riches avec le février DevCamps 2012 16 Meeting protocole Open Data ALM, Azure, Windows Phone, HTML5, OpenData février Live Meeting Azure series - Développer des applications sociales sur la plateforme Windows Azure 2012 http://msdn.microsoft.com/fr-fr/devcamp 17 Live Comprendre le canvas avec Galactic et la librairie février Meeting three.js 2012 Téléchargement, ressources 21 février Live La production automatisée de code avec CodeFluent Meeting Entities et toolkits : RdV sur MSDN 2012 2 mars Live Comprendre et mettre en oeuvre le toolkit Azure pour http://msdn.microsoft.com/fr-fr/ 2012 Meeting Windows Phone 7, iOS et Android 6 mars Live Nuget et ALM 2012 Meeting Les offres à connaître 9 mars 2012 Live Meeting Kinect - Bien gérer la vie de son capteur 90 jours d’essai gratuit de Windows 13 mars 2012 Live Meeting Sharepoint series - Automatisation des tests Azure 14 mars Live TFS Health Check - vérifier la bonne santé de votre www.windowsazure.fr 2012 Meeting plateforme de développement 15 mars Live Azure series - Développer pour les téléphones, les 2012 Meeting tablettes et le cloud avec Visual Studio 2010 Jusqu’à 35% de réduction sur Visual 16 mars Live Applications METRO design - Désossage en règle dun Studio Pro, avec l’abonnement MSDN 2012 Meeting template METRO javascript 20 mars Live Retour dexpérience LightSwitch, Optimisation de www.visualstudio.fr 2012 Meeting laccès aux données, Intégration Silverlight 23 mars Live OAuth - la clé de lutilisation des réseaux sociaux dans 2012 Meeting votre application