La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Introduction IBM – WebSphere MQ WMQ 05/2009 EQITP - MIDDLEWARE Assimilés : MQSeries, WebSphere MQ, MQ ou WMQ.

Présentations similaires


Présentation au sujet: "Introduction IBM – WebSphere MQ WMQ 05/2009 EQITP - MIDDLEWARE Assimilés : MQSeries, WebSphere MQ, MQ ou WMQ."— Transcription de la présentation:

1 Introduction IBM – WebSphere MQ WMQ 05/2009 EQITP - MIDDLEWARE Assimilés : MQSeries, WebSphere MQ, MQ ou WMQ

2 Présentation Historique Versions Architectures Bonnes pratiques Sécurité Performances Administration / Monitoring Haute Disponibilité WMQ - Sommaire

3 WMQ - Présentation Pourquoi utiliser IBM- MQSeries / WMQ ? IBM WebSphere MQ est une famille de logiciels d'intégration et de messagerie interapplicative qui simplifient la connexion dynamique des applications en environnement hétérogène. WebSphere MQ permet l'échange d'informations et l'exécution de transactions entre les plates-formes d'exploitation différentes, facilitant la tâche des programmeurs chargés du développement et de la mise en œuvre dans le cadre de projets d'intégration. Une domination sans partage d'IBM Websphere MQ représentait 80 % du marché de la messagerie critique en % en Le besoin en MOM continue de s'accroître rapidement. Estimé à 718 M$ en 2006, il dépassera 1 Md$ en 2009 et 2,24 Md$ en Concurrence : MSMQ (Microsoft) Active MQ (Open Source) DecMessageQ, Tibco RdV, … => Non inter-opérables avec WMQ 3

4 WMQ - Présentation WebSphere MQ fournit : Asynchrone « time independance » Très haute fiabilité (standard bancaire) Découplage des applications et des platesformes « loosely coupled » Disponible sur plus de 80 plates-formes API communs, nombreux langage Caractéristiques : Une infrastructure de transport, pour les messages MQ et JMS Moteurs de messaging locaux Clients MQ Fonctions de clustering (Load Balancing, Haute Disponibilité) Interface avec les applications (API) Interface dadministration (API, GUI, events) Support des transactions (syncpoint) 4

5 WMQ - Historique Mars 1992 : IBM lance MQSeries. Décembre 1994 : Tibco Software commercialise son MOM, Rendezvous. Septembre 1998 : lancement de Message Queue Server 1.0 par Microsoft. Fin 1999 : Progress Software lance SonicMQ, premier ESB sur le marché. Mars 2002 : MQSeries devient Websphere MQ.2003 : début du développement d'un système de messagerie interne par JPMorgan : publication des spécifications JMS 1.0 par Sun Microsystems : premières spécifications AMQP. Fin 2008 : version 1.0 d'AMQP. 15 ans d'initiatives des acteurs du MOM 5

6 WMQ - Versions Version BNP Paribas utilisé Warning : Fin du support IBM de la Version 5.3 depuis 09/2008. EQITP MIDDLEWARE recommande lutilisation de la : v Depuis fin 2008, la nouvelle version V7 est sortie mais ne possède qu'un seul fixPAck auj. trop jeune. 6

7 WMQ – API Plusieurs types dAPI disponibles : MQI ( C, C++, Cobol, RPG (OPM & ILE), MQ Java (WMQ classes for Java),..) AMI (deprecated) XMS (IBM advanced) Dot Net (C#,…) JMS Wrappers ( Perl, PHP, Python, Jython, PL/SQL (Oracle), Delphi / Pascal / Kylix, PL1, Rexx, …) 7

8 WMQ - Plates-formes supportées Serveur AIX, AT&T GS Unix, Compaq NSK/NSS, Compaq Open VMS Alpha & Vax, Compacq, Tru 64 Unix, DC/Osx, Digital UNIX, DYNIX/ptx, Hitachi, HP/UX, IRIX, Linux Intel & zSeries, MVS/ESA, NCR, Numa-Q (Sequent), OpenVMS, OS/2, OS/390, OS/400, SCO OpenServer, SCO Unixware, SGI, Siemens Nixdorf SINIX DC/Osx, Sinix, Sun Solaris Intel & Sparc, TPF, Unisys OS2000, 2200 & MCP, UnixWare, VSE/ESA, Windows NT4, 2000, XP, 2003, Vista, Z/OS Client AIX, Apple MacOS, AT&T GS Unix, Compaq NonStop Kernel, Compaq Open VMS Alpha & Vax, Compacq Tru 64 Unix, DC/Osx, Digital Unix DG/Ux, DOS, HP/UX, HP 3000 MPE/iX, DG/UX, DYNIX/ptx - IRIX - SINIX, Java, Linux Intel & zSeries,.Net, Numa-Q (Sequent), OS/2, SCO OpenServer - SCO Unixware, SGI, Siemens Nixdorf SINIX DC/OSx, Sun Solaris, Sun Solaris Intel, Stratus VOS, TPF, Unisys A, OS2000 & MCP, VM/ESA, Windows 3.1/95/98/Me/NT/2000/XP/2003, Vista, z/VM 8

9 WMQ - Terminologie Queue Manager (ou QM ou GFA: Gestionnaire de files dattente) –Un queue manager est un composant qui porte un ensemble de files d'attentes et gère leur utilisation par les applications Listener –Le composant listener a pour rôle découter les différents réseaux (TCP/IP, IPC, etc) et de router les demandes de connexion vers une instance cible Canal message –On appelle canal message un lien entre deux Queue Manager qui communiquent et séchangent des messages Canal client MQI (Message Queue Interface) –On appelle canal client un canal de connexion entre une application et un Queue Manager MCA (Message Channel Agent) –Le MCA est lagent qui établit la communication entre deux Queue Managers

10 Terminologie : Les Files dattente Structures de données Servent au stockage des messages Une queue appartient à un Queue Manager et un seul. Trois types principaux de files dattente : 1.File locales : décrites localement, contiennent les messages 2.Files éloignées (remote) : description locale dune file dattente située sur un Queue Manager distant 3.Files alias : pointeurs sur une file locale ou sur une file éloignée Les applications peuvent utiliser indifféremment les files locales, remote, ou alias.

11 Terminologie : Le message Message = buffer de données Deux parties : en-tête (header) : informations d enveloppe données dapplications (data) : longueur variable, 0 à plusieurs dizaines de Mo (100 Mo max sinon le message est découpé) 11 Headerdata

12 WMQ – Typologies Applicatives 12 Queue Manager Application 1 Application 2 Queue Manager Application 3 Typologies de communication possibles –Communication locale (binding) –Communication distante serveur-serveur –Communication distante client-serveur Problématiques liées Hébergement des Queue Managers Organisation des Queue Managers par application Connexion au Queue Manager Sécurisation des échanges Application Client MQ Toutes ces typologies sont mises en œuvre actuellement à la Banque.

13 WMQ - Architectures Client-Serveur Queue Manager : QMZ Serveur Z QL.A.B.TEST QMZ.CX.APPA01 Applicatio n A Client Q.A.B.TEST.PUT QMZ.CX.APPB01 MQPUTMQGET Q.A.B.TEST. GET QMZ_LSTR Applicatio n B Client MQPUT MQGET Queue Manager QMB Queue Manager QMA Server AServer B Q.A.B.TEST.PUT QMB QR.A.B.TEST QL.A.B.TESTQ.A.B.TEST.GET QMA.CH.QMB QMB_LSTR QMA_LSTR Application AApplication B MQGETMQPUT Serveur-Serveur 13

14 WMQ - Architectures Client-Serveur Serveur-Serveur 14 define channel(APPLINAME) chltype(SVRCONN) MCAUSER(appliUID) MAXMSGL(sizeOctets) replace ou alter channel(APPLINAME) chltype(SVRCONN) MCAUSER(appliUID) MAXMSGL(sizeOctets) replace def chl(APPLIA.APPLIA) chltype(SDR) conname(IP(port)) locladdr(IPHOME) replace def chl(APPLIA.APPLIA) chltype(RCVR) replace Il sagit des paramètres minimales pour leur création, il existe plus dune trentaine doptions du canal à configurer!

15 WMQ - Architectures Standalone Point-to-Point Hub and Spoke Cluster MQ Which ONE ? 15

16 WMQ - Administration Ladministration MQ : Installation, Configuration, Sécurité, Support,… Solution dite localeSolution dite distante ssh machine login/password su – geneqdml su – mqm runmqsc QMGRName Utilisation du client MQ : MO71 - QManagerName - XXX.XXX.XXX.XXX(port) - Un channel SVRCONN doit exister : « MIDDLEWARE » ++ Admin rapide et limité -- Mise en place de sécurité ++ Sécurité forte -- Admin complète mais complexe 16

17 WMQ – Administration / MO71 1/ création d'un groupe gmqmadm 2/ création du user mqmadm appartenant au groupe gmqmadm 3/ setmqaut pour le groupe 4/ mcauser = 'mqmadm' dans le channel svrconn QM=QMNAME GRP1=gmqmadm echo Affectation des droits MQ pour le groupe $GRP1 sur le QM $QM... # minimum pour se connecter avec un outil d'admin : setmqaut -m $QM -t qmgr -g $GRP1 +connect +inq +dsp setmqaut -m $QM -t q -n SYSTEM.DEFAULT.MODEL.QUEUE -g $GRP1 +get +put +set +dsp +browse +inq setmqaut -m $QM -t q -n SYSTEM.ADMIN.COMMAND.QUEUE -g $GRP1 +put +dsp +inq setmqaut -m $QM -t q -n SYSTEM.AUTH.DATA.QUEUE -g $GRP1 -all # accès en dsp (display) à l'ensemble des objets du QM $QM setmqaut -m $QM -t q -n \** -g $GRP1 +dsp +browse setmqaut -m $QM -t prcs -n \** -g $GRP1 +dsp setmqaut -m $QM -t chl -n \** -g $GRP1 +dsp setmqaut -m $QM -t lstr -n \** -g $GRP1 +dsp Ladministration DISTANTE via GUI IBM : SupportPack MO71 17 DEFINE CHANNEL(MIDDLEWARE) + CHLTYPE(SVRCONN) + TRPTYPE(TCP) + DESCR('Channel EQITP MIDDLEWARE') + MCAUSER(mqmadm') + REPLACE

18 WMQ – Administration / MO71 dspmq QMNAME(qmgrx) STATUS(etat) runmqsc QMGR1 display objet(*) all ….. …. dis ql(ql.name) curdepth … end Exemple => runmqsc QMGR1 –v modifQMGR1.mqs.log -v pour tester le script sans execution Ladministration LOCALE via : runmqsc QMGR 18 dis chl(SYSTEM.DEF.SENDER) ALL AMQ8414: Affichage des détails relatifs au canal. CHANNEL(SYSTEM.DEF.SENDER) CHLTYPE(SDR) ALTDATE( ) ALTTIME( ) BATCHHB(0) BATCHINT(0) BATCHSZ(50) COMPHDR(NONE) COMPMSG(NONE) CONNAME( ) CONVERT(NO) DESCR( ) DISCINT(6000) HBINT(300) KAINT(AUTO) LOCLADDR( ) LONGRTY( ) LONGTMR(1200) MAXMSGL( ) MCANAME( ) MCATYPE(PROCESS) MCAUSER( ) MODENAME( ) MONCHL(QMGR) MSGDATA( ) MSGEXIT( ) NPMSPEED(FAST) PASSWORD( ) PROPCTL(COMPAT) RCVDATA( ) RCVEXIT( ) SCYDATA( ) SCYEXIT( ) SENDDATA( ) SENDEXIT( ) SEQWRAP( ) SHORTRTY(10) SHORTTMR(60) SSLCIPH( ) SSLPEER( ) STATCHL(QMGR) TPNAME( ) TRPTYPE(TCP) USERID( ) XMITQ( )

19 WMQ – Administration / LOG File System des logs messages: cd /var/mqm/log/QMNAME/active File System des logs errors : cd /var/mqm/qmgrs/QMNAME/errors => 3 fichiers rotatifs : AMQERR01.LOG, AMQERR02.LOG, AMQERR03.LOG Une fois lerreur identifié : mqrc renvoit le descriptif de lerreur et permet dapporter une solution mqrc code Exemple : C:\>mqrc x000007f3 MQRC_NOT_AUTHORIZED => Problème de droits utilisateur 19

20 WMQ – Monitoring / Alerts 20 Solutions divers Patroll Sysload Nagios Shell Introscope MQ : MQMonitor QPasa MO71 ETC

21 WMQ – Monitoring / Alerts Surveillance globale Surveillance détaillée Alertes : Warning -> Console EM Incident -> Tetracall Danger -> Push mail 21

22 WMQ - Sécurité Droits des objets MQ : setmqaut et dspmqaut => Habilitations par user ou group sur les objets MQ droits PUT ou GET par user.. Mise en place du SSL -> voir procédure (certificats, CA, validité, magasin, etc) Suppression de certains objets par défaut -> faille de sécurité. Mise en place Firewall / DMZ 22

23 WMQ - Performances Mode Client VS Local NPMSPEED(FAST) Channels but no commit Persistence message ou pas Log circulaire ou linéaire Quid MQ version SSL Algorithms Size message Machine/OS/HARDWARE 23

24 WMQ - Haute Disponibilité SOLUTION 1: Serveur de secours Opérations –Déplacement de l IP avec IFCONFIG –a ou F5 Points forts –Facilité de mise en oeuvre –Rapidité de la bascule –Pas ou peu de coopération nécessaire du QM partenaire Points faibles –Messages prisonniers Pas de service pendant la bascule sauf si F5 24

25 WMQ - Haute Disponibilité SOLUTION 2 : Serveur de secours + disque partagé Opérations –Detach/Attach du disque externe –Déplacement de l IP l –Démarrage de QMA sur serveur 2 Points forts –Pas de messages prisonniers –Pas de RESET CHANNEL –Pas de coopération nécessaire du QM partenaire Points faibles –Le redémarrage de QMA sur S2 peut être long si beaucoup de messa ges en instance messages Pas de service pendant la bascule 25

26 WMQ - Haute Disponibilité SOLUTION 3 : solution 2 + cluster MQ si partenaire MQServer et non client MQ Opérations –Detach/Attach du disque externe –Déplacement de l IP l –Démarrage de QMA sur serveur 2 Points forts –Pas de messages prisonniers –Pas de RESET CHANNEL –Pas de coopération nécessaire du QM partenaire Points faibles –Mise en place et administration plus complexe –Coopération nécessaire du QM partenaire (même cluster MQ) 26

27 Questions ? WMQ - Questions

28 Autres sujets : WMQ – Sujets divers Mise en place DLQ Mise en place de lagent Wily Gestion des poison message Failover avec F5, avec Cluster MQ Nomenclature JMSAdmin ( Annuaire JNDI) QMName alias Listener.TCP Installation / Migration Mise en place SSL Exits etc

29 Travaux pratiques : 1.Créer un Qmgr : QM1 2. lauditer avec MO71 3. Déposer un message dans la file QL.TEST 4.Vider la file QL.TEST Chaque étape est validée par la suivante WMQ – TP 1

30 Travaux pratiques : Créer deux Qmgrs : QM1 & QM2 Vous devez envoyer un message de QM1 vers la File QL.QM2 sur QM2 : 1. Via Point à Point (Qremote) 2.Via un Cluster MQ (Qcluster) Chaque étape est validée par la réception du message sur QM2 WMQ – TP 2


Télécharger ppt "Introduction IBM – WebSphere MQ WMQ 05/2009 EQITP - MIDDLEWARE Assimilés : MQSeries, WebSphere MQ, MQ ou WMQ."

Présentations similaires


Annonces Google