Prologue (important...)
À l'issue de votre upgrade, vérifiez que vous êtes bien représenté sur la carte mondiale des QoQ-CoTiens. Si ça n'est pas le cas, ou si les informations indiquées (nb. de postes en particulier) sont obsolètes, postez un message (“Commencer une nouvelle discussion”) dans le forum « Poulailler » du projet sur SourceSup, en indiquant votre établissement et le nombre de postes concernés. D'une, vous apparaîtrez sur la carte (et ça, c'est la classe à Dallas ! et de deux, ça nous permettra de mieux connaître et de communiquer plus directement avec les utilisateurs de la solution (nouvelles features, évolutions, bugs…). Merci
Procédure d'upgrade depuis toute version antérieure vers V5.0 Mac Bec
Divulgâchons immédiatement, il n'y a de procédure directe d'upgrade que depuis la version 4.0 Rocky. Depuis toute autre version, il vous faudra commencer par upgrader vers la 4.0. Tout est (minutieusement) expliqué ici : upgrade_to_v4.0_rocky.
Préambule au sujet du mode multisites
Cette page s'attache à détailler le processus technique d'upgrade depuis v4.0 Rocky. La version 5.0 Mac Bec introduisant la notion (très attendue) de sites, avec la possibilité de visualiser de façon compartimenté différents sites (l'utilisation la plus immédiate correspond à des sous-ensembles géographiques d'un parc machines), la question connexe d'upgrade AVEC passage en mode multisites se doit d'être abordée. Mais elle dépasse le cadre strict de l'upgrade abordé ici, il s'agit davantage d'une méthode faisant appel à la fois aux procédure d'install et d'upgrade. Nous avons donc préféré traiter le problème en dehors de cette page et en faire l'objet de cette nouvelle entrée de la FAQ. Commencez par y jeter un coup d’œil si vous souhaitez aller vers une QoQ-CoT multisites, ça vous donnera une idée globale du chemin – pas trop escarpé, c'est promis – dans lequel il va falloir s'engager.
A. Le plus facile, l'interface web
Upgrade depuis V4.0 Rocky
0. S'assurer de satisfaire tous les prérequis Mac Bec 5.0 en termes MySQL et PHP indiqués dans cette section de la doc de fresh install
1. Pour simplifier ici la lecture, on nommera la base mysql QoQCoT
(pas de tirets « - » autorisés dans les noms de bases MySQL…) et l'utilisateur associé QoQCoT_user
.
2. Détarer la si prometteuse archive V5.0 Mac Bec, par exemple dans /tmp
3. Copier votre qoq-cot/config.php
actuel dans /tmp/qoq-cot/src/
4. Vos données ne risquent rien, bien sûr, lors de cet upgrade… mais sauvez-les quand même… Dumpez donc soigneusement votre base QoQCoT
.
5. Modifiez votre base de données pour la rendre v5.0 compatible. Pour vous éviter de trop toucher à ces rouages internes recouverts de graisse forcément salissante, car nous tenons à votre confort, nous avons regroupé et automatisé toutes ces modifs dans le seul script /tmp/qoq-cot/ressources/UPGRADE_FROM_PREVIOUS_VERSIONS/ModifieDBV4toV5.sh
.
Mais quelles sont donc ces fameuses actions, me direz-vous, circonspect et méfiant comme doit l'être à raison un informaticien à l'heure du big data et de wikileaks ? Détaillons donc ça ensemble :
Maintenant que nous savons POURQUOI il faut exécuter ce script, voyons COMMENT :
5.1 Exécution du script ModifieDBV4toV5.sh
5.1.1 copier /tmp/qoq-cot/ressources/UPGRADE_FROM_PREVIOUS_VERSIONS/ModifieDBV4toV5.sh
sur un serveur Linux disposant du client MySQL ET depuis lequel l'utilisateur root
de MySQL ET l'utilisateur QoQCoT_user
sont autorisés à se connecter (table user
de la base mysql
). Par exemple le serveur MySQL, ou le serveur qui tourne l'interface web QoQ-CoT…
5.1.2 copier dans le même répertoire votre fichier config.php
(si vous avez suivi les indications, il est dans /tmp/qoq-cot/src/
) : le script utilise ce fichier pour récupérer toutes les données utiles à la création de la base.
5.1.3 lancer ./ModifieDBV4toV5.sh
dans ce répertoire. À noter :
Vous serez interactivement sollicité pour toutes les actions exécutées par le script. À chaque fois, vous aurez le choix d'effectuer ou non l'action.
Le script peut être lancé un nombre quelconque de fois, les actions pouvant être rejouées indéfiniment sans dommage aucun pour les données.
Les actions, dans l'ordre d'apparition à l'écran :
5.1.3.1 : modification de la structure de la table Connexions
5.1.3.2 : modification de la structure de la table Salles
5.1.3.3 : modification de la structure de la table MachinesToSalles
5.1.4 C'est terminé. Vous pouvez éventuellement détruire les copies de ModifieDBV4toV5.sh
et config.php
, ils ont fini leur travail, furtif et crucial à la fois.
7. Copiez votre qoq-cot/.htaccess
actuel vers /tmp/qoq-cot/src/.htaccess
8. Renommer votre répertoire qoq-cot
actuel en qoq-cot.old
9. déplacez /tmp/qoq-cot/src
dans votre emplacement de prod (c.-à-d. le répertoire qui contient qoq-cot.old
) et renommez-le en qoq-cot
.
10. Ça y est, votre poulette est toujours toute
à vous, mais elle est tellement plus sexy…
11. Mais ATTENTION, même si votre cocotte est fonctionnelle et vous génère (plus vite qu'avant) de beaux graphes, ça n'est pas encore terminé… Pour bénéficier de toute la finesse et de la poésie de Mac Bec, vous devez maintenant exploiter la spécificité de la version 5.0 :
And now, ladies and gentlemen, enjoy the legendary QoQ-CoT 5.0 Mac Bec power !!
B. Le plus long, les poussins et le coq
J'upgrade depuis V4.0 Rocky
Vous êtes déjà en mode poussin/coq, le plus dur est fait
Il y a cependant quelques nouveautés (bio) dans les poussins et le coq V5.0.
Côté poussin
Nouveauté V5.0 Mac Bec
il y a dans la conf. du poussin V4.0, soit le fichier
poussin.yml
, un nouveau paramètre : « vdi ». Il prend en argument un nom de technologie VDI. Pour l'instant, le seul codé est « vmware »
1).
La prise en compte du VDI est une des avancées (super) majeures de la V5.0 Mac Bec. En effet, le poussin informé du fait qu'il s'agit d'une VM va remonter AUSSI le nom et l'IP du terminal sur lequel tourne la VM. ET DONC, roulements de tambours, vous aurez la possibilité d'examiner les taux d'utilisation… des salles de terminaux VDI !!! Taux que nous avions perdu dans QoQ-CoT version <5 dès que les salles étaient passées en VDI. Donc oui, c'est une nouveauté d'une importance capitale ! CHAMPAGNE !!
ATTENTION : les poussins v4.0 Rocky ne sont pas compatibles avec le coq 5.0 Mac Bec ! En effet, en 5.0 Mac Bec, le coq attend du poussin un autre format d'information (on ajoute entre autres les infos IP). Donc comment faire pour migrer un gros parc ?!! La bonne option est de faire tourner 2 coqs, votre ancien 4.0 et le nouveau 5.0, mais sur des ports différents (ça se règle dans la conf du coq et celles des poussins : on prend un nouveau port pour le coq et les poussins 5.0) et de régler (toujours dans la conf) les 2 coqs pour qu'ils envoient vers la même DB, la 5.0 évidemment. Ça, ça marchera, rien ne change pour les poussins 4.0, toutes les connexions seront remontées vers votre nouvelle installation et vous pourrez migrer vos (innombrables) poussins au fil de l'eau… MAIS, pour toutes les machines tournant le poussin v4.0 :
vous continuerez à ne pas avoir d'infos, dans vos connexions, sur l'IP du terminal. Seuls les poussins >= 5.0 Mac Bec remontent cette info dans la base : votre table Connexions
upgradée intègre ce champ et il apparaîtra donc, mais vide, pour des connexions remontées sur une base et une interface web 5.0 Mac Bec par des poussins 4.0 Rocky.
Côté coq
Avec le version 5.0 Mac Bec, nouvelle fonctionnalité : UN FICHIER DE LOG !! Toutes les erreurs (paquets malformés, connexions à la DB qui échouent…) y sont consignées. Le nom du fichier de log est défini dans le fichier coq.d
, tout ceci est précisé dans le fichier README.TXT qui vient dans le répertoire du coq dans l'archive.
Le coq est livré également en version compilée coq64
, pour éviter d'avoir à installer les modules PERL. Mais, nous avons constaté, sans vraie explication technique à vous fournir, que ces versions compilées ne s'exécutaient pas sous certains environnements…
Si vous êtes dans le cas d'un tel contexte récalcitrant (ou que vous faites tourner le coq sur une machine de 2001 d'architecture 32 bits), utilisez à la place le fichier SOURCES/coq.pl
qui lui, fonctionnera… sous réserve de disposer des modules PERL suivants : strict, warnings, IO::SocketEncode, DBI, YAML::Tiny, Data::Dumper, MIME::Base64 et integer
. La plupart devraient être installés de base, sauf probablement YAML::Tiny
.
Épilogue (important...)
À l'issue de votre upgrade, vérifiez que vous êtes bien représenté sur la carte mondiale des QoQ-CoTiens. Si ça n'est pas le cas, ou si les informations indiquées (nb. de postes en particulier) sont obsolètes, postez un message (“Commencer une nouvelle discussion”) dans le forum « Poulailler » du projet sur SourceSup, en indiquant votre établissement et le nombre de postes concernés. D'une, vous apparaîtrez sur la carte (et ça, c'est la classe à Dallas ! et de deux, ça nous permettra de mieux connaître et de communiquer plus directement avec les utilisateurs de la solution (nouvelles features, évolutions, bugs…). Merci :-