Vous êtes sur la page 1sur 39

LIVRE BLANC

MIGRATION WEBSPHERE 6.1

http://blog.xebia.fr http://www.xebia.fr

Copyright Xebia 2007


Xebia IT Architects SAS 10/12 Avenue de lArche 92419 Courbevoie Cedex Tl : 01 46 91 76 16 mail : info@xebia.fr

Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Livre Blanc

Migration WebSphere 6.1


Migrer sa plate-forme applicative d'une version d'un serveur d'applications une autre est souvent vcu comme une dmarche coteuse, risque, dcorelle des enjeux oprationnels du mtier, et laissant entrevoir un retour sur investissement pour le moins douteux ; ceci est d'autant plus vrai que cette migration est impose de l'extrieur par le cycle de vie des produits de l'diteur, et contrainte par une date butoir - celle de la fin du support de la version canonique - qui peut entrer en conflit avec d'autres chances. La migration vers Websphere 6.1 n'chappe bien sr pas cette rgle et ce d'autant plus que la version 7 de Websphere est espre pour le premier trimestre 2008 ; pour autant, la richesse de la dernire mouture du serveur d'applications d'IBM permet d'envisager galement la migration comme une opportunit de profiter de nouvelles fonctionnalits, permettant d'amliorer la disponibilit des plates-formes, de simplifier les infrastructures ou encore de dployer des applications plus performantes et plus riches. Cette migration peut aussi tre l'occasion de rtudier le choix de la version de Websphere la plus adapte aux besoins d'infrastructure : Websphere base, Network Deployment, eXtended Deployment, chaque version apporte ses fonctionnalits propres - et ses cots. La migration vers Websphere 6.1 doit donc tre aborde selon deux axes : celui du risque, d'une part, dont la matrise passe par une analyse systmatique d'impact portant sur l'ensemble de la chane de production logicielle applications, environnements de dveloppement, infrastructure, architecture, administration, supervision, dploiement, performances, etc. ; celui de l'opportunit, d'autre part, qui permettra de dfinir une cible conforme aux enjeux du Systme d'Information des prochaines annes et d'en rajuster le cot total de possession. Cette migration doit galement s'adosser une mthodologie claire, autorisant une transition claire et matrise, et dont les jalons macroscopiques sont les suivants : analyse d'impact, dfinition de la cible et du mode de transition, exprimentation puis industrialisation.

Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Table des matires


Introduction : Migrer ou Sisyphe l'ouvrage................................................................................................ 3 Nouveauts de Websphere 6.1....................................................................................................................... 5 Langage et APIs......................................................................................................................................... 5 Web services.............................................................................................................................................. Scurit...................................................................................................................................................... Architecture................................................................................................................................................. Administration et maintenance.................................................................................................................... 5 6 7 7

Analyse d'impact.............................................................................................................................................. 8 Impacts sur l'architecture technique............................................................................................................ 8 Impacts sur l'exploitation et l'administration.............................................................................................. 18 Impacts sur les dveloppements.............................................................................................................. 22 Stratgie de migration................................................................................................................................... 27 Stratgie de migration pour l'exploitation.................................................................................................. 27 Stratgie de migration de l'infrastructure.................................................................................................. 27 Stratgie de migration des applications ................................................................................................... 29 Planning de migration / squencement ...................................................................................................... 31 Phase de Prototypage.............................................................................................................................. 31 Phase de dploiement.............................................................................................................................. 32 Phase de rationalisation............................................................................................................................ 33 Bibliographie.................................................................................................................................................. 34 Conclusion..................................................................................................................................................... 35 Annexe 1 - Matrices des versions d'APIs et bibliothques Websphere.................................................... 36 Annexe 2 - Fichiers et rpertoires prendre en compte lors des sauvegardes....................................... 38

3 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Introduction : Migrer ou Sisyphe l'ouvrage


Peut-tre vous souvenez-vous du fameux mythe de Sisyphe, dans lequel l'infortun est condamn ad vitam pousser un lourd rocher jusqu'au sommet d'une montagne, avant de le laisser rouler jusqu'en bas pour mieux pouvoir recommencer. La perspective de migrer sa plateforme JEE vers une nouvelle version d'un serveur d'applications plonge souvent ceux qui y sont contraints dans une humeur proche de celle de Sisyphe au pied de sa montagne : pour souvent avoir dj vcu une migration du mme ordre, ils savent que la tche sera pnible ; et s'ils suivent un tant soit peu l'actualit JEE, ils se doutent qu'une fois le sommet atteint, l'horizon d'un nouveau cycle se sera radicalement rapproch ... Une migration verticale opposer une migration horizontale, vers un autre serveurs d'application est en effet rarement motive par des objectifs oprationnels positifs. Si l'on change d'diteur pour gagner quelque chose de la souplesse, des performances, de l'argent -, on upgrade en gnral plus trivialement pour ne pas perdre le support de sa version canonique, et on le fait sous la pression d'une date butoir impose par l'diteur. Le tableau suivant fournit pour mmoire la date de fin de support des diffrentes versions de Websphere :

Version de Websphere 3.5 4.0 5.0 5.1 6.1

Fin du support 30 Novembre 2003 30 Avril 2005 30 Septembre 2006 26 Septembre 2008 ???????

Sisyphe, cependant, poussait perptuellement le mme rocher vers le mme sommet ; la migration vers Websphere 6.1 offre fort heureusement des perspectives nettement plus allchantes ; la monte de version globale du systme JEE - machine virtuelle, spcifications, API reste naturellement, et malgr la compatibilit annonce, une source de risque vidente pour la stabilit ou mme le fonctionnement des applications. Mais elle fournit galement au dveloppement la possibilit d'adopter les bibliothques et standards les plus rcents, et de bnficier des nombreuses innovations de la javasphre. Websphere 6.1 vient galement avec un ensemble d'amliorations portant sur tous les aspects du dploiement d'une infrastructure JEE : architecture haute disponibilit, administration, supervision, dploiement, performances, etc.

4 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

C'est la raison pour laquelle notre premier chapitre s'attachera faire un tour d'horizon aussi exhaustif que possible des nouveauts de la plate-forme, et en particulier de celles qui semblent les mieux mme de fournir des leviers de retour sur investissement la migration. Par ailleurs, les applications J2EE ont souvent par nature des caractristiques trs complexes :

Ce sont des applications typiquement distribues sur diffrentes couches, au moyen de diffrents protocoles : Client, Prsentation, Fonctionnel (Services mtier), Intgration et Ressources Elles utilisent une vaste palette technologique : JSPs, Servlets, EJBs, JDBC, JMS, JTS/XA, JCA, SOAP, CORBA, etc. Elles intgrent un grand nombre de bibliothques et logiciels tiers : Bases de donnes, Annuaires, Logging, Persistance, Frameworks MVC, IoC et autres, MOMs, ORBs, Moniteurs transactionnels, etc. Elles couvrent des domaines fonctionnels trs divers Elles ncessitent un niveau de qualit de service trs lev : Temps de rponse et Dbit contractualiss, Haute Disponibilit, Augmentation de capacit

La matrise de cette complexit est souvent le fruit dune maturation longue et minutieuse, et dune mise au point progressive quune migration trop brutale, ou mal prpare, risque de mettre en pril. Notre second chapitre s'attachera donc dcrire l'ensemble des impacts de la migration, en particulier sur tous les aspects touchant l'exploitation de la plate-forme, et fournir les cls permettant de minimiser ds les phases de prparation les risques inhrents la migration. Le dernier chapitre, enfin, abordera le thme de la mthode : quelle stratgie adopter pour la migration Big Bang ou cohabitation - ?, comment planifier les diffrentes tapes et comment les articuler entre elles ? Nous esprons qu'au terme de cette lecture, vous aborderez la cte sinon avec enthousiasme, du moins avec un sourire confiant, et le sentiment que l-haut, l'herbe est plus verte.

5 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Nouveauts de Websphere 6.1


Langage et APIs
Le support de Java 5 est indniablement l'une de nouveauts les plus marquantes de Websphere 6.1, celle qui souvent justifie pleinement la migration aux yeux des dveloppeurs. La version 5 de Java apporte en effet la plus grande volution du langage Java depuis sa cration ; sans exhaustive :

L'introduction dans la syntaxe Java des gnriques et des types numrs apportent une clarification et une meilleure auto-documentation du code. Les annotations permettent d'allger les fichiers de configuration en dcrivant dans le code les informations de configuration 'statiques' (mapping objet-relationnel, dmarcation des transactions, association commande-page pour la couche MVC ...). Les frameworks de dernire gnration, Struts2, Spring, Hibernate et JAXB/JAX-WS en premier lieu, utilisent largement les annotations. Ct nouvelles API, citons la librairie util.concurrent, qui adresse le besoin grandissant de dveloppement multi-thread, et l'instrumentation du Classloader qui permet la gnralisation de la Programmation Oriente Aspect.

En complment de ces volutions du langage, la JVM 5 d'IBM a galement t l'objet d'une modernisation substantielle. Ses performances, en particulier, ont t significativement amliores par l'introduction d'une gestion gnrationnelle de la mmoire (Generational Concurrent Garbage Collector) une approche introduite par Sun dans sa propre JVM, HotSpot, ds la version 1.3. Le GC gnrationnel a un impact spcialement sensible sur les performances des applications fortement consommatrices d'objets dots d'une trs courte dure de vie ce qui est typiquement le cas des applications Web. La gestion des threads ainsi que la compilation Just-in-time ont elles aussi t optimises. Websphere 6.1 est certifi J2EE 1.4 (on se reportera l'annexe 1 pour une matrice complte des niveaux de spcification correspondant). Certaines innovations mritent une attention particulire, en raison des axes de migration volutive qu'elles offrent :

Invocations asynchrones et callbacks avec JCA 1.5 Unification des APIs point-to-point et publish-subscribe avec JMS 1.1 WorkManager (JSR 237) and Timers (JSR 236) pour les applications asynchrones et planifies (scheduled)

Web services
Pour les applications qui ont choisi l'implmentation SOAP de Websphere plutt qu'une librairie tierce (telle que Axis), Websphere 6.1 apportera des amliorations longtemps attendues. La nouveaut majeure est l'introduction du runtime client qui permet de dployer des stubs SOAP Websphere hors du runtime Websphere, mme sur des JVM non IBM1. Cette nouveaut simplifie le processus de build en permettant de gnrer simultanment les implmentations clientes et serveurs avec la mme librairie SOAP alors qu'il tait au pralable ncessaire d'utiliser une librairie tierce (le plus souvent Axis) pour la couche cliente.

Voir Infocenter : Running an unmanaged Web services JAX-RPC client


6 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Par ailleurs, Websphere 6.1 introduit le support de nouvelles fonctionnalits WS-* dont le succs auprs des autres acteurs des Web Services n'est pas encore avr :

Web Services Notification (WS-N) standardise les interactions entre les web services grce des mcanismes de notification et d'vnements. Web Services Interoperability Basic Security Profile (WS-I BSP) standardise les mcanismes de scurisation des web services pour faciliter l'interoprabilit Web Services Business Activity (WS-BA) standardise le 'rollback' des transactions dans le cadre des commits multi-phase

Il faut toutefois rappeler deux bmols l'implmentation Websphere de SOAP qui n'ont pas t corrigs avec la V6.1:

La documentation de la librairie est toujours succincte. L'infocenter est peu dtaill et les forums Websphere abordent rarement la couche SOAP. Il faut donc s'organiser pour consulter frquemment le support Websphere La version de la librairie SOAP de Websphere est toujours lie la version de Websphere. Il faudra donc migrer vers Websphere 7 (!) pour profiter des nouvelles fonctionnalits de cette librairie. Pour mmoire, les nouveauts introduites dans la v 6.1 n'ont pas t backportes sur Websphere 5.1 pour les clients qui n'ont pas encore migr.

Ce problme d'adhrence de la version d'une API la version de Websphere est particulirement dlicat pour les technologies Web Services qui voluent trs vite. La capacit monter de version de Websphere doit donc tre un paramtre important lors du choix d'une implmentation SOAP (websphere-soap vs. Axis vs Xfire)

Scurit
Pour les applications qui utilisent authentifications et autorisations J2EE, Websphere grait jusqu'ici les utilisateurs dans une seule source de donnes (systme d'exploitation, serveur LDAP ou Custom User Registry ). La version 6.1 offre maintenant la possibilit de grer en lecture et en criture les identits stockes dans plusieurs sources de donnes (LDAP, JDBC ou fichier) grce au Federated User Repository. Cette amlioration permettra d'viter le dveloppement de complexes Custom User Registry rputes coteuses en nergie aussi bien pour les quipes de dveloppement que celles de dploiement.

Pour aller plus loin sur cet aspect :

Expand your user registry options with a federated repository in WebSphere Application Server V6.1 by IBM Software Services for Websphere in IBM DeveloperWorks - WebSphere Developer Technical Journal WebSphere Application Server V6.1: What's new in security? by IBM Software Services for Websphere in IBM DeveloperWorks

7 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Architecture
Websphere embarque une nouvelle version de son Embedded Messaging Engine, un bus JMS qui suffit pour les communications entre serveurs d'une cellule Websphere. La substitution de Websphere MQ par ce moteur JMS intgr peut s'avrer une source d'conomies substantielles tant en cots de licence qu'en charge d'exploitation. Websphere 6 offre en standard la haute disponibilit pour la plupart des services critiques (moteur de messages JMS, gestionnaire des transactions, rpartisseur de charge ...) avec un simple systme de fichiers distribus comme pr-requis d'infrastructure. Le dernier single point of failure est le Deployment Manager mais son rle est dsormais limit la configuration des serveurs et n'est donc plus critiques pour le fonctionnement des applications dployes. Si la haute disponibilit de ce composant est requise, une architecture de cluster actif-passif avec un rpertoire partag pour la configuration est recommande. Par ailleurs, la fragilit connue de single point of failure du serveur LDAP a t rsolue avec les nouveaux mcanismes de reprise sur panne LDAP.

Administration et maintenance
La grande nouveaut de Websphere 6.1 en matire dadministration est lintroduction dun vritable environnement dadministration intgr : Websphere Application Server Toolkit (AST). AST est ladministration Websphere ce que les IDEs sont au dveloppement Java. On y retrouve la possibilit dadministrer distance les serveurs Websphere, un diteur et un dbogueur de scripts jython-wsadmin, des diteurs graphiques pour les fichiers de configuration spcifiques Websphere (ibm-web-bnd.xmi, ibm-webext.xmi ) et les fonctionnalits standards Eclipse (versionnage des fichiers ). Ladministration Websphere aussi t simplifie grce lintroduction dAPI de scripting de haut niveau orientes tches (commandes AdminTask de l'API wsadmin). Ladministration des serveurs web associs des serveurs Websphere t amliore par lintgration des commandes dadministration (stop, start, reconfigure et statut) dans la console dadministration Websphere. Enfin, linstallation des serveurs Websphere a t simplifie avec lintroduction de lInstallation Factory pour crer des packages d'installation sur mesure (composes des binaires WAS et potentiellement de fix packs, de paramtres de configuration et d'EARs). Cet outil bnficiera principalement aux grandes topologies Websphere ND qui ncessitent de frquentes installations de serveurs et aux diteurs de progiciels qui embarquent un serveur dapplication Websphere dans leur produit.

Websphere 6.1 permet une monte de version globale de la plateforme JEE. Java 5, J2EE 1.4, JVM optimise, meilleur support des Web Services, autant d'innovations qui ouvrent la voie des amliorations sensibles de la productivit des quipes de dveloppement, une simplification de certaines architectures logicielles et des gains notables de performances.

8 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Analyse d'impact
Impacts sur l'architecture technique
Serveurs et systmes Websphere propose de grer la tenue en charge par une architecture de type scalabilit horizontale aussi appele scale-out. Le principe de ces architectures est de mettre en cluster des serveurs de puissance limite faible cot plutt que d'ajouter des ressources (CPU et et RAM) des serveurs complexes. Pour augmenter la puissance de traitement, il suffit d'ajouter un nouveau noeud au cluster. Les serveurs lames et les serveurs 1U sont particulirement adapts ce type d'architecture. Le mode de facturation de Websphere est particulirement adapt aux serveurs lames (x86 et Power) pour lesquels IBM divise par deux le prix des licences1. Par ailleurs, si les serveurs lames sont frquemment utiliss avec Linux ou Windows2, les Unix historiques sont aussi disponibles sous forme de lames3. Il est aussi intressant de noter que les architectures serveurs lames sont compatibles avec la virtualisation des ressources. L'architecture On Demand de Websphere eXtended Deployment est l'approche scale-out la plus pousse de la gamme Websphere. Il faut toutefois garder en mmoire que Websphere XD est adapt des besoins tant en terme de tenue la charge qu'en disponibilit. La plupart des architectures Websphere se contenteront des versions Base et ND.

Pour aller plus loin :

IBM Education : Websphere Application Server V6 - high Availability Overview - v6 : HA configuration (pdf) Redbook : Using WebSphere Extended Deployment V6.0 To Build an On Demand Production Environment

50 Units de Valeur en serveur lame contre 100 Units de Valeur pour un serveur unix (AIX P-Series, HP 9000 ...), voir IBM Value Unit Calculator 2 IBM BladeCenter HS21, HP Proliant BL20p Blade Server ... 3 IBM BladeCenter JS21 pour AIX, HP Integrity BL60p pour HP-UX ...
1

9 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Le tableau suivant indique les versions logicielles minimum pour installer Websphere Application Server V6.1 : Systme d'exploitation AIX Pr-requis 5L 5.2 avec Maintenance package 5200-07 5L 5.3 avec Service Pack 5300-04-01 Red Hat Enterprise Linux AS/ES/WS, V3.5+ et V4.2+ SUSE Linux Enterprise Server, V9 SP2 + et V10+ Red Flag DC, Version 5.0 SP1+ 2000 SP4+ 2003 SP1+ XP SP3+ L'installation sur d'autres distributions (Fedora, Unbuntu ...) est techniquement possible mais non supporte. Commentaire

Linux x86

Windows

Sauvegarde et restauration Le stockage sous forme de fichiers de la configuration Websphere introduit avec la V4 permet l'utilisation de systmes de sauvegarde incrmentale des fichiers. La frquence de sauvegarde est adaptable suivant le type de fichier pour limiter l'impact des procdures de sauvegarde sur la performance des environnements :

Composant Configuration du Deployment Manager Configuration des Application Servers Binaires et configuration

Frquence de sauvegarde Tous les jours Aprs chaque installation d'application Avant et aprs chaque installation de fixpack

Les systmes gnriques de sauvegarde et restauration tels que BrightStor ARCserve Backup, HP OpenView Storage Data Protector ou EMC Networker ne ncessitent pas de mise jour. Les quipes d'exploitation doivent seulement configurer le systme pour qu'il sauvegarde les nouvelles arborescences de rpertoires (voir Annexe 2 : Fichiers et rpertoires prendre en compte lors des sauvegardes ). Les systmes de sauvegarde et restauration spcialiss avec un plugin Websphere tels que IBM Tivoli Storage Manager for Application Servers doivent d'abord tre mis jour pour prendre en compte Websphere 6.1 (l'arborescence des rpertoires chang). Ensuite, les quipes d'exploitation doivent configurer le systme pour qu'il sauvegarde l'application.

10 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Supervision Les besoins d'exploitation et de supervision sont trs diffrents selon les environnements. Les environnements de production et de pr-production ncessitent fiabilit et rigueur alors que les environnements de dveloppement, d'intgration et de recette doivent faciliter les dploiements frquents et le travail des quipes de dveloppement. Les procdures utilises sur les environnements de production doivent tre guids par la rigueur et la fiabilit. Ce sont des environnements qui sont beaucoup plus lcoute des besoins des quipes de production que des besoins des quipes de dveloppement. Bien que celui puisse tre contraignant, la mme rigueur doit sappliquer sur lenvironnement de prproduction qui permet ainsi de valider les procdures destines aux environnements de production. A linverse, les environnements de dveloppement (intgration, recette, tests ) doivent eux tre au service des quipes projet. La productivit doit y tre privilgie pour apporter de lagilit aux quipes projets. Les aspects dauditabilit, de traabilit et de fiabilit sont moins importants hors de la production. Les environnements de production et pr-production devraient donc tre :

Exploits par des scripts d'administration et des systmes d'administration centraliss Superviss par des systmes de supervision intgrs Scuriss avec des firewalls stricts et des mots de passe seulement connus des quipes d'exploitation

Les autres environnements (dveloppement, intgration, tests, etc.) devraient pour leur part tre :

Exploits par la console d'administration de Websphere et des scripts. Les scripts sont prfrs pour leur Supervis avec parcimonie par un systme centralis de supervision (systmes de fichier, CPU, mmoire) Peu scuriss avec des mots de passe connus des quipes de dveloppement et des firewalls lches (cloisonnant les environnements les uns des autres mais pas entre les dveloppeurs et les serveurs)

Websphere expose ses donnes de performance (Performance Monitoring Infrastructure - PMI) au travers de la PerfServlet et du Connecteur JMX. La version 6.0 a introduit un nouveau format de donnes de performance qui repose sur J2EE 1.4 Performance Data Framework (un sous ensemble de JSR-77 : J2EE Management) ; ce nouveau format est incompatible avec le format des versions 5.x. Cependant, la PerfServlet supporte un mode compatible ascendant grce l'ajout du paramtre "version=5" dans l'URL d'accs (voir Infocenter : PerfServlet output). Les systmes d'administration et de supervision qui reposaient sur la PerfServlet et le connecteur JMX supporteront sans difficult Websphere 6.1. La plupart des outils de supervisions pour Websphere supportent dj la version 6.1. On retrouve notamment :

BMC Performance Manager for Web Application Servers (anciennement BMC Patrol) (cf BMC Product Availability/Compatibility) HP OpenView Smart Plug-in for IBM WebSphere Application Server IBM Tivoli Composite Application Manager for WebSphere Mercury SiteScope Websphere Solution Template Hyperic HQ Agent plugin for Websphere
11 / 39

Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Serveurs Web IBM Http Server (IHS) est le serveur web le mieux intgr aux architectures Websphere. La version 6.1 a introduit des fonctionnalits qui rendent IHS dsormais beaucoup plus intressant que Apache. IHS peut dsormais tre intgralement administr (stop, start et configuration) au travers de la console web et du scripting Websphere. Cette nouvelle fonctionnalit amliore la fiabilit des dploiements et diminue les cots d'exploitation1. L'architecture Websphere de rfrence est d'utiliser un rpartiteur IP qui va indiffremment rpartir les requtes sur tous les serveurs Web et dlguer ces derniers le routage vers les serveurs d'applications. Le rpartiteur fournit la haute disponibilit et les serveurs Web fournissent la tenue la charge et le routage. Dlguer un rpartiteur IP le routage est sensiblement plus complexe que de reposer sur les serveurs web car il faut mettre jour la configuration du rpartiteur lors des installations/dsinstallations d'applications (les quipes sont le plus souvent diffrentes et les technologies ne sont pas intgres) alors que la propagation des configurations aux plugins des serveurs web est elle transparente.

Voici les pr-requis logiciels pour les diffrents serveurs Web supports :

Serveur Web

Pr-requis 6.0.2 6.1 2.0.54 5.0 6.0 6.5.4 7.0 6.0 SP9 6.1 SP3

Commentaire IHS est une version d'Apache HTTPD enrichie de fonctions spcifiques IBM (intgration Websphere, SSL ...)

IBM HTTP Server (IHS)

Apache HTTP Server

Microsoft IIS

Lotus Domino Enterprise Server

Sun Java System Web Server

Source : List of supported software for WebSphere Application Server V6.1

L'administration d'IHS depuis le Deployment Manager ncessite l'ouverture d'une communication HTTP depuis le Deployment vers le port d'administration du serveur IHS
1

12 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Fonctionnalits des serveurs Web :

Fonctionnalit

IBM HTTP Server

Autre serveurs web (Apache , IIS ...)

Commentaires

Supervision du statut du serveur Arrter / Dmarrer le serveur Gnration de la configuration du plugin Propagation du fichier de configuration du plugin Visualisation des fichiers de log du plugin dans la console d'administration Visualisation des fichiers de log du serveur web dans la console d'administration Visualisation des fichiers de configuration dploys sur les plugins depuis la console d'administration Websphere Edition et visualisation du fichier de configuration du serveur web depuis la console d'administration Websphere


Le plugin Websphere peut automatiquement recharger sa configuration si elle a change sans ncessiter de redmarrage du serveur web (activ par dfaut toutes les 60 s) Gnre le fichier plugin-cfg.xml sur le Deployment Manager mais ne le dploie pas sur les serveurs web cibles Dploie le fichier plugin-cfg.xml sur les serveurs web cibles

13 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Bases de donnes L'accs aux bases de donnes depuis un serveur J2EE est maintenant compltement banalis. Il est souhaitable d'utiliser des drivers JDBC de type 4 (100% pure Java) pour accder aux SGBD. Concernant l'utilisation des DataSources, Websphere 6.1 incite plus fortement au respect de la norme J2EE en rendant deprecated les lookups JNDI directs 1. Il faut dornavant dclarer une <resourceref> dans le fichier web.xml (ou ejb-jar.xml) et utiliser la syntaxe ctx.lookup("java:comp/env/jdbc/my-datasource") au lieu de l'ancienne syntaxe ctx.lookup("jdbc/my-data-source").

Voici les pr-requis logiciels pour les principales bases de donnes :

Base de donnes

Pr-requis DB2 pour iSeries 5.2, 5.3 ou 5.4

IBM DB2

DB2 pour z/OS V7 ou V8 DB2 pour Linux, UNIX, and Windows V8.2 FP4a, V8.3 FP6, V9 9.2.0.7

Oracle

10.1.0.4 10.2.0.1 2000 SP4 2005 12.5.2 15.0 Source : List of supported software for WebSphere Application Server V6.1

MS SQL Server

Sybase

Voir Infocenter : Direct and indirect JNDI lookup methods for data sources
14 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Serveur LDAP La scurit Websphere permet l'utilisation d'un serveur LDAP pour stocker les profiles utilisateurs. Les architectures hautement disponibles devraient utiliser le mcanisme de clustering LDAP introduit dans la version 6.0. Il n'est alors plus ncessaire d'utiliser une solution externe telle qu'un rpartiteur IP pour mettre en place la haute disponibilit LDAP.

Voici les pr-requis logiciels pour les principaux serveurs LDAP du march :

Serveur LDAP

Pr-requis 5.2 6.0 1.6 1.7 6.5.4 7.0 8.7.3 8.8 5.1 SP4 5.2 2000 2003

IBM Tivoli Directory Server

IBM z/OS Security Server

Lotus Domino Enterprise Server

Novell eDirectory

Sun ONE Directory Server

Windows Active Directory

15 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Serveurs JMS Les APIs daccs aux middlewares de messages (MOM) ont connu une volution trs similaire celles des drivers JDBC. Les premiers connecteurs de MOM en Java reposaient sur des librairies au style de programmation C qui faisaient appel aux libraires natives (Websphere MQ Client ) ; cette situation tait comparable aux premiers driver JDBC de type 2 qui reposaient sur les libraires natives des SGBD (Oracle Call Interface / OCI ). Aujourdhui, comme les drivers JDBC de type 4 remplacent leurs prdcesseurs de type 2, les connecteurs JMS daccs des MOM sont matures et vont remplacer les connecteurs historiques. Il est de plus intressant de noter que lAPI JMS se rpand au del du monde Java et que les diteurs de MOM dveloppent des API similaires sur dautres langages comme C++ ou .Net (en particulier Websphere MQ avec XMS1 et Tibco EMS avec ses API .Net, C++ et Cobol). Websphere offre dsormais une forte intgration JMS et les bnfices de cette API sont nombreux pour les projets. En premier lieu, JMS offre tous les atouts d'un standard : dcouplage entre les diteurs, qui se concentrent sur le dveloppement du connecteur et les dveloppeurs applicatifs, qui n'ont qu'une seule API apprendre ; documentation plthorique ; profusion des bibliothques supportant le standard (en particulier le framework Spring) ; disponibilit de ressources formes sur le march des dveloppeurs Java. Il est d'ailleurs possible d'utiliser une implmentation JMS alternative lors des phases de dveloppement afin de simplifier les tests unitaires (Apache ActiveMQ est ce titre trs intressant). L'introduction dans JMS 1.1 d'une API unifie pour les modles point--point et publication-souscription amliore de surcrot l'volutivit des applications. Notons enfin que JMS est dsormais intgr aux fonctionnalits d'administration et de supervision de Websphere, et qu'il est possible d'voluer vers Embedded Messaging Engine de Websphere (SIBus) pour remplacer Websphere MQ.

Voici les pr-requis logiciels pour l'intgration de Websphere MQ :

Logiciel

Pr-requis 5.3.12 6.0.1.1

Commentaires La fonctionnalit de Publish-Subscribe disponible sous forme de support-pack pour Websphere MQ 5.3 est dsormais inclue Websphere MQ 5.3.12 et 6.x

IBM Websphere MQ

Voir Introducing XMS - The IBM Message Service API in IBM DeveloperWorks
16 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Haute disponibilit Websphere 6.1 propose dsormais d'emble la haute disponibilit pour tous les services critiques. Le seul service qui n'offre pas de reprise sur panne transparent est le Deployment Manager pour ses fonctions de modification de la configuration et de dploiement des applications ; ce service nest cependant pas critique pour lexcution des applications dj dployes. Websphere 6 a introduit le 'hot standby' et le 'peer failover' des services centraux critiques (routage WLM, moteur de Messages JMS, gestionnaire de transactions ...). Le gestionnaire de haute disponibilit (High Availability Manager) excute les services critiques (dont lui-mme) sur un serveur disponible; si ce serveur devient indisponible, le service est transfr automatiquement sur un autre serveur disponible. Par ailleurs, la version 6 a introduit le support de la haute disponibilit transparente du serveur LDAP grce un mcanisme de clustering1. Il n'est donc plus ncessaire de recourir des systmes de haute disponibilit par un rpartiteur IP comme c'tait le cas sur les versions prcdentes. L'utilisation des transactions distribues se rpand avec l'essor des architectures SOA. Un scnario dsormais frquent est l'utilisation de transaction distribues JDBC et JMS. Websphere 6 rduit grandement le temps de restauration des transactions distribues en cas de panne d'un serveur grce l'introduction d'un nouveau mcanisme de 'failover' du Gestionnaire de Transaction bas sur un simple rpertoire partag2.

WAS ND V6 High Availability - Transaction service high availability using NAS

Pour aller plus loin sur les aspects de haute disponibilit :

IBM Education Assistant: IBM WebSphere Application Server Workload management and high availability IBM Redbook: WAS ND v6 High Availability

1 2

Voir Infocenter : Security failover among multiple LDAP servers Voir Redbook WAS ND v6 High Availability chapitre 6.7 Transaction Manager high availability
17 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Impacts sur l'exploitation et l'administration


Procdure d'installation de Websphere La V6 a introduit la Websphere Installation Factory pour crer des packages d'installation de Websphere Application Server. Ces packages peuvent tre composs des binaires avec des fixpacks, des paramtres de configuration et des EARs pr-dploys. Cet outil devrait tre utilis sur les grandes topologies Websphere qui ncessitent des installations rptes de serveurs. Dans ces scnarios, Websphere Installation Factory offrira une productivit accrue et une plus grande fiabilit grce l'automatisation du processus et la diminution du risque de facteur humain inhrent aux procdures d'installation complexes.

La nouvelle console d'administration Web La nouvelle console d'administration offre la mme ergonomie que celle de la version 5.1 avec une apparence visuelle nouvelle lie la modularit de la console. Cette modularit permet la gamme des produits Websphere d'utiliser une console d'administration unifie dans laquelle les middlewares (serveur d'application, ESB, portail ...) s'intgrent sous forme de plugins.

Scripts d'administration Les oprations d'administration de Websphere peuvent tre ralises par scripts aussi bien que par la console d'administration. Les scripts offrent de nombreux avantages :

Traabilit : les scripts et leurs logs d'excution peuvent tre archivs. Rptabilit : les scripts peuvent tre rejous. Fiabilit : une fois les scripts valids (par exemple les scripts de dploiement d'applications), ils rduisent fortement le risque du facteur humain dans les procdures d'exploitation Productivit : l'excution de scripts est beaucoup plus efficace que de dlguer des tches d'administration faible valeur ajoute des humains. Ce gain est particulirement sensible lors des processus de build/dploiement.

Jython remplace dsormais JACL comme langage de scripting privilgi. Jython est le langage de scripting privilgi de Weblogic et Websphere. Ce langage est en gnral peru comme beaucoup plus facile d'utilisation que JACL (driv de TCL) Les objets AdminApp et AdminTask (AdminTask a t introduit en V6) sont les APIs privilgies de scripting de Websphere. Elles offrent des commandes orientes tches de haut niveau quand AdminConfig est une API de plus bas niveau par laquelle on manipule directement les documents de configuration de Websphere.

18 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Websphere offre un haut niveau de compatibilit des scripts entre les versions 5.x et 6.1.

Compatibilit des langages de scripting :

JACL a t migr de la version 1.2.6 la version 1.3.2. Cette nouvelle version introduit le support de la syntaxe d'expressions rgulires de TCL qui n'est pas compatible ascendante avec les motifs d'expression rgulires de la version 1.2.6 Jython a t migr de la version 2.1a3 la version 2.1. Cette migration est compatible ascendante L'attribut transactionLogDirectory a t dplac de ApplicationServer.TransactionService ServerEntry.recoveryLog. L'ancienne valeur reste disponible tant que la nouvelle valeur n'est pas modifie

Changements des objets de configuration

V5.x Jython syntax wsadmin> txService = AdminConfig.list('TransactionService', server1) wsadmin> txLogDirectory = AdminConfig.showAttribute(txService,'transactionLogDirectory') V6.1 Jython syntax wsadmin>serverEntry = AdminConfig.list('ServerEntry') ... wsadmin> recoveryLog = AdminConfig.showAttribute(serverEntry, 'recoveryLog') wsadmin> txLogDirectory = AdminConfig.showAttribute(recoveryLog, 'transactionLogDirectory')

L'attribut processDefinition de l'objet Server a t renomm en processDefinitions qui est devenu une liste d'ID spars par des caractres espaces (e.g. [id1 id2 ... idx])

V5.x Jython syntax wsadmin>javaProcessDef = AdminConfig.showAttribute(server, 'processDefinition') V6.1 Jython syntax wsadmin>javaProcessDefsAsString = AdminConfig.showAttribute(server, 'processDefinitions') wsadmin>javaProcessDefs = javaProcessDefsAsString[1:len(javaProcessDefsAsString) 1].split(' ') wsadmin>javaProcessDef = javaProcessDef[0]

19 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Outils de diagnostique et de rsolution des incidents La principale volution de la version 6.1 est la consolidation des outils de diagnostique et de rsolution des incidents dans la console d'administration Web et dans le nouveau IBM Support Assistant. Les outils spcifiques Websphere sont dornavant tous disponibles au travers de la console d'administration Web et les outils gnriques java sont eux regroups dans IBM Support Assistant.

Les outils de diagnostic disponibles dans la console sont les suivants :

Fournisseurs de diagnostique Ces outils fournissent les informations de diagnostique de chacun des composants du serveur Websphere (donnes d'tat, donnes de configuration et tests d'auto-diagnostique). Le nombre de ces outils est amen augmenter avec les versions de Websphere. Ces outils sont similaires aux Defaults Tests disponibles dans Websphere MQ 6.

Tivoli Performance Viewer (TPV) Outil de visualisation des donnes de performances collectes par la l'infrastructure PMI (Performance Monitoring Infrastructure). TPV a migr d'un client lourd une interface web intgre dans la console d'administration. Le gain est une facilit accrue d'utilisation (il n'est plus ncessaire d'installer l'application cliente et de grer les problmes de firewalls) ; cependant, l'ergonomie n'est pas encore au niveau de celle qu'offrait la version prcdente qui tait distribue sous forme de client lourd (c'est particulirement le cas lorsqu'on suit un nombre important d'indicateurs).

Visionneuse de Classloader Cet outil permet de diagnostiquer les problmes de classpath et de chargement de classe en affichant les jars chargs par les classloaders hirarchiques d'une application. La visionneuse de classloader optionnelle en V5 est dsormais intgr en standard la version 6.

20 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Les outils de diagnostique disponibles dans IBM Support Assistant sont les suivants :

IBM Support Assistant (ISA) ISA est le nouveau socle bas sur Eclipse des outils de diagnostique et de support IBM

Regroupe les outils de diagnostiques (pour Websphere, DB2, Rational ...) Offre un point d'entre de recherche unifi pour les informations sur les produits IBM (fixes, technotes, infocenters ...) Facilite la communication avec le support IBM grce un assistant de cration de PMR

IBM Heap Analyzer (aka Memory Dump Diagnostic for Java) Outil de diagnostique des fuites mmoire.

IBM Pattern Modeling and Analysis Tool for Java Garbage Collector (PMAT) Outil d'aide au paramtrage de la Heap des JVM et de diagnostique des problmes de fragmentation du Heap. PMAT va tre remplac par le nouveau Extensible Verbose GC Toolkit.

IBM Thread and Monitor Dump Analyzer for Java Technology Outil de diagnostique des problmes de threads des JVM (threads suspendus, inter-verrous, goulets d'tranglement ...).

Extensible Verbose GC Toolkit EVTK est le successeur de PMAT. EVTK a t conu comme un plugin de ISA, il est donc parfaitement intgr et prfigure l'ergonomie qu'offriront les futurs outils de troubleshooting IBM.

21 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Impacts sur les dveloppements


Quel environnement de dveloppement (IDE) ? Si Websphere 5.X tait naturellement associ WSAD , Websphere 6.1 ncessite d'utiliser un nouvel environnement de dveloppement dont le choix est cette fois ci ouvert. Rational Application Developer (RAD) est le successeur naturel de Websphere Studio Application Developer (WSAD). Dans la ligne de WSAD, RAD est l'IDE qui offre tous les assistants pour exploiter les fonctionnalits spcifiques de Websphere (EJB, Portlet, JSF, SOAP ...). Cependant, la place de RAD est compltement diffrente aujourd'hui de celle que WSAD occupait son poque. La banalisation des standards J2EE, le succs du lightweight J2EE (Struts/Spring/Hibernate) et l'essor d'Eclipse ont stimul le march des IDEs qui n'est plus le domaine rserv des diteurs haut de gamme et des produits coteux. Eclipse Web Tools Project est devenu un IDE mature qui rpond aux besoins de beaucoup de projets lightweight J2EE (Struts/Spring/Hibernate). Il est reconnu pour sa simplicit d'utilisation, sa gratuit et sa popularit auprs des dveloppeurs. Pour rpondre au succs d'Eclipse Web Tools Project, IBM a introduit Websphere Application Toolkit, un IDE intermdiaire entre Eclipse et le sophistiqu et onreux RAD. Websphere AST peut tre vu comme une Eclipse Web Tools Project avec les plugins spcifiques Websphere comme des diteurs de fichier de configuration spcifiques Websphere et environnement de scripting wsadmin (voir la matrice des fonctionnalits infra). Cependant, l'absence d'un Tomcat Test Environment diminue sensiblement l'intrt de Websphere AST comme IDE principal d'une quipe de dveloppement.

L'appropriation du nouvel IDE (RAD, AST ou Eclipse) par les quipes de dveloppement sera facilit du fait qu'ils disposent tous de l'ergonomie propose par le projet Eclipse.

La richesse et la complmentarit de ces IDE et l'omniprsence d'Eclipse permet aujourd'hui d'quiper les quipes de dveloppement d'un mix d'Eclipse, de Websphere AST et de RAD qui seront utiliss en fonctions des tches accomplir.

Ainsi, les projets Lightweight J2EE (Struts/Spring/Hibernate) pourront utiliser majoritairement Eclipse Web Tools Project complt de quelques postes Websphere AST voire RAD pour les tches spcifiques Websphere. Spring, Hibernate et Struts tant valids aussi bien sur Websphere que sur Tomcat, il est possible de dvelopper sur Tomcat Test Environment et d'intgrer sur Websphere.

22 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

En revanche, les projets 100% pure Websphere (Websphere-JSF, Websphere-SOAP, EJB ...) utiliseront principalement RAD pour apporter un Websphere Test Environment chaque dveloppeur. Eclipse sera alors utilis la marge pour des tches trs ponctuelles.

Famille des environnements de dveloppement IBM

23 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Cette matrice prsente les fonctionnalits des diffrents IDE : Websphere Application Server Toolkit (AST) Rational Application Developer (RAD)

Eclipse Web Tools Project

Commentaires

Java JSP, Servlet, EJB


Release 1.0 annonce pour Juillet 2007

?
Ncessite d'installer Websphere sur le poste de travail


avec le support des spcificits Websphere

Java Server Faces (JSF)

RAD est le seul IDE qui exploite pleinement les spcificits de l'implmentation Websphere JSF Ncessite l'installation de Tomcat sur le poste de travail RAD est le seul IDE qui intgre un runtime Websphere 6.0. Une licence Websphere est ncessaire pour AST et Eclipse WTP RAD est le seul IDE qui intgre un runtime Websphere 6.1. Une licence Websphere est ncessaire pour AST et Eclipse WTP

Tomcat Test Environment

?
Ncessite d'installer Websphere sur le poste de travail

Websphere 6.0 Test Environment

Websphere 6.1 Test Environment

Prvu pour WTP 2.0 annonc en 3Q 2007

?
Ncessite d'installer Websphere sur le poste de travail

diteurs graphiques pour les fichiers de configuration spcifiques WebSphere Environnement de scripting Jython Websphere Support des spcificits Websphere SIP & Portlet Accs aux bases de donnes


24 / 39

Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Eclipse Web Tools Project

Websphere Application Server Toolkit (AST)

Rational Application Developer (RAD)

Commentaires

Outils de contrle de la qualit du code

?
Avec Eclipse Test & Performance Tools Platform (TPTP)

?
Avec Eclipse Test & Performance Tools Platform (TPTP)


Seulement disponible avec Rational Software Architect

Des plugins open source complmentaires sont disponibles (CheckStyle, FindBugs ...) Eclipse TPTP n'est pas encore au niveau des produits commerciaux

Profiling

Modlisation UML

Bug fix frquents par 'Eclipse update' mais transparents pour les dveloppeurs

Calme Suffisamment souvent pour bnficier des dernires amliorations d'Eclipse sans prendre de vitesse les quipes de dveloppement Peu consommateur en CPU et en RAM (similaire Eclipse WTP)

Cycle de nouvelles versions

Lent Pendant plusieurs mois, RAD ne supportait pas le nouveau Websphere 6.1 Trs consommateur en CPU et RAM. Un poste de travail rcent et haut de gamme avec au 2 Go de RAM est ncessaire IBM source : The AST is licensed as a component part of WebSphere Application Server. Unlimited copies can be made provided the AST is used for developing applications for WebSphere Application Server V6.1 .

Configuration matriel requise

Peu consommateur en CPU et mmoire

Prix

Gratuit et Open Source. Support commercial disponible auprs d'IBM et d'autres acteurs

Gratuit pour les clients WAS 6.1

Commercial. Plusieurs K

25 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Migration des API J2EE et des librairies Websphere Les serveurs d'applications J2EE assurent une trs grande compatibilit ascendante et permettent de dployer des EARs de diffrentes versions (J2EE 1.3, J2EE 1.4 ...) sur un mme serveur.

WAS V6 - Migration Guide / 3.1 J2EE compatibility / 3.1.1 Incremental migration

Le point de vigilance concerne les bibliothques embarques par Websphere. Les applications devraient en thorie tre qualifies avec les nouvelles versions de librairies embarques par Websphere (Xalan, Xerces ...). Cependant, ces librairies sont trs matures et une utilisation dans leur esprit ne devrait pas prsenter de problme de compatibilit ascendante ; il est donc souvent suffisant de valider ces nouvelles librairies lors du test de non rgression globale de passage la V6.1 sur l'environnement de recette/intgration.

JDom et Websphere 6.1 JDom n'est plus embarqu dans WAS 6.1. Voici un plan de migration en deux tapes pour les applications qui utilisent JDom sans l'embarquer dans leur EAR :

Dclarer jdom.jar comme librairie partage Websphere et lier l'application cette librairie (il n'est pas ncessaire de repackager l'EAR) Ajouter jdom.jar comme dpendance de l'application et dployer le nouvel EAR qui embarque jdom.jar.

26 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Stratgie de migration
Stratgie de migration pour l'exploitation
Migration des scripts d'administration La migration des scripts d'administration doit tre ralise avant l'installation du Deployment Manager sur lequel ces scripts sont utiliss. La forte compatibilit ascendante des APIs d'administration diminue les risques lis cette opration mais il est scurisant d'anticiper l'ventuelle ncessit de recourir des procdures d'exploitation manuelle en attendant la correction des derniers problmes sur les scripts d'administration. L'environnement de prototypage est particulirement adapt la validation des nouveaux scripts.

Stratgie de migration de l'infrastructure


Scnario simplifi de migration de serveurs isols Ce scnario simplifi ne dcrit pas les oprations de migration des outils de monitoring, de sauvegarde & restauration. C'est le scnario du cas simple d'un serveur non fdr dans une cellule Websphere Network Deployment.

Installation les binaires de Websphere 6.1 ct de ceux de la version existante Application du dernier fixpack de Websphere 6.1 Configuration des outils d'exploitation (sauvegarde & restauration, supervision ...) Utilisation le "Migration Wizard" pour configurer Websphere 6.1 Arrt de l'ancienne version de Websphere et dmarrage de la version 6.1 Activation des outils d'exploitation Lorsque la nouvelle version est stable (plusieurs semaines), dsinstaller l'ancienne version

27 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Scnario de migration d'une cellule Une cellule Websphere est compose d'un Deployment Manager, d'un ou de plusieurs noeuds, d'un ou plusieurs serveurs et ventuellement de serveurs web.

IP Sprayer

HTTP Server X
WAS plugin

HTTP Server X ...


WAS plugin

Application Server App A App B ...

Application Server App C App D ...

Application Server App W App X ...

Application Server App Y App Z

Node

...

Node

Deployment Manager
Principaux composants d'une cellule Websphere Network Deployment

Big Bang Le scnario de migration par Big Bang mettant jour tous les serveurs simultanment est fortement dconseill car cette approche est inutilement risque. Websphere est conu pour permettre une migration progressive avec la possibilit de faire coexister des serveurs 5.x et 6.x dans une cellule 6.1. De plus, il est possible de revenir en arrire sur la plupart des oprations de migration et de redmarrer le composant problmatique en version 5.x.

28 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Migration progressive La migration progressive est le scnario privilgi. Il minimise les risques de rgression et permet aux quipes d'avancer leur rythme. Les grandes tapes d'une migration progressives sont :

Migration du Deployment Manager Migration des plugins des serveurs web Migration des serveurs avec une granularit au cluster (tous les serveurs d'un cluster simultanment, les clusters sont migrs les uns aprs les autres)

Attendre qu'un cluster soit stable avant de migrer le suivant.

Deployment Manager

Plugins des Serveurs Web

Cluster A d'Application Servers

...

Cluster Z d'Application Servers

tapes de migration d'une cellule Websphere

Stratgie de migration des applications


Migration des IDE Websphere permettant de dployer des EARs des prcdentes versions J2EE (1.2 et 1.3), la migration de l'IDE et des processus de dveloppement n'est pas contrainte tre strictement en phase avec la migration de l'infrastructure. La migration des IDE se droule dans un processus classique de dfinition des besoins suivie de l'valuation et du prototypage puis enfin du dploiement dans les quipes.

Le principal point de vigilance est la migration des projets J2EE depuis Websphere Studio 5.x vers RAD, AST ou Eclipse. IBM fournit une documentation dtaille sur Rational Application Developer Infocenter : Migrating from WebSphere Studio V5.1, 5.1.1, or 5.1.2.

Pour les migrations vers un mix Eclipse/AST/RAD, l'valuation prcise de la proportion entre les diffrents IDE ds le dbut du projet n'est pas fondamentale en termes de gestion du changement. Il est toujours possible de rajuster l'quilibre RAD/AST/Eclipse lors du dploiement dans les quipes. Si un rquilibrage entre AST et Eclipse sera transparent, en revanche, l'ajout de postes RAD aura un impact sur le cot en licences et la puissance des postes de dveloppement (Eclipse et AST sont tous deux gratuits et ont des consommations de ressources CPU et RAM similaires).

29 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Mise jour des APIs J2EE La mise jour des API J2EE sera fera lors de l'volution des applications si cette migration s'avre ncessaire. Il n'y a aucune urgence procder cette volution. IBM fournit dans Websphere AST et dans RAD un J2EE Application Migration Wizard qui simplifiera la tche des quipes de dveloppement.

Migration Java 5 Si le passage Java 5 n'est pas un pr-requis de la migration Websphere 6.1, en revanche, ce volet doit tre trait ds la fourniture des nouveaux IDEs aux quipes de dveloppement qui sinon commenceront utiliser les nouvelles fonctionnalits Java 5 hors de tout accompagnement. On risquerait alors une perte d'homognit des programmes et l'utilisation de nouvelles technologies pour se faire plaisir plutt que par une relle pertinence projet.

La migration Java 5 est essentiellement un projet de formation des quipes et d'accompagnement. Les grandes tapes en sont :

Dploiement des IDEs Java 5 ready dans les quipes de dveloppement. L'amlioration de l'ergonomie de ces IDE de dernire gnration aura un impact fort sur la productivit et la satisfaction des quipes de dveloppement. Formation l'utilisation des nouvelles librairies de Java 5 (util.concurrent ...) sans utiliser encore les nouvelles syntaxes Java 5. Enfin, formation aux nouvelles syntaxes Java 5 (gnriques, annotations, types numrs ...). Les plus grands gains seront les annotations (Hibernate et Spring) et les gnriques pour clarifier les listes (Hibernate).

Cette approche permettra d'accompagner les quipes de dveloppements pour garantir la cohrence de l'utilisation de ces nouvelles fonctionnalits.

Dploiement des IDE Java 5 ready

Formation aux nlles API Java 5


Plan de migration Java 5

Formation la syntaxe Java 5

30 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Planning de migration / squencement


Phase de Prototypage
La phase de prototypage servira avant tout valider les points ncessaires la migration en environnement de dveloppement. La phase de prototypage peut se focaliser sur la validation des infrastructures et des procdures d'exploitation de la nouvelle plate-forme. Rles de l'environnement de prototypage :

Dcouverte de Websphere 6.1 Validation des nouvelles procdures d'exploitation (scripts ...) Validation des outils d'exploitation (sauvegarde et restauration, monitoring, troubleshooting ...)

La migration des applications peut tre directement ralise sur le nouvel environnement de dveloppement. Ce raccourci ne prsente pas de risque particulier pour le projet car la probabilit de problme bloquant lors de la migration des applications est trs faible ; les serveurs J2EE offrent une grande compatibilit ascendante pour les applications et il s'agit en gnral d'ajustement mineurs (monte de version de JDom ...). Supprimer la phase de prototypage pour la migration des applications prsente l'avantage de raccourcir la dure de la migration et d'conomiser des ressources matrielles et logicielles.

Le prototypage sera ralis sur une petite grappe de serveurs isols qui reproduiront la topologie Websphere de production. Il ne faudra pas oublier de valider des points d'infrastructure comme les serveurs d'application clusteriss ou la connexion aux serveurs LDAP.

31 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Phase de dploiement
Les environnements (dveloppement, intgration, pr-production puis production) doivent tre migrs l'un aprs l'autre en excutant les tapes suivantes :

Mise jour des serveurs web

Si ncessaire, mise jour du serveur web lui mme (IHS devrait tre migr en V6.1) :

Installation des binaires du serveur web V6.1.x Configuration du nouveau serveur Configuration des outils d'exploitation (sauvegarde & restauration, supervision ...) du serveur web v6.1: mettre jour les outils si ncessaire puis configurer Arrt de l'ancien serveur web Dmarrage du serveur web v6.1 Mise jour du plugin du serveur web

Installer les plugins v6.1 sur les serveurs web Configurer le serveur web pour utiliser le plugin v6.1 Redmarrer le serveur web pour qu'il utilise le nouveau plugin. La configuration des plugins des serveurs web doit tre regnre et redploye lors de la migration de chaque noeud

Mise jour du Deployment Manager

Installation des binaires V6.1.x du Deployment Manager ct de ceux de l'ancienne version Configuration des outils d'exploitation (sauvegarde & restauration, supervision ...) du Deployment Manager v6.1: mettre jour les outils si ncessaire puis configurer Configuration du Deployment Manager v6.1 en important la configuration du Deployment Manager v5.x/6.0 avec le Websphere Migration Wizard Vrification des logs de l'excution du Websphere Migration Wizard Arrt du Deployment Manager V5.x/V6.0 Dmarrage du Deployment Manager v6.1 Activation des outils d'exploitation du Deployment Manager (sauvegarde & restauration, supervision) Regnration et redploiement de la configuration des plugins des serveurs web si le Deployment Manager est accd au travers de serveurs web Tests

Si la migration a chou, il suffit de redmarrer l'ancien Deployment Manager v5.x/6.0 pour revenir en arrire

32 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Mise jour des nuds l'un aprs l'autre

Installer les binaires de la version 6.1.x ct de ceux de l'ancienne version Configuration des outils d'exploitation (sauvegarde & restauration ...) du noeud et des serveurs d'application : mettre jour les outils si ncessaire puis configurer Configuration du noeud et des serveurs d'application v6.1 en important la configuration du noeud et des serveurs d'application v5.x/6.0 avec le Websphere Migration Wizard Vrification des logs de l'excution du Websphere Migration Wizard Arrt du noeud et des serveurs d'application V5.x/V6.0 Dmarrage du noeud et des serveurs d'application v6.1 Activation des outils d'exploitation du Noeud (sauvegarde & restauration, supervision) Regnration de redploiement de la configuration des plugins des serveurs web Tests

Si la migration a chou, il suffit de redmarrer les anciens noeuds et serveurs d'application v5.x/6.0 pour revenir en arrire

Deployment Manager

Plugins des Serveurs Web

Cluster A d'Application Servers

...

Cluster Z d'Application Servers

Phases de migration d'une cellule Websphere Network Deployment

Phase de rationalisation
Une fois les environnements migrs, la phase de rationalisation peut dmarrer. C'est une phase itrative dont le but est de simplifier et de clarifier l'architecture en suivant les bonnes pratiques. Cette phase est une opportunit de baisser le Cot Total de Possession et d'amliorer la disponibilit de la plate forme. Cette phase est aussi l'occasion de prparer l'avenir et en particulier le passage Java EE 5 avec ses EJB3 et son nouveau framework de persistance Java Persistance API (JPA). Si JBoss, Weblogic et Websphere Community Edition (Apache Geronimo) supportent dj Java EE 5, il faudra attendre la version 7 de Websphere qui est annonce pour le premier trimestre 2008. Cependant, il est dj possible de prparer cette volution en utilisant des frameworks qui mettent dj en oeuvre les API ou les principes JavaEE 5 :

Utiliser Hibernate ou Apache OpenJPA javax.persistence.EntityManager

pour

la

persistance

en

utilisant

l'API

Utiliser un framework d'assemblages des composants comme SpringFramework

33 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Bibliographie
IBM propose une documentation dtaille mais parfois complexe d'accs sur Websphere et en particulier sur la migration de version. Les principales sources sont l'Infocenter Websphere, les Redbooks IBM et les articles du site IBM DeveloperWorks Websphere.

Voici une liste des documents de rfrence pour mener un projet de migration Websphere.

IBM Education: Websphere Application Server 6.1 - Migration to V6.1 http://publib.boulder.ibm.com/infocenter/ieduasst/v1r1m0/index.jsp?topic=/com.ibm.iea.was_v6/was/ 6.1/InstallationAndMigration/WASv61_Migration/player.html

Redbook: WebSphere Application Server V6 Migration Guide http://www.redbooks.ibm.com/abstracts/sg246369.html?Open Deprecated and removed features in Websphere InfoCenter http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/topic/com.ibm.websphere.nd.doc/info/ae/ae/rm ig_deprecationlist.html

A quick guide for migrating to WebSphere Application Server V6.1 by IBM Software Services for WebSphere in IBM DeveloperWorks http://www128.ibm.com/developerworks/websphere/library/techarticles/0608_chalmers/0608_chalmers.html

WebSphere Application Server V6.1: What's new in Version 6.1? by IBM Software Services for WebSphere in IBM DeveloperWorks http://www128.ibm.com/developerworks/websphere/library/techarticles/0606_petersonr/0606_petersonr.html

Recommended reading list: J2EE and WebSphere Application Server by IBM Software Services for WebSphere in IBM DeveloperWorks http://www128.ibm.com/developerworks/websphere/library/techarticles/0305_issw/recommendedreading.html

34 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Conclusion
La migration vers Websphere 6.1 en vaut-elle la peine ? Au-del des problmatiques de fin de support, la question se pose lgitimement. Certes Websphere 6.1 apporte Java 5 et les gains de productivit que l'on peut en attendre ; il vient galement avec son lot d'amlioration en matire d'infrastructure, d'administration et de supervision. Mais les API J2EE n'ont volu qu' la marge et les innovations du produit, aussi valables soient-elles, sont et restent des changements, avec leur lot de problmes intrinsques. Ajoutons que Websphere 7 devrait arriver rapidement en 2008 pour proposer le support de Java EE 5 que les concurrents d'IBM (en particulier BEA, Jboss et Apache Geronimo) proposent depuis plusieurs mois pour certains.

D'une faon gnrale, c'est le principe mme des middlewares monolithiques qui est mis en cause. Dans le monde J2EE, pour bnficier d'une innovation mme mineure de la spcification, il est ncessaire de migrer sa plateforme complte avec un niveau de complexit et de risque qui augmente mesure que la criticit des applications dployes s'accrot. Cette particularit de J2EE semble de moins en moins justifiable.

Ds juillet 2005, Billy Newport, l'un des architectes de Websphere, appelait la modularisation de Websphere sur le modle de Linux ou de certaines bibliothques Java (voir son article : End of the road for invasive middleware?). Cette tendance la modularit est confirme par l'annonce du Gartner Group en fvrier 2007 selon laquelle Vista, le nouveau systme d'exploitation de Microsoft, serait la dernire version monolithique de Windows.

Websphere 7 sera-t-il le dernier Websphere monolithioque ?

35 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Annexe 1 - Matrices des versions d'APIs et bibliothques Websphere


Versions des API java supportes par Websphere Application Server API Java J2EE JDBC JAF Java Mail JMX Servlet JSP EJB JMS JTA RMI/IIOP JNDI JAXP JCA JAAS JACC Timer (JSR 236) Workmanager 237) Web Services (JSR 1.03 1.01 1.0 1.2 2.1/2.2 0.91/1.0/1.1 1.0 2.2 1.1 1.1 1.0 1.01 1.0 1.2 1.1/2.0 Websphere 3.5 Websphere 4.0 1.2 1.3 1.2 2.0 1.0 1.1 Websphere 5.0 1.3 1.3 2.0 1.0 1.2 1.1 2.3 1.2 1.1/2.0 1.02 1.01 1.0 1.2 1.1 1.03 1.0 Websphere 5.1 1.4 1.3 2.0 1.0 1.2 1.1 2.3 1.2 2.1 1.02 1.01 1.0 1.2 1.1 1.03 1.0 Websphere 6.0 1.4 1.4 3.0 1.0 1.3 1.2 2.4 2.0 2.1 1.1 1.01 1.0 1.2 1.2 1.5 1.0 1.0 1.1 1.1 1.1 Websphere 6.1 5.0 1.4 3.0 1.0 1.3 1.2 2.4 2.0 2.1 1.1 1.01 1.0 1.2 1.2 1.5 1.0 1.0 1.1 1.1 1.1
36 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Commentaires

JSR pas encore intgre la spcification J2EE

JAX-RPC SAAJ JAXR J2EE Management J2EE Deployment

1.1 1.2 1.0 1.0 1.1

1.1 1.2 1.0 1.0 1.1

Versions des librairies tierces embarques par Websphere application Server

Librairie Xalan Xerces Jdom Jakarta Commons Logging Jakarta Commons Discovery

Websphere 3.5 Websphere 4.0 LotusXSL 2.2 Xerces 1.4.2

Websphere 5.0 ? XML4J 4.0.12

Websphere 5.1 XSLT4J 2.6.1 XML4J 4.3.1 Java

Websphere 6.0 ? ?

Websphere 6.1 XSLT4J Java 2.7.5 XML4J 4.4.6

Commentaires Xerces and Xalan locations and versions (technote) Xerces and Xalan locations and versions (technote)

0.7 (aka 1.0 beta 0.7 (aka 1.0 beta 0.7 (aka 1.0 beta Plus embarqu How to use the newest 7) 7) 7) dans Websphere JDOM jar? (technote) 1.0.3 1.0.3 1.0.3 1.0.3

0.2

0.2

37 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Annexe 2 - Fichiers et rpertoires prendre en compte lors des sauvegardes


L'ensemble des fichiers Websphere (binaires, configuration et fichiers temporaires) se situent sous le mme rpertoire parent <WAS_HOME> (par dfaut C:\Program Files\ibm\WebSphere\AppServer sur Windows). Les outils de sauvegardent n'ont donc qu' grer une seule arborescence de rpertoire en veillant sauvegarder plus frquemment la configuration et exclure les fichiers temporaires.

Liste des fichiers de configuration :

Rpertoire <WAS_HOME>/bin/ <WAS_HOME>/java/* <WAS_HOME>/profiles/<SERVER_NAME>/bin/ <WAS_HOME>/profiles/<SERVER_NAME>/config/ <WAS_HOME>/profiles/<SERVER_NAME>/configuration/ <WAS_HOME>/profiles/<SERVER_NAME>/etc/ <WAS_HOME>/profiles/<SERVER_NAME>/properties/

Fichiers de configuration sauvegarder Seulement sauvegarder les scripts shell (*.bat et *.sh) pour les cas de modifications par les quipes d'exploitation *.properties, *.policy, cacerts, *.security et *.access Seulement sauvegarder les scripts shell (*.bat et *.sh) pour les cas de modification Toute l'arborescence du rpertoire except les rpertoires backup et temp Toute l'arborescence du rpertoire Toute l'arborescence du rpertoire Toute l'arborescence du rpertoire

38 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Liste des fichiers temporaires exclure des sauvegardes :

Rpertoire exclure des sauvegardes <WAS_HOME>/logs <WAS_HOME>/tmp <WAS_HOME>/profiles/<SERVER_NAME>/logs <WAS_HOME>/profiles/<SERVER_NAME>/temp <WAS_HOME>/profiles/<SERVER_NAME>/config/temp <WAS_HOME>/profiles/<SERVER_NAME>/tranlog/ <WAS_HOME>/profiles/<SERVER_NAME>/wstemp/

Fichiers exclure Logs de l'installation initiale, de l'installation des fixpacks et de la cration des profiles Rpertoire temporairement de primtre server d'application (fixpacks, cration de profiles ...) Rpertoire de logs Rpertoire temporaire Rpertoire temporaire pour la configuration Fichiers de logs des transactions Rpertoire temporaire utilis pour stocker toutes les modifications de configuration jusqu' leur sauvegarde (aussi bien via la console d'administration que par des scripts wsadmin)

39 / 39 Livre Blanc Migration Websphere 6.1 - Copyright Xebia 2007 Toute reproduction mme partielle interdite

Vous aimerez peut-être aussi