La fonction de décommisonnement des serveurs

Bon comme tout le monde un jour vous risquez de devoir arrêter un serveur pour le remplacer par un autre, plus grand, plus beau, plus puissant, qui sentira bon le sable chaud .. Je m'égare ..

Mais comment savoir ce qu'il faut faire car la liste peut être longue des documents à modifier ou des bases à transférer (enfin ça c'est généralement le plus facile ..).

Et bien pour arrêter un serveur, transférer tout sur un autre Domino va vous mâcher le travail .. C'est prévu et ça s'appelle le "décommisionnement" (un peu comme quand j'étais petit "on va aller faire les commissions ..." mais là on va faire la liste des commissions).

Alors pour savoir tout ce qui doit être fait ... On prend son Lotus Administrateur, on choisi le serveur (le futur ancien ..) puis dans l'onglet "Serveur" on va dans "Analyse"

Puis dans le menu "Outils"

On va choisir "Mettre serveur hors service" ... Allez pas de panique on va rien faire sur le serveur, c'est juste pour faire flipper le chef qui comprend rien a Domino ;-).

Je vous rappelle qu'on est dans l'onglet "Analyse" (comme dirait Freud) cette opération va simplement produire le rapport d'analyse dans une base locale du poste de travail.

Bon on se lance et on clique sur "Mettre serveur hors service", on obtient un masque qui demande le serveur source et le serveur cible (vers qui on va tout transférer ..).


Là soit on met toutes les informations dans la base existante, si elle n'existe pas elle est crée, sinon on fait une nouvelle base.

Il ne reste qu'à ouvrir la base


et ouvrir les différents documents pour savoir ce qu'il vous reste à faire avant d'arrêter votre ancien serveur.

Faire une base de redirection automatique tant en Lotus Notes qu'en Http

Bon je sais maintenant il parait que le système est opérationnelle sur les nouvelles version de serveur mais quand même on murmure qu'il y aurait des erreurs des pop up et des trucs qui daille l'utilisateur et donc l'administrateur ...
Alors le but est de faire en sorte que les personnes qui ouvrent la base en question sur un serveur se retrouvent automatiquement redirigé sur un autre serveur de façon transparente.
Le principe est simple finalement :
  1. On réplique la base sur le serveur de destination
  2. On modifie les informations des fiches de l'annuaire pour le routage sur le nouveau serveur
  3. On supprime la base de l'ancien serveur et on la remplace par une base créée sur le modèle décrit après. La base doit simplement mais de manière impérative porter le même nom de fichier et bien sûr être dans le même répertoire (je sais c'est beaucoup mais on va quand même pas se prendre la tête ... )
Alors passons maintenant à la base modèle ...

Nous allons mettre en oeuvre des bouts de script et du codage http à différents endroits de la base.
Mais occupons nous d'abord de la liste de contrôle d'accès ... Facile comme on va faire du postopen et que la base ne contient rien en terme de donnée si la personne est "auteur" ca le fait parfaitement ..

Et hop pour la suite occupons nous des composants de la base de redirection ...

d'abord on va faire un masque


avec un lien URL qui contient une valeur calculé sur la champ qui va servir pour le web


Dans le masque on positionne le lien web avec une valeur calculée qui contient le nom du champ (cf le champ suivant ) vers la base de destination et un champ (celui là .. ) qui contient la valeur @ReplaceSubstring(@ReplaceSubstring(@LowerCase(@Subset(@DbName; -1)); "mail" : " "; "mailbp" : "+"); "\\" : " "; "/" : "+")

Le lien URL est

bon on a finit avec le masque

Alors voyons les pages, deux pages pour tenir les utilisateurs au courant ...

La première qui va être ouverte lors de l'ouverture de la base Notes et va provoquer la redirection vers la nouvelle base

La deuxième va rester ouverte sur le poste de l'utilisateur pour le prévenir du changement

Elle contient un bouton pour permettre la fermeture de la base de redirection.

Voila il ne manque plus que deux éléments l'agencement pour faire apparaitre les pages au bon endroit et le post open de la base.

L'agencement je vous le laisse faire pour mette la page de fermeture ...

Le post open se compose de deux éléments une constante pour fixer le nom du serveur de destination et le code de post open :

Sub Postopen(Source As Notesuidatabase)

Dim workspace As New NotesUIWorkspace
Dim session As New NotesSession
Dim CurrentMailDatabase As NotesUIDatabase
Dim CurrentMail As NotesDatabase
Dim nomfichier As String
Dim ServerMailDatabase As String

Dim Result As Integer

Set CurrentMail = session.CurrentDatabase
nomfichier = CurrentMail.FileName
nomfichier = "mailbp\" + nomfichier

Call workspace.OpenDatabase ( MailBPServer,nomfichier , , , False, False )

End Sub

Reste à bien vérifier que lors de l'ouverture de la base en mode web ou en mode notes les bon documents s'affichent et le tour est joué ...


Alors pour les plus courageux à vos Designer pour les autres si vous me demandez la base je vous l'envoi ..

Abonnez vous à une boite aux lettres sous Domino

Alors comme tout le monde le sait le système d'abonnement de Domino est plus que douteux, cependant depuis la version 8 il est possible d'utiliser le flux RSS et/ou Atom pour s'abonner aux messages de sa boite fonctionnelle préféré .. ou d'une autre ne soyons pas sectaire.

Pour offrir cette fonctionnalité c'est simple on lit cet article et on rajoute les paramètres dont on a besoin dans le notes.ini du serveur

iNotes_WA_Feeds=atom,rss
iNotes_WA_FeedsSecured=0
(on redémarre le http ... bien sûr ..)

Puisque maintenant on sait à quoi ça sert et il ne reste plus qu'à s'abonner sur la boite avec son lecteur rss favori (voir le client Notes lui même si c'est une boite fonctionnelle ...) ou sur une page récapitulative une fois l'authentification réalisée ... (tiens ca c'est une idée pour le nouveau site ... )

Développement de package d'installation simple

Développer un package d'installation simple peut se faire plus simplement que d'utiliser des installeurs complexes.
Pour ma part j'utilise les produits suivants (gratuit bien sûr ..) qui me permettent de mettre en place rapidement des produits sur des postes de travail ou d'en effectuer des modifications.

Les produits sous Windows

Exemple de la simplicité du langage :

;Test si le client Lotus Notes est actif
;la variable de pid doit être a 0
$PID = ProcessExists("nlnotes.exe")
;Pour les tests il faut le ractiver a la fin des tests
$PID = "0"
;vérification de la présence du répertoire d'installation des programmes
$DIR=0
$DIR=DirGetSize($installDir)
If $DIR = -1 Then
MsgBox(16,"Fin anormale de l'installation","Répertoire source introuvable",5)
exit 1
EndIf
If $DIR = 0 Then
MsgBox(16,"Fin anormale de l'installation","Répertoire source est vide",5)
exit 1
EndIf


;Lancement de la procdure d'installation
;on commence par les tests
If $PID <> "0" Then
;Si le client Notes est actif on fait un message d'erreur et on quitte
ERR("Message d'erreur","Le client Notes est encore actif sur le poste de travail, Vous devez arrter le client Lotus Notes et relancer la procdure d'installation")
exit 1
Else

;Test de la configuration avant la mise en oeuvre de l'installation
;on regarde si le poste de travail contient le fichier admin.exe
; Démarrage de l installation par l analyse du poste


;Lecture de la base de registre pour connaitre les repertoires d'installation et faire les vérification
$SourcePath = RegRead ( 'HKEY_LOCAL_MACHINE\' & 'Software\Lotus\Notes\6.0', 'Path' )
If $SourcePath = ""Then
$MsgError("Installation du client Nomade version 8.0.2 impossible", "La base de registre n'est pas jour. Il manque la clef :HKEY_LOCAL_MACHINE\Software\Lotus\Notes\Path ")
$fhandle=1
Exit 1
EndIf

$SourceData = RegRead ( 'HKEY_LOCAL_MACHINE\' & 'Software\Lotus\Notes\6.0', 'DataPath' )
If $SourceData=""Then
$MsgError("Installation du client Nomade version 8.0.2 impossible", "La base de registre n'est pas jour. Il manque la clef :HKEY_LOCAL_MACHINE\Software\Lotus\Notes\DataPath ")
$fhandle=2
Exit 1
EndIf
  • Le langage de commande du système d'exploitation
Ici pas besoin d'explication .. enfin j'espère ...
  • Iexpress (livré en standard avec Windows) un tutorial même si c'est simple Tutorial et plus en détail avec le concepteur Microsoft En détail



Avec ces outils vous pourrez composer des packages simples très facilement et les compiler pour en faire des exécutables.

Lotus Notes 8.5 version to version comparison

Check out this SlideShare Presentation:

Introducing IBM Lotus Notes and Domino 8.5

Check out this SlideShare Presentation:
Introducing IBM Lotus Notes and Domino 8.5
View more presentations from tcoustenoble.


Certes c'est du slideware mais ca le fait quand même ...