IBM MQ
IBM MQ (anciennement WebSphere MQ, anciennement MQSeries) est un logiciel IBM de type middleware.
Disponible depuis plus de 25 ans[1], il reste énormément utilisé dans les infrastructures, tant dans les ETI que dans les sociétés internationales. MQ est par exemple utilisé dans les 50 plus grandes banques mondiales[2], et dans 85 des 100 plus grandes sociétés américaines[2].
Historique
PĂ©riode historique
- En 1990, IBM crée au laboratoire d'Hursley (UK) une équipe chargée d'étudier le développement d'un nouveau logiciel (nom de code "Victory"), permettant la communication asynchrone entre des applications, situées sur des systèmes hétérogènes.
- En 1992, un partenariat est établi avec la société Systems Strategies (qui édite le logiciel ezBridge Transact), afin d'utiliser certain concepts. Les droits sur ezBridge ont ensuite été rachetés par IBM en 1993[3].
- En 1993, IBM annonce la première version de MQSeries pour MVS et pour l'AS/400 (MQM/400)
- En 1994, on voit arriver MQSeries sur les plates-formes VSE/ESA, Vax VMS, Tandem Guardian, HP-UX, SunOS, UnixWare et SCO UNIX. Sur l'AS/400, les versions 2.1 et 3.0 de MQM/400 sont disponibles.
- À partir de 1995, de nouvelles plates-formes sont disponibles (OS/2, Aix, Sun Solaris, etc.), ainsi que les premières versions du client MQ pour Dos, Windows, Aix et OS/2). Le code provenant de ezBridge est remplacé par des développements IBM, la version courante est la version 2.0
- 1997 voit l'annonce de la version 5.0 sur la plupart des plates-formes (IBM est passé directement de la 2.1 à la 5.0, un peu comme Microsoft avec Word au même moment). Cette version apporte le support des messages de 100 Mo, la segmentation et le groupage des messages.
- En 1999, MQSeries est en version 2.1 sur OS/390, et en version 5.1 sur les systèmes distribués (sauf sur l'AS/400 en version 4.2.1). Cette version apporte le support du "Cluster MQ", d'une mode simplifié du PubSub, et du JMS (à travers le SupportPack MA88). Un outil d'administration est disponible sous forme de MMC Windows, mais il impose l'installation d'une copie de MQSeries sur le poste, et donc le paiement d'une licence pour ce logiciel.
- La fin de l'année 2000 voit arriver MQSeries 5.2 sur les systèmes distribués, avec un alignement des fonctions par version.
- En 2002, Ă l'occasion de la sortie de la version 5.3, MQSeries change de nom en WebSphere MQ, avec un certain nombre de nouvelles fonctions :
- Support du SSL
- Passage de 2 Go Ă 2 To pour la taille maximum d'une file d'attente
- Nouvelle commande QSTATUS
- Amélioration des fonctions de clustering MQ, du support du JMS en natif et la possibilité d'utiliser des jokers dans la commande setmqaut.
WebSphere MQ version 6.0
WebSphere MQ Version 6.0 a été annoncé en , avec une fin de support en (6 ans). Les principales nouveautés sont les suivantes :
- MQ Explorer, client léger basé sur Eclipse, remplace la MMC Windows comme outil d'administration. MQ Explorer est disponible pour les systèmes Windows et Linux, et permet d'administrer des Queue Managers sur des systèmes z/OS.
- Les certificats SSL, auparavant gérés par des modules Microsoft (Internet Explorer), sont maintenant gérés directement par le GSKit IBM, comme sur les autres plates-formes.
- Une gestion plus fine du load-balancing pour les clusters MQ.
- Le listener est maintenant un objet MQSC[4], et peut donc être géré de manière simple.
- Support de Windows 64 bits (Ă partir du correctif 6.0.2.1)
- Support d'IP V6
- Nouvelles fonctions : Accounting et Statistics
WebSphere MQ version 7.0
WebSphere MQ Version 7.0 a été annoncé en , avec une fin de support en (7 ans). Les principales nouveautés sont les suivantes :
- Intégration du Publish Subscribe
- En provenance de WebSphere Message Broker
- Nouvelles API PubSub (MQSub…)
- Support Ă©tendu de JMS
- Un nouveau format de message MQ permet de stocker les propriétés JMS dans l'en-tête de message, sans recourir au à l'extension MQRFH2
- Amélioration du MQI[5]
- Read Asynchrone des messages (MQ Call Back)
- Support des sélecteurs en MQGet
- Cooperative browsing
- MQ Explorer est disponible sous forme de paquet indépendant (SupportPack MS0T)
- Administration z/OS : Plus besoin du CAF pour utiliser un outil d'administration en mode client, dans la limite de 3 sessions
- Intégration de XMS (Manipulation de messages au format JMS en environnement non Java)
- Nouveaux logiciels :
- WebSphere MQ Advanced Message Security
- Annoncé en
- Remplace WebSphere MQ Extended Security Edition (ex Policy Director)
- Chiffrement des messages de bout en bout
- WebSphere MQ File Transfer Edition
- Annoncé en 2009
- File Transfer over MQ
- Basé sur des agents (MQ, FTP/SFTP, etc.)
- Administration en mode ligne et/via MQ Explorer
- WebSphere MQ Advanced Message Security
WebSphere MQ version 7.0.1
WebSphere MQ Version 7.0.1 a été annoncé en , avec une fin de support en (6 ans). Les principales nouveautés sont les suivantes :
- Multi-Instance Queue Managers : Solution de Haute Disponibilité pour MQ basé sur deux serveurs, partageant un disque réseau (de type NFS ou GPFS)
- Automatic Client Reconnect : Nouvelle option qui permet aux clients MQ de se reconnecter automatiquement au Queue Manager après une bascule de ce dernier
- Connexion dynamique du client MQ à un « alias » de Queue Manager
- Nouveaux events permettant un suivi des changements de configuration :
- Statut « avant / après » d’un objet MQ
- Date / heure du changement
- Utilisateur ayant passé la commande
- Compression des logs sur z/OS
- Transport de messages SOAP
WebSphere MQ version 7.1
WebSphere MQ Version 7.1 a été annoncé en , avec une fin de support en (5 ans 1/2). Les principales nouveautés sont les suivantes :
- Multi-installation : Possibilité d'installer plusieurs copies du logiciel (à des versions identiques ou non) sur la même machine
- Possibilité de choisir les chemins d’installation
- Sécurisation par défaut des canaux :
- Par défaut pour les nouveaux Queue Managers
- Nouvel objet MQSC : Channel Authentication Record
- Filtrage des accès canal via CHLAUTH (filtrage par IP entrante, contenu du certificat SSL, compte utilisateur présenté, nom de Queue Manager…)
- La commande setmqaut est maintenant disponible via le langage MQSC (AUTHREC)
- La commande dmpmqcfg permet d'extraire en format MQSC la configuration du Queue Manager
- Sous Windows, les paramètres MQ précédemment stockés dans le registre reviennent dans les fichiers mqs.ini et qm.ini (comme sur les autres plates-formes distribuées)
WebSphere MQ version 7.5
WebSphere MQ Version 7.5 a été annoncé en , avec une fin de support en (6 ans). Il s'agit essentiellement d'un repackaging de MQ version 7.1.
En version 7.1 et avant, les logiciels MQ, AMS et MFT étaient livrés sous forme de binaires séparés. À partir de la version 7.5, MQ, AMS et MFT sont livrés dans le même binaire, mais leur utilisation reste dépendante de la licence achetée :
- La licence MQ "classique" ne permet que l'utilisation des fonctions du logiciel MQ, MFT et AMS sont disponibles en option (payante)
- La licence "MQ Advanced" permet Ă©galement d'utiliser AMS et MFT
Les quelques nouveautés dans MQ 7.5 sont les suivantes :
- Il est possible de spécifier des files de transmission multiples pour les clusters MQ
- La structure du répertoire des données MQ est simplifiée
- Les applications Java connectées à un Queue Manager peuvent spécifier un nom d'application qui sera repris dans l'entête des messages
Note : La version 7.5 n'a pas été disponible sur les systèmes iSeries et z/OS.
WebSphere MQ version 8.0
WebSphere MQ Version 8.0 a été annoncé en , avec une fin de support prévue en (6 ans). Les principales nouveautés sont les suivantes :
- Support du 64 bits sur l'ensemble des plates-formes
- Authentification des application possible via utilisateur / mot de passe
- Certificats SSL multiples pour un Queue Manager
- Améliorations des clusters PubSub (Routed PubSub)
- Support du JMS 2.0
À partir de la version 8.0, IBM MQ évolue de manière régulière. Des paquets de correctifs (Fixpack) peuvent apporter également des nouvelles fonctions.
IBM MQ version 8.0.0.2
Nouvelles fonctions apportées par le FixPack 8002 :
- LDAP pour authentifier les utilisateurs MQ
- Définitions des comptes et groupes coté OS plus nécessaire
- Disponible pour Unix, Windows, IBM i
- Activity trace : résolution à la microseconde
IBM MQ version 8.0.0.3
Nouvelles fonctions apportées par le FixPack 8003 :
- Authentification PAM pour Unix
- Pluggable Authentication Modules
- MĂŞme principe que LDAP en 8002
- Invalidation des CipherSpecs vulnérables
- Avant MQ 8.0.0.3 : 44 CipherSpecs disponibles
- À partir de MQ 8.0.0.3 : 17 CipherSpecs disponibles
- Nouveaux events pour les Queue Managers Multi-Instance
IBM MQ version 8.0.0.4
Nouvelles fonctions apportées par le FixPack 8004 :
- Nouveau paramètre capexpiry
- Permet de diminuer le TTL des messages pour les files et topics
- Clients MQ redistribuables
- Disponibles sous forme zip/tar
- Permet d’inclure des clients MQ dans des packages déployables
IBM MQ version 9.0
IBM MQ Version 9.0 a été annoncé en , la fin de support n'est pas annoncée à ce jour. Elle ne devrait pas intervenir avant (5 ans de support par défaut pour ce type de logiciel).
Ă€ partir de la 9.x, IBM propose deux types versions : LTS (ou LTSR) et CD[6]
- LTS (Long Time Support Release)
- Les versions LTS sont supportées pendant au minimum 5 ans, et pendant leur durée de vie elles reçoivent des correctifs réguliers (9.0.0.1, 9.0.0.2… par exemple), mais sans aucune nouvelle fonction. Elles proposent un socle stable pour les organisations qui ne souhaitent pas faire évoluer rapidement leur socles techniques.
- CD (Continous Delivery)
- Les versions CD permettent de disposer rapidement des nouvelles fonctions au fur et à mesure de leur disponibilité (typiquement 3 mises à jour / an).
De manière générale, toutes les nouveautés incluses dans les différentes versions 8.0.0.x sont incluses dans MQ 9.0. Les autres nouveautés sont les suivantes :
- Accès à la CCDT via une URL pour tous les types de clients MQ
- AMS : Nouveau type de chiffrement (Confidentiality) moins consommateur de ressources, et support des JRE non IBM
- Sécurité : Authentification LDAP disponible pour Les Queue Managers Windows (comme Unix en 8004)
- MFT : Amélioration sur la gestion des erreurs FTP de l’agent Bridge
- Nouvelle version du Ressource Adapter pour WAS
- Support code page UTF16
- Trace applicative dynamique
- Monitoring des performances via PubSub
- Rappel de commandes MQSC sous Unix
IBM MQ version 9.0.1.0 (11/2016)
Il s'agit d'une version de type "CD", qui apporte les fonctions suivantes :
IBM MQ version 9.0.2.0 (03/2017)
Il s'agit d'une version de type "CD", qui apporte les fonctions suivantes :
- Évolution du système de logging
- Support Ubuntu
IBM MQ version 9.0.3.0 (04/2017)
Il s'agit d'une version de type "CD", qui apporte les fonctions suivantes :
- Connecteur Blockchain pour MQ for z/OS Value Unit Edition
- Améliorations MFT et API Rest
IBM MQ version 9.0.4.0 (10/2017)
Il s'agit d'une version de type "CD", qui apporte les fonctions suivantes :
- Nouvelle solution de haute disponibilité : Replicated Data Queue Managers HA (High Availability)
- Configuration à 3 serveurs permettant une continuité de service pour les Queue Managers
- Nouvelle API MQ : REST Messaging
- Blockchain Bridge
- Salesforce Bridge
- Améliorations REST Admin
- Gateway REST Admin
- Nouveautés errors logs
- Nouveautés recovery logs
- SAN support pour MQ Appliance
- Améliorations CHLAUTH/CONNAUTH
IBM MQ version 9.0.5.0 (03/2018)
Il s'agit d'une version de type "CD", qui apporte entre autres les fonctions suivantes :
- Nouvelle solution de haute disponibilité : Replicated Data Queue Managers DR (Disaster Recovery)
- Configuration Ă 2 serveurs permettant une reprise des Queue Managers sur un site de secours
- Administration MFT via des API Rest
- Améliorations des API Admin Rest
- Disponibilité de l'offre "MQ on Cloud" (Offre MQ en SaaS)
IBM MQ version 9.1 (07/2018)
IBM MQ Version 9.1 a été annoncé en , la fin de support n'est pas annoncée à ce jour. Elle ne devrait pas intervenir avant (5 ans de support par défaut pour ce type de logiciel). Il s'agit d'une version LTS, qui reprend l'ensemble des fonctionnalités apportées par les versions 9.0.x de type CD.
Les principales nouveautés sont les suivantes :
- Retrait du support de HP-UX et dernière version LTS pour Solaris
- Introduction d'une licence qui permet la facturation à l'heure (pour les déploiements en containers)
- Le support de TLS 1.0 est déprécié
- Support de Ubuntu avec des packages Debian
- Intégration du IBM MQ Bridge avec la Blockchain
IBM MQ version 9.1.1 (11/2018)
Il s'agit d'une version de type "CD", qui apporte entre autres les fonctions suivantes :
- Nouveau cipherspec : ANY_TLS12
- MQSC : paramètre IGNSTATE(YES) pour les commandes START / STOP (distribué)
- Nouvelles fonctions dans l'API Rest pour MFT
- Support de Microsoft .NET Core (distribué)
- Amélioration du support de WAS Liberty pour les Message Driven Beans
IBM MQ version 9.1.2 (02/2019)
Il s'agit d'une version de type "CD", qui apporte entre autres les fonctions suivantes :
- Uniform Cluster[7] : Permet à des clients MQ de bénéficier des fonctions du cluster MQ :
- Load balancing dynamique vers plusieurs Queue Managers :
- En fonction du nom de l'application ou du nom du binaire
- Fail over automatique en cas de panne d'un Queue Manager
- Les CCDT peuvent maintenant ĂŞtre au format JSON
- Différents paramètres et variables permettent à un client MQ de spécifier un nom d'application (APPLNAME). Ce nom est utilisé dans les Uniform Cluster pour le load balancing
- Support de XA avec WAS Liberty[8] (18.0.0.2+)
- Connection pools pour REST Messaging
IBM MQ version 9.1.3 (07/2019)
C'est la 3ième version de type "CD" pour MQ 9.1. Elle apporte les nouveautés :
- Support du format JSON pour l'API REST Admin
- Liste des messages et lecture du message suivant pour l'API REST Messaging
- Encapsulation de MQ Console dans une IFrame
- Amélioration IBM MFT
- "Client re-balancing" et nouvelle commande APSTATUS pour les "Uniform cluster"
- Advanced Message Security : MCA interception sur les canaux DQM
- EphemeralPrefix : support des environnements Red Hat OpenShift
Notes et références
- « The best technology grows and innovates over time »
- « What’s new in IBM MQ? »
- « An Introduction to MQSeries Messaging and Queuing »
- MQSC : MQ Script Command, langage d'administration du logiciel MQ
- MQI : Message Queue Interface, interface de programmation du logiciel MQ
- « IBM MQ FAQ for Long Term Support and Continuous Delivery releases », sur IBM
- « Nouveautés IBM MQ version 912 CD », sur http://demey-consulting.fr
- (en) « About WebSphere Liberty », sur https://developer.ibm.com