Pause-Café Volubis

pause-café

rendez-vous technique
Pause-Café est une réunion technique
destinée aux informaticiens sur plateforme IBM i.
Elle a lieu 3 fois par an : en général en Bretagne et sur Paris.

Pause-café #93

26 Septembre 2024

IBM i 7.5 TR4 - 7.4 TR10

Généralités

Annoncée le 7/5/2024, disponible le 14/6/2024 (sauf RDi le 28/5/2024)  

Rappels

Le rythme actuel des versions est d'environ 3 ans, avec 2 TR par an.

Vous pouvez mettre à niveau depuis la version n-2 (de 7.3 à 7.5 par exemple).

2 versions sont maintenues en concurrence. L'arrêt de la maintenance de la 7.3 est effectif depuis le 30/09/2023. Les TR ne sont désormais plus disponibles pour la 7.3


Références

Support

IBM i 7.5 n'est supporté qu'avec les serveurs Power 9 ou Power 10.

IBM i 7.4 TR10 n'est supporté qu'avec les serveurs Power8, Power9 ou Power 10.

Annonces de fin de support : https://www.ibm.com/docs/en/announcements/end-marketing-end-support-i-merlin-10-rdi-96-selected-i-functions?region=US

  • Le 7 mai 2024, IBM annonce la fin de support en date du 30 avril 2025 pour certains produits sous licence
  • Cela signifie qu'ils ne seront plus installables dans les versions IBM i next et suivantes
  • Certains produits n'ont plus d'usage, d'autres ont des solutions de remplacement
  • On remarque particulièrement :
    • Rational Developer 9.6 -> Rational Developer for i 9.8 (pensez à vos extensions tierces)
    • IBM Rational Development Studio for i Application Development Toolset (RLU, SDA, FCMU, APF, CGU, DFU) -> RDi, VSCode + Code for ou autre


OS

Plateforme

Support du serveur S1012 (9028-21B)

Nouveau modèle depuis 2022, en format 2U MAIS demie-largeur !

Il existe aussi en format "mini" tour (alimentation moins puissante).

Il est possible d'en combiner 2 pour avoir une pleine largeur, d'alterner avec un RDX ou un panneau.

  • Groupe P05
    • 1 ou 4 coeurs (modèle 1 coeur limité à 20 utilisateurs IBM i ??)
    • 64 Go RAM
  • Groupe P10
    • 8 coeurs
    • 256 Go RAM
  • Tous
    • 4 slots PCIe Gen 5
    • 4 slots NVMe (6,45 To)
    • 2 ports USB 3 + RDX
    • 1 port eBMC (remplace FSP)
    • Support : IBM i 7.4 / 7.5, AIX 7.3 / 7.2, RHEL 9.2, VIOS 4.1.0.20 /3.1.4.40
    • Ne supporte pas : Live Partition Mobility, Virtual Persistant Memory, Virtual Ne

 

 

Nouvelles fonctions IBM i pour ASMI (Advanced System Management Interface) basé sur BMC (Baseboard Management Controller)

Pour les serveurs Power 10 sans console HMC, configuration d'une partition IBM i simplifiée via ASMI : plus de facilité pour identifier les périphériques, effectuer les installations à partir d'un serveur d'images réseau ou d'un serveur SCSI et accès des fonctions du panneau de commande (sans avoir à toucher le panneau de commande physique).

I/O

  • #EN2Y and #EN2Z: PCIe 4-port 1 GbE Adapter
  • Annonces du 9/7/2024, disponibilité au 19/7/2024 :
    • #ESR0 NVMe Expansion Drawer adds Multipath capability
    • #EN24, #EN26 - PCIe 4-Port 25/10/1 GbE RoCE SFP28 Adapter adds SR-IOV support
    • #ES4C - Enterprise 1.6 TB SSD PCIe4 NVMe U.2 module for IBM i
    • #ES4E - Enterprise 3.2 TB SSD PCIe4 NVMe U.2 module for IBM i
    • #ES4G - Enterprise 6.4 TB SSD PCIe4 NVMe U.2 module for IBM i
    • #ES4B - Enterprise 1.6 TB SSD PCIe4 NVMe U.2 module for AIX/Linux
    • #ES4D - Enterprise 3.2 TB SSD PCIe4 NVMe U.2 module for AIX/Linux
    • #ES4F - Enterprise 6.4 TB SSD PCIe4 NVMe U.2 module for AIX/Linux
    • #ECTB - New 15.3 TB Mainstream PCIe4 NVMe U.2 module for IBM i
    • #ECT9 - New 15.3 TB Mainstream PCIe4 NVMe U.2 module for AIX/Linux

Détails du support des cartes I/O : https://www.ibm.com/support/pages/node/1137508


Power HA SystemMirror (5770-HAS)

De nombreuses évolutions :

  • Réplication asynchrone basée sur des règles IBM FlashSystem
  • Intégration améliorée du domaine administratif
  • Amélioration de la synchronisation des ressouces sous autorité adoptée
  • Prise en charge de la synchronisation des attributs SNMPv3 sur les périphériques d'impression, y compris le nom SNMP, le contexte et les attributs (SNMPCNTX).
  • Meilleure gestion des profils du domaine
  • Interface Web moderne PowerHA
  • Amélioration de l'interface graphique
  • Démarrage et arrêt des noeuds du cluster
  • Plus de fonctions de gestion des domaines administratifs
  • Capacités de gestions des switchable environments (arrêt/redémarrage des clusters de groupe, gestion des sessions de réplication ...)
  • Tris, sélections ...
  • Services SQL PowerHA
  • Nouveaux services SQL
  • Visibilité des requêtes SQL dans l'interface
  • Ajout de la possibilité de retrouver l'état d'HyperSwap

cf cf https://ibm.biz/ibmi-powerha

 

Les PTFs sont annoncées pour une disponibilité le 14 juin 2023 :

7.5 PowerHA avec HA 5.5.3 SJ00828

7.4 PowerHA avec HA 4.11.3 SJ00821

 

cf IBM PowerHA SystemMirror for i


DB2 Mirror for i (5770-DBM)

Améliorations de la perfomance.

  • Nouvel adapteur RDMA pour Power10
  • Amélioration des informations dans le centre de santé
  • Mise à jour des services SQL

 

Vous devez installer le groupe (disponibles au 14/06/2024) :

IBM i 7.5 : SF99951 niveau 6

IBM i 7.4 : SF99668 niveau 24

cf IBM Db2 Mirror for i


Backup, Recovery and Media Services for i (5770-BR1 et BR2)

Nouvelles fonctionnalités :

  • Support des lecteurs 3592-70F (TS1170)
  • Amélioration de la compression logicielle pour les bandes et bandes virtuelles
  • Pour les utilisateurs de solution VTL iSCSI, amélioration de l'IPL lorsque le système sort de l'état restreint 

 

PTF :

IBM i 7.5 - SI84876

IBM i 7.4 - SI84875

IBM i 7.3 - SI84874

Cf https://helpsystemswiki.atlassian.net/wiki/spaces/IWT/pages/165642446/Enhancements+to+BRMS


SQL

Nécessite :

IBM i 7.5 : SF99950 niveau 7

IBM i 7.4 : SF99704 niveau 28

Nouvelles fonctionnalités

  • Fonction d'aggrégation ANY_VALUE
  • Option *LAST pour CREATE ALIAS
    • *LAST est le membre le plus récent (ce n'est pas le nom par ordre alphabétique)
    • Créer un alias sur le dernier membre par date. Si un autre membre est créé, il est automatiquement pris par l'alias. Si le dernier membre est supprimé, le membre précédent (dans l'ordre de création) est utilisé.

      Cela agit plus comme une vue (dynamique à l'exécution) qu'un logique.

    • cf https://www.ibm.com/support/pages/node/7148991

Services pour l'administrateur DB2

  • QSYS2.SYSMEMBERSTAT : statistiques sur les membres/partitions (nouveau)
  • Procédure QSYS2.DUMP_PLAN_CACHE (amélioration)
    • Ajout d'un filtre optionnel sur le nom d'iASP
    • valeurs supportées :
      • nom : nom de l'iASP contenant les plans à capturer
      • *ALL : plans de *SYSBAS et toutes les iASP¨disponibles
      • *CURRENT : seulement dans l'iASP en cours
      • *SYSBAS : seulement SYSBAS
    • cf https://www.ibm.com/support/pages/node/6442053
  • QSYS2.ACTIVE_QUERY_INFO (amélioration)
    • Retourne des informations sur les requêtes actives (moteur SQE uniquement)
    • Ajout d'un filtre optionnel et d'une colonne résultat : utilisateur du travail (USER_NAME)
    • C'est l'utilisateur en cours, qui peut être différent de l'utilisateur qui a démarré le travail
    • cf https://www.ibm.com/support/pages/node/6486899

    Services

    Services IBM i : nouveaux

    • QSYS2.AUDIT_JOURNAL_DATA_MART_INFO et QSYS2.MANAGE_AUDIT_JOURNAL_DATA_MART() : entrepôt de données du journal d'audit
      • Vous fournit un outil de centralisation des extractions de vos journaux d'audit !
      • La procédure QSYS2.MANAGE_AUDIT_JOURNAL_DATA_MART() permet de générer de nouvelles extractions, les complèter, les supprimer ...
      • Cela génère un fichier AUDIT_JOURNAL_xx (xx = type de poste) dansla bibliothèque choisie
      • Cela alimente également le datamart avec les informations relatives à l'extraction
      • Les informations du datamart sont accessibles via la vue QSYS2.AUDIT_JOURNAL_DATA_MART_INFO

      Syntaxe :

       

      Par exemple pour extraire les postes de journaux PW (password) dans un fichier AUDIT_JOURNAL_PW de la bibliothèque NB :

      Cela créé une entrée dans le datamart

      Et le fichier d'extraction

      Les données sont strictement équivalentes à celles retournées par la fonction AUDIT_JOURNAL_xx :

       

      Les informations stockées dans le datamart permettent ensuite de relancer une extraction pour aller chercher les données à partir des dernières données collectées :

       

      Les droits à avoir sont assez importants : cf https://www.ibm.com/docs/en/i/7.5?topic=services-manage-audit-journal-data-mart-procedure 

      Liste des types d'entrée de journal supportés : https://www.ibm.com/docs/en/i/7.5?topic=services-audit-journal-entry 

      cf https://www.ibm.com/support/pages/node/7148888

    • QSYS2.COMPARE_IFS() - UDTF : comparaison de répertoires dans l'IFS
      • Permet la comparaison de 2 répertoires IFS (sur la même machine ou pas), avec différents niveaux de détails.
      • Se base sur IFS_OBJECT_STATISTICS et IFS_OBJECT_PRIVILEGES 
      • La comparaison est "limitée" aux types suivants :
        • Character special files, *CHRS
        • Directories, *DIR
        • Name pipes, *FIFO
        • Local sockets, *SOCKET
        • Stream files, *STMF
        • Symbolic links, *SYMLNK
      • Si aucune différence n'est trouvée, aucune ligne n'est retournée
      • Les droits nécessaires diffèrent en fonction des attributs demandées :
        • Pour chaque répertoire faisant partie des PATH : *X
        • Pour chaque répertoire parcouru récursivement : *RX et *OBJMGT
        • Pour chaque fichier comparé : *OBJMGT
        • *ALLOBJ ou *AUDIT : seulement si l'on demande la comparaison des attributs

       

      START_PATH_NAME1 et START_PATH_NAME2 : les répertoires à comparer

      RDB2 : poste de base de données relationnelle pour répertoire 2. Si non renseigné, les deux répertoires sont locaux, sinon le 2 est distant !

      SUBTREE_DIRECTORIES : YES = rechercher récursive, NO = comparaison de la racine

      OBJECT_TYPE_LIST : *ALL (tous types d'objet), *ALLSAV (tout ce qui se sauvegarde par SAV : *CHRSF, *DIR, *FIFO, *STMF, and *SYMLNK) c'est à dire tout sauf les *SOCKET, ou une liste des types précédents

      COMPARE_ATTRIBUTES : NAMES pour comparer les noms uniquement, YES pour comparer tous les attributs

      Renvoie une table :

       

      Quelques exemples :

      Notre cas de test : 2 répertoires avec des différences, en local et en distant

       

      1er test :

      Toujours en local, récursif :

      Plus détaillé :

      Autre système :

      Le nom doit correspondre au nom de base de donnée (cf WRKRDBDIRE)

       

      cf https://www.ibm.com/support/pages/node/7148257

    • QSYS2.DB_TRANSACTION_OBJECT_INFO() et QSYS2.DB_TRANSACTION_RECORD_INFO() - UDTF : informations sur les transactions et enregistrements verrouillés dans les transactions
    • QSYS2.SYSTEM_OBJECT_TYPES - table : liste les types d'objets
    • SYSTOOLS.AUDIT_JOURNAL_NA() et SYSTOOLS.AUDIT_JOURNAL_PS() - UDTF : entrées de journal d'audit NA et PS
    • SYSTOOLS.CHECK_PRODUCT_OPTIONS() - UDTF : contrôler les produits sous licence
    • SYSTOOLS.ERRNO_INFO() - fonction : retourne le texte descriptif d'une erreur errno
    • SYSTOOLS.IFS_UNLINK() - fonction : supprime une fichier IFS
    • SYSTOOLS.GETENV()  et SYSTOOLS.PUTENV()- fonctions : positionne et retrouve une valeur de variable d'environnement pour le job en cours
    • SYSTOOLS.PRINTER_FILE_INFO - vue : affiche les attributs des PRTF
    • SYSTOOLS.SPECIAL_AUTHORITY_DATA_MART - table : informations sur les droits spéciaux des utilisateurs
      • Indique pour chaque droit spécial quels profils utilisateurs en bénéficie. Indique également si l'utilisateur en bénéficie en direct ou via un profil de groupe et si oui lequel
      • C'est un MQT : à rafraichir par REFRESH TABLE manuellement. Il se base sur QSYS2.USER_INFO, QSYS2.GROUP_USERS() et QSYS2.QSYUSRINFO(),
      • Exemple
      • Les utilisateurs avec *SECADM en direct :
      • cf https://www.ibm.com/support/pages/node/7148878

    Services IBM i : évolutions


RPG

PTFs nécessaires :

7.5 : 5770WDS SJ01351 + 5770WDS SJ01354 pour TGTRLS(V7R4M0)

7.4 : 5770WDS SJ01353

SND-MSG : nouvelles options

Le code opération SND-MSG supporte plus de types de message (types d'envoi) et plus de destinations possibles.

  • Nouveaux types :
    • *COMP : complétion
    • *DIAG : diagnostic
    • *NOTIFY : notification
    • *STATUS : status
  • Types déjà supporté : *INFO et *ESCAPE
  • Nouvelles destinations (valeurs supportées par %TARGET) :
    • *CTLBDY : remonte à la frontière de contrôle, c'est à dire la première procédure de la pile d'appel dans le même groupe d'activation que SND-MSG
    • *EXT : file de message externe
    • *PGMBDY : première procédure de la pile d'appel située dans le même programme ou programme de service que SND-MSG
  • Destinations déjà supportées : *CALLER, *SELF

 

Les nouveaux types d'envoi de message facilitent l'écriture de programmes RPG pour les commandes.

Les nouvelles cibles permettent une gestion plus fine de la propagation des messages.

 

En savoir plus sur les envois de messages : https://www.ibm.com/docs/en/ssw_ibm_i_75/apis/QMHSNDPM.htm 

 

Variables CONST

Les mot clé CONST peut désormais s'utiliser avec une variable ou une data structure !

S'utilise avec INZ : une variable ou DS initialisée ne peut plus être modifiée (le compilateur génère une erreur RNF5346 de gravité 30).

 

Quelles différences avec une constantes :

  • Possibilité d'initialiser les variables avec des valeurs non connues à la compilation : *user, *sys ...
  • Les variables disposent d'un espace mémoire

 

Exemple :

Après correction :

 

Avec une DS :

Ce qui produit :

 

Il n'est pas possible d'avoir une sous-zone de DS const :

 

En débogue on arrive à modifier la valeur, à voir si cela restera dans le temps (bug ou pas bug ?).

On remarque que RDi est à jour !

 

Références :

RPG : https://www.ibm.com/support/pages/rpg-cafe

Access Client Solutions

L'historique des versions et fonctionnalités associées https://www.ibm.com/support/pages/ibm-i-access-acs-updates

Page principale de ACS : https://www.ibm.com/support/pages/node/633843

Version 1.1.9.5

Disponible depuis avril 2024

Scripts SQL

Amélioration des performances du content assist

Possibilité de copier un texte depuis l'historique du travail

La seconde option permet de ne copier que le texte de le colonne sélectionnée 


Utilisation des groupes de systèmes dans la reconnexion SQL :

Visual Explain

Améliorations de l'accès aux options d'analyse :

Ajout nouvelles options :

Schéma

Nouvelles options :

IFS et spool

Changement de système avec le panneau de groupe :

Ligne de commande

Ajout des options en mode commande :

Ajout d'un plugin checkversion :

Autres patchs

Multiples évolutions de l'interface : cf https://www.ibm.com/support/pages/ibm-i-access-acs-updates

Version 1.1.9.6

Disponible depuis août 2024

Cette version implémente de nombreuses améliorations proposées sous forme d'Idea :

1. Run SQL Scripts (RSS): 

- Complete management of custom user examples in https://ibm-power-systems.ideas.ibm.com/ideas/IBMI-I-2908 RSS, including delete and replace https://ibm-power-systems.ideas.ibm.com/ideas/IBMI-I-2996 

- Drag-and-drop of .sql files from IFS panel to RSS panel 

- Support for Projects in RSS for saving/restoring open https://ibm-power-systems.ideas.ibm.com/ideas/IBMI-I-3540 tabs 

- Added several Insert from Examples https://ibm-power-systems.ideas.ibm.com/ideas/IBMI-I-4056 

- File chooser dialog usability improvements (for https://ibm-power-systems.ideas.ibm.com/ideas/IBMI-I-4077 Windows only) 

2. Schemas: 

- Support for PROGRAM_NAME on New Function and New Procedure dialogs 

3. IFS: 

- Drag-and-drop of files on PC to open IFS panel https://ibm-power-systems.ideas.ibm.com/ideas/IBMI-I-1970 

- Double-click to view a file https://ibm-power-systems.ideas.ibm.com/ideas/IBMI-I-4117 

4. Data Transfer: 

- When using "Create IBM i Database File", https://ibm-power-systems.ideas.ibm.com/ideas/IBMI-I-4073 

double-click on scan results to open Details 

5. 5250 Display Emulator: 

- Added the following Screen History enhancements: 

a. Time stamp of when screen was added to the https://ibm-power-systems.ideas.ibm.com/ideas/IBMI-I-2478 archive. It will be visible when using the Archive Viewer. 

b. Optionally use time stamp in file name when using https://ibm-power-systems.ideas.ibm.com/ideas/IBMI-I-2478 "Save screens as images..." 

c. Command-line plugin scrconv for converting a https://ibm-power-systems.ideas.ibm.com/ideas/IBMI-I-3066 saved archive 

6. General: 

- Update command-line plugin cfg for supporting https://ibm-power-systems.ideas.ibm.com/ideas/IBMI-I-4071 console configurations 

- Added /gui option to command-line plugin pwchange https://ibm-power-systems.ideas.ibm.com/ideas/IBMI-I-3217 

- Added Description and Group name as sortable https://ibm-power-systems.ideas.ibm.com/ideas/IBMI-I-3368 

columns to the Password change panel https://ibm-power-systems.ideas.ibm.com/ideas/IBMI-I-4003 

Navigator for i

Evolutions de la nouvelle interface

Rappels

L'interface de Navigator for i a été totalement revue en 2022. On parlera de Navigator for i "heritage" pour l'ancienne interface.

Cf https://www.ibm.com/support/pages/node/6483299 

Depuis mars 2023, les PTF 5770SS1 V7R4M0 SI82187 et 5770SS1 V7R3M0 SI82188 désactivent la version héritage par défaut. Si vous souhaitez l'activer/désactiver manuellement : https://www.ibm.com/support/pages/node/6556828  

 

Ces évolutions  nécessitent :

IBM i 7.5 : SF99952 niveau 14

IBM i 7.4 : SF99662 niveau 35

Détail des groupes PTF : https://www.ibm.com/support/pages/node/6520030 

 

 

Général

Le framework graphique est mis à jour avec Angular 17

Nouvelle version de JTOpen Toolbox : 20.0.7 (5770 SS1)

Mise à jour de l'interface d'authentification des noeuds

Barres de progrerssion plus lisibles

 

ARE - Administration Runtime Expert

Désormais disponible depuis Navigator for i

Cf https://www.ibm.com/support/pages/node/7130982

Au moment de l'écriture, toutes les PTFs ne sont pas disponibles pour un bon fonctionnement

 

Réseau

Ajout des fonctions d'export NFS

Amélioration des assistants pour VPN

Surtout : début d'intégration de l'administration HTTP dans Navigator

  • Accès aux instances : arrêt / démarrage, configuration, logs

Gestion des travaux

Amélioration dans la gestion des travaux planifiés et à démarrage anticipé

Advanced Job Scheduler : continuité du déploiement (cf https://www.ibm.com/support/pages/node/6845165)

Sécurité

Support de nouvelles entrées du journal d'audit

Support pour Audit journal data mart (cf https://www.ibm.com/support/pages/node/6570755)

Autres

Multiples améliorations de l'interface, nouvelles valeurs, nouvelles options ...

IBM i Remote System Explorer API

API REST permettant d'invoquer des fonctionnalités IBM i.

Ajout de nouvelles fonctionnalités de gestion des certificats : lister, importer, associer et mettre à jour.

Cf https://www.ibm.com/support/pages/node/7144245 

 

Les services RSE sont disponibles à cette URL : https://systeme:2012/openapi/ui/#/

L'interface embarque un Swagger UI permettant de tester en direct

Nouvelle route /api/v1/security

  • des informations sur TLS : configuration et usage
  • la gestion des certificats et applications dans dcm

Le produit bouge beaucoup, proposez vos idées : https://ibm-power-systems.ideas.ibm.com/ideas/IBMI-I-4111

Visual STUDIO CODE - CODE FOR I

De très nombreuses nouveautés ! 

Code for i est un projet Open Source, principalement géré par la communauté.

 

Principales évolutions :

  • Meilleur support du débogage (attention, un service supplémentaire de débogage sur l'IBM i et un certificat à mettre en place - tout est automatisé depuis VSCode)
  • Téléchargement de plusieurs ficheirs (montant et descendant)
  •  Amélioration de la navigation dans les membres source, également plus rapide
  •  Intégration de Visual Explain (mais pas Visual)
  • Visual Explain depuis une requête SQL dans un programme RPGLE
  •  Intégration de SELF
  •  Support de la signature pour les fonctions et procédures SQL 
  •  Refactor des sous-routines en procédures

 

Cf https://marketplace.visualstudio.com/items?itemName=HalcyonTechLtd.ibm-i-development-pack

 

Le produit bouge :

Quelques commentaires sur les contributeurs au projet :

 

Par exemple pour Visual Explain

Avec Access Client Solutions on a

MERLIN

Version 2.0.0 (Modernization Engin for Lifecycle INtegration).

Merlin est un écosystème de développement IBM i cloud ready : intègre des capacités de change management, IDE,build intelligent ...

Cette nouvelles version apporte :

  • Nouveaux outils pour les développeurs IBM i : refactoring, modernisation,documentation, exposition de la logique métier sous forme d'API Rest
  • Amélioration de l'interface graphique pour une meilleure prise en main
  • Plus d'intégration des outils Arcad comme le build intelligent, l'analyse d'impact, la transformation de RPG colonné à RPG libre
  • Merlin peut s'executer désormais dans RedHat OpenShift (OCP) et RedHat Single Node OpenShift (SNOP), y compris sur Power
  •  L'IDE inclu désormais Code for IBM i (dansVSCode), Source Orbit et des extensions pour DB2. Tout ceci pour une meilleure gestion des langages IBM i natifs
  •  Amélioration du débogage avec l'ajout des points d'entrée de service

Cf https://ibm.github.io/merlin-docs/#/