« Apinc:MigrationServeur » : différence entre les versions

De Wiki JabberFR
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
 
(31 versions intermédiaires par 5 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
Le nouveau serveur s'appelle '''apijab.apinc.org''' (80.248.214.43 si votre DNS n'est pas à jour). Il s'agit d'un P4 2.8 Ghz avec 2G de RAM. ([http://www.computerhq.com/images/62690_h/huge.jpg photo])
Le nouveau serveur s'appelle '''apijab.apinc.org''' (80.248.214.43 si votre DNS n'est pas à jour). Il s'agit d'un P4 2.8 Ghz avec 2G de RAM. ([http://www.computerhq.com/images/62690_h/huge.jpg photo])


Le disque dur sera doublé en RAID 1 (pour l'instant, il n'y a qu'un disque), une coupure est donc à prévoir très prochainement pour rajouter le deuxieme disque dur.
Le serveur est configuré avec 2 disques dur en RAID 1 (raid 1 soft).
 
De plus, un Vserver (apijab2, 80.248.214.44) est également disponible et est configuré à l'identique (autant que possible).
 
= Console série =
* se connecter sur le serveur de console (80.248.214.45)
* lancer kermit
* taper les commandes suivantes
set modem type none
set line /dev/ttyS0
set carrier-watch off
set speed 19200
set flow rts/cts
set parity none
set stop-bits 1
set flow xon/xoff
connect
 
* si nécessaire, pour rentrer dans le bios, faire ESC + '-'


= TODO List =
= TODO List =
* <s>Mise à jour en Debian testing</s> (lucas)
* '''Il y a une copie du système d'avant le crash disque dans /scratch/old-apijab/copy-wizzz/ . Le contenu des fichiers n'est pas garanti comme le FS a crashé ...'''
 
* <s>Script pour être tenu au courant lorsque des mises-à-jour sont dispo</s> (lucas)
* <s>Script pour être tenu au courant lorsque des mises-à-jour sont dispo</s> (lucas)
: installé dans /usr/local/bin/checkupdates.bash, seul lucas recoit les mails pour éviter le flood de jabber@apinc.org
: installé dans /usr/local/bin/checkupdates.bash, mails envoyés à jabber@apinc.org
* <s>Configuration MTA</s> (lucas)
* <s>Configuration MTA</s> (lucas)
* <s>Création d'un compte jabber. Ajout des clés SSH de jabber@jabber-vds. Normalement, le mot de passe est le même, mais je ne suis pas 100% du mot de passe sur jabber@jabber-vds. Me le dire sinon.</s> '''Me contacter sur Jabber pour connaitre le pass root. (lucas)'''
* Création d'un compte jabber. Ajout des clés SSH de jabber@jabber-vds. Normalement, le mot de passe est le même, mais je ne suis pas 100% du mot de passe sur jabber@jabber-vds. Me le dire sinon. '''Me contacter sur Jabber pour connaitre le pass root. (lucas)'''
* <s>Firewall</s> (lucas). '''Configuré dans /etc/init.d/firewall'''
* <s>Firewall (lucas). '''Configuré dans /etc/init.d/firewall'''. ''/etc/init.d/firewall start'' pour recharger les règles.</s>
* <s>Config d'un bind local faisant uniquement cache pour éviter les problèmes liés à des défaillances d'un autre DNS.</s> (lucas)
* <s>Config d'un bind local faisant uniquement cache pour éviter les problèmes liés à des défaillances d'un autre DNS.</s> (lucas)
* <s>Install+config d'un MySQL local.</s> (lucas). '''Phpmyadmin installé, accessible uniquement depuis 127.0.0.1 (faut faire un tunnel SSH)'''
* <s>Install+config d'un MySQL local.</s> (lucas). '''Phpmyadmin installé, accessible uniquement depuis 127.0.0.1 (faut faire un tunnel SSH)'''
* <s>Install+config d'un Apache2 local avec PHP.</s> (lucas)
* <s>Install+config d'un Apache2 local avec PHP.</s> (lucas)
* <s>Sauvegardes régulières du système</s> (lucas)
* <s>Ajout d'un système de monitoring CPU, mémoire, disque, réseau, température (lm-sensors déjà installé).</s>
: '''J'ai installé [http://munin.sf.net/ munin]. Visible par tout le monde sur http://apijab.apinc.org/munin/ (lucas)'''
* <s>Sauvegardes régulières du système</s> (lucas) les petits détails problématiques (impossible de récupérer les sélections dpkg par exemple) ont été corrigés.
* <s>Sauvegardes régulières du compte jabber</s> (lucas)
* <s>Sauvegardes régulières du compte jabber</s> (lucas)
* <s>DNS apijab.apinc.org</s> (admins Apinc)
* <s>Copie de tout le système sur apijab-backup</s>
* <s>Ajout d'un système de monitoring CPU, mémoire, disque, réseau, température (lm-sensors déjà installé). Qu'est-ce qu'il y a de pas trop prise de tête à installer ?</s>
: <s>avec dump mysql et selections dpkg aussi.</s>
: <s>ntop pour le réseau, c'est trop simple et trop bon ! (Nyco)</s>
: Un cron (/root/bin/copy-to-apijab2.bash) copie l'ensemble sur apijab2 toutes les 30 mins, dans /apijab-copy. (lucas)
: <s>ouais mais ca n'est vraiment utile que pour le réseau local... Il y a des solutions basées sur cricket mais c'est souvent lourd à configurer. (lucas)</s>
 
: '''J'ai installé [http://munin.sf.net/ munin]. Visible par tout le monde sur http://apijab.apinc.org/munin/ (lucas)'''
A vérifier :
* DNS apijab.apinc.org (admins Apinc). Demande faite.
* Configurer le panel LCD pour afficher le nombre de connectés sur Jabber. [http://lcdproc.omnipotent.net lcdproc 0.5] supporte les LCD Tyan, mais n'est pas encore packagé dans Debian (seule une vieille version y est). Attendons de voir si le mainteneur réagit ...
* Configurer le panel LCD pour afficher le nombre de connectés sur Jabber. [http://lcdproc.omnipotent.net lcdproc 0.5] supporte les LCD Tyan, mais n'est pas encore packagé dans Debian (seule une vieille version y est). Attendons de voir si le mainteneur réagit ...
* Vérifier la procédure de reboot
 
* Migration de services faciles à migrer :
Attention, je me suis fait avoir par le [http://bugs.debian.org/276220 bug 276220] (aussi [http://bugs.debian.org/289265 289265]) concernant bootlogd + keymap.sh + boot avec console série. Il faut vérifier que bootlogd est démarré après keymap.sh. Si c'est plus le cas (après une upgrade), il suffit de faire un CTRL+C dans la console série.
** Annuaire
 
** Passerelle MSN
* régler probleme rotation logs mysql ([http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=368547 bug Debian])
** passerelle ICQ (faut-il en profiter pour migrer à pyicq-t ?)
* Probleme lors du démarrage d'apache2 : ''Reloading apache 2.0 configuration...[Tue Jul 25 23:39:40 2006] [warn] NameVirtualHost *:0 has no VirtualHosts''. Pas compris. Si qqun veut regarder ...
** passerelle AIM (faut-il en profiter pour migrer à pyaim-t ?)
 
** passerelle Yahoo (faut-il en profiter pour migrer à pyyim-t ?)
= Plan de migration pour la suite =
** Proxy
== Dès que possible ==
** MUC
* migration de l'arbo de répertoires avec bin/, log/, init.d/, rc.d/, etc '''(lucas, commencé (manque bin/jabber start|stop)'''
* Migrer les services embetants
* <s>migration (+ mise à jour au passage) de la passerelle MSN (nécessite install de paquets)</s> '''(lucas)'''
** Routeur, c2s, s2s, SMs. en profiter pour migrer à ejabberd ?
* <s>migration de l'annuaire (nécessite config mysql & apache) (lucas)</s>
** Punjab
* migration du MUC (je pense pas que c'est une bonne idée de basculer en même temps au MUC de ejabberd, surtout que le notre marche pas trop mal) (nécessite config apache + install de paquets) '''(???)'''
:* mmh, après réflexion, et vu les problèmes de lenteur du MUC actuel, peut-être qu'il vaut mieux changer ... [[Utilisateur:Lucas|lucas]] 13 jun 2006 à 22:13 (CEST)
::* Sinon on peut essayer de migrer le muc sur le nouveau serveur et de regarder si ca lag moins. [[Utilisateur:Omega|Omega]] 13 jun 2006 à 23:07 (CEST)
:::* Oui, mais c'est assez embetant à cause du DNS. Ca obligerait à installer un s2s et un routeur sur le nouveau serveur, donc du coup, il faut se poser la question de quel routeur / quel s2s... Je propose de d'abord se décider sur la gestion des adresses IP (voir plus bas). [[Utilisateur:Lucas|lucas]] 14 jun 2006 à 10:35 (CEST)
::::* On peut pas faire comme avec les autres services ? on utilise jcr et on se connecte au serveur jabber actuel et c'est lui qui route les paquets vers le muc. [[Utilisateur:Omega|Omega]] 14 jun 2006 à 19:23 (CEST)
:::::* On pourrait, mais ca casserait http://chat.jabberfr.org/ ... Ce qui n'est pas monstrueusement grave non plus. [[Utilisateur:Lucas|lucas]] 14 jun 2006 à 22:03 (CEST)
* <s>migration de proxy.jabberfr.org (nécessite probablement install de paquets + maj DNS) </s>'''(omega)'''
* migration des passerelles ICQ, AIM, Yahoo, avec éventuellement passage aux passerelles Python '''(???)'''
* installation d'un ejabberd sur le nouveau serveur pour tester et se faire la main
** compilé à la main pour plus de souplesse, avec support MySQL natif
** avec au moins 2 domaines de test, pour tester les vhosts
** éventuellement, test avec [http://www.process-one.net/fr/projects/tsung/ Tsung]
** test du http polling/binding, car on n'utilisera plus punjab
 
== Plan d'utilisation des adresses IP ==
=== Disponibles ===
* apijab.apinc.org 80.248.214.43
* apijab-backup.apinc.org 80.248.214.44
* service1-jabber.apinc.org 80.248.214.47
* service2-jabber.apinc.org 80.248.214.48
 
=== Besoins ===
* Il doit être possible de déplacer facilement les services d'apijab à apijab-backup. Donc idéalement, les services doivent écouter sur les IPs de services, et pas sur les IPs des serveurs.
* Les services sont:
** ejabberd (c2s, s2s).
** accès par ports non-habituels pour les firewalls à problèmes. Que faut-il ouvrir ? '''(Nyco ?)''' 443
** users.jabberfr.org (accessible via le s2s de ejabberd), il faut un serveur web écoutant sur la même IP.
** chat.jabberfr.org (accessible via le s2s de ejabberd), il faut un serveur web écoutant sur la même IP.
** proxy.jabberfr.org (accessible via le s2s de ejabberd), besoin d'ouvrir un port (8080 ?) sur une IP quelconque (pas forcément la même IP)
** http polling / binding. besoin d'un serveur web écoutant sur l'IP d'ejabberd. (Beber) ejabberd le fait tout seul.
** passerelles (accessible via le s2s de ejabberd)
** '''Autres besoins de ports ?'''
 
== Quand tout fonctionne bien et que le serveur est complètement prêt ==
* basculement C2S, S2S, S2S de l'ancien serveur vers ejabberd sur le nouveau serveur
 
= Notes =
* Les ports 41000 à 41100 sont ouverts en entrés sur im.apinc.org depuis 80.248.214.42 et 80.248.214.43 (apijab)
 
= Installation de jabberd 1.5 sur apijab (notes) =
 
svn co http://svn.jabberd.org/trunk/
 
installation de gettext, libgnutls-dev, etc
 
Dépendences: libssl-dev libidn11-dev libtool libpth-dev libexpat1-dev
 
./bootstrap
 
hacker pour autoriser autoconf 2.60
 
./configure --prefix=/home/jabber/jabberd15 --enable-legacy --enable-ssl
 
(Rajouter mysql ?)
 
jadc2s:
 
./configure --prefix=/home/jabber/jadc2s --enable-ssl --enable-flash

Dernière version du 30 octobre 2006 à 13:50

Le nouveau serveur s'appelle apijab.apinc.org (80.248.214.43 si votre DNS n'est pas à jour). Il s'agit d'un P4 2.8 Ghz avec 2G de RAM. (photo)

Le serveur est configuré avec 2 disques dur en RAID 1 (raid 1 soft).

De plus, un Vserver (apijab2, 80.248.214.44) est également disponible et est configuré à l'identique (autant que possible).

Console série

  • se connecter sur le serveur de console (80.248.214.45)
  • lancer kermit
  • taper les commandes suivantes
set modem type none
set line /dev/ttyS0
set carrier-watch off
set speed 19200
set flow rts/cts
set parity none
set stop-bits 1
set flow xon/xoff
connect
  • si nécessaire, pour rentrer dans le bios, faire ESC + '-'

TODO List

  • Il y a une copie du système d'avant le crash disque dans /scratch/old-apijab/copy-wizzz/ . Le contenu des fichiers n'est pas garanti comme le FS a crashé ...
  • Script pour être tenu au courant lorsque des mises-à-jour sont dispo (lucas)
installé dans /usr/local/bin/checkupdates.bash, mails envoyés à jabber@apinc.org
  • Configuration MTA (lucas)
  • Création d'un compte jabber. Ajout des clés SSH de jabber@jabber-vds. Normalement, le mot de passe est le même, mais je ne suis pas 100% du mot de passe sur jabber@jabber-vds. Me le dire sinon. Me contacter sur Jabber pour connaitre le pass root. (lucas)
  • Firewall (lucas). Configuré dans /etc/init.d/firewall. /etc/init.d/firewall start pour recharger les règles.
  • Config d'un bind local faisant uniquement cache pour éviter les problèmes liés à des défaillances d'un autre DNS. (lucas)
  • Install+config d'un MySQL local. (lucas). Phpmyadmin installé, accessible uniquement depuis 127.0.0.1 (faut faire un tunnel SSH)
  • Install+config d'un Apache2 local avec PHP. (lucas)
  • Ajout d'un système de monitoring CPU, mémoire, disque, réseau, température (lm-sensors déjà installé).
J'ai installé munin. Visible par tout le monde sur http://apijab.apinc.org/munin/ (lucas)
  • Sauvegardes régulières du système (lucas) les petits détails problématiques (impossible de récupérer les sélections dpkg par exemple) ont été corrigés.
  • Sauvegardes régulières du compte jabber (lucas)
  • Copie de tout le système sur apijab-backup
avec dump mysql et selections dpkg aussi.
Un cron (/root/bin/copy-to-apijab2.bash) copie l'ensemble sur apijab2 toutes les 30 mins, dans /apijab-copy. (lucas)

A vérifier :

  • DNS apijab.apinc.org (admins Apinc). Demande faite.
  • Configurer le panel LCD pour afficher le nombre de connectés sur Jabber. lcdproc 0.5 supporte les LCD Tyan, mais n'est pas encore packagé dans Debian (seule une vieille version y est). Attendons de voir si le mainteneur réagit ...

Attention, je me suis fait avoir par le bug 276220 (aussi 289265) concernant bootlogd + keymap.sh + boot avec console série. Il faut vérifier que bootlogd est démarré après keymap.sh. Si c'est plus le cas (après une upgrade), il suffit de faire un CTRL+C dans la console série.

  • régler probleme rotation logs mysql (bug Debian)
  • Probleme lors du démarrage d'apache2 : Reloading apache 2.0 configuration...[Tue Jul 25 23:39:40 2006] [warn] NameVirtualHost *:0 has no VirtualHosts. Pas compris. Si qqun veut regarder ...

Plan de migration pour la suite

Dès que possible

  • migration de l'arbo de répertoires avec bin/, log/, init.d/, rc.d/, etc (lucas, commencé (manque bin/jabber start|stop)
  • migration (+ mise à jour au passage) de la passerelle MSN (nécessite install de paquets) (lucas)
  • migration de l'annuaire (nécessite config mysql & apache) (lucas)
  • migration du MUC (je pense pas que c'est une bonne idée de basculer en même temps au MUC de ejabberd, surtout que le notre marche pas trop mal) (nécessite config apache + install de paquets) (???)
  • mmh, après réflexion, et vu les problèmes de lenteur du MUC actuel, peut-être qu'il vaut mieux changer ... lucas 13 jun 2006 à 22:13 (CEST)
  • Sinon on peut essayer de migrer le muc sur le nouveau serveur et de regarder si ca lag moins. Omega 13 jun 2006 à 23:07 (CEST)
  • Oui, mais c'est assez embetant à cause du DNS. Ca obligerait à installer un s2s et un routeur sur le nouveau serveur, donc du coup, il faut se poser la question de quel routeur / quel s2s... Je propose de d'abord se décider sur la gestion des adresses IP (voir plus bas). lucas 14 jun 2006 à 10:35 (CEST)
  • On peut pas faire comme avec les autres services ? on utilise jcr et on se connecte au serveur jabber actuel et c'est lui qui route les paquets vers le muc. Omega 14 jun 2006 à 19:23 (CEST)
  • migration de proxy.jabberfr.org (nécessite probablement install de paquets + maj DNS) (omega)
  • migration des passerelles ICQ, AIM, Yahoo, avec éventuellement passage aux passerelles Python (???)
  • installation d'un ejabberd sur le nouveau serveur pour tester et se faire la main
    • compilé à la main pour plus de souplesse, avec support MySQL natif
    • avec au moins 2 domaines de test, pour tester les vhosts
    • éventuellement, test avec Tsung
    • test du http polling/binding, car on n'utilisera plus punjab

Plan d'utilisation des adresses IP

Disponibles

  • apijab.apinc.org 80.248.214.43
  • apijab-backup.apinc.org 80.248.214.44
  • service1-jabber.apinc.org 80.248.214.47
  • service2-jabber.apinc.org 80.248.214.48

Besoins

  • Il doit être possible de déplacer facilement les services d'apijab à apijab-backup. Donc idéalement, les services doivent écouter sur les IPs de services, et pas sur les IPs des serveurs.
  • Les services sont:
    • ejabberd (c2s, s2s).
    • accès par ports non-habituels pour les firewalls à problèmes. Que faut-il ouvrir ? (Nyco ?) 443
    • users.jabberfr.org (accessible via le s2s de ejabberd), il faut un serveur web écoutant sur la même IP.
    • chat.jabberfr.org (accessible via le s2s de ejabberd), il faut un serveur web écoutant sur la même IP.
    • proxy.jabberfr.org (accessible via le s2s de ejabberd), besoin d'ouvrir un port (8080 ?) sur une IP quelconque (pas forcément la même IP)
    • http polling / binding. besoin d'un serveur web écoutant sur l'IP d'ejabberd. (Beber) ejabberd le fait tout seul.
    • passerelles (accessible via le s2s de ejabberd)
    • Autres besoins de ports ?

Quand tout fonctionne bien et que le serveur est complètement prêt

  • basculement C2S, S2S, S2S de l'ancien serveur vers ejabberd sur le nouveau serveur

Notes

  • Les ports 41000 à 41100 sont ouverts en entrés sur im.apinc.org depuis 80.248.214.42 et 80.248.214.43 (apijab)

Installation de jabberd 1.5 sur apijab (notes)

svn co http://svn.jabberd.org/trunk/

installation de gettext, libgnutls-dev, etc

Dépendences: libssl-dev libidn11-dev libtool libpth-dev libexpat1-dev

./bootstrap

hacker pour autoriser autoconf 2.60

./configure --prefix=/home/jabber/jabberd15 --enable-legacy --enable-ssl

(Rajouter mysql ?)

jadc2s:

./configure --prefix=/home/jabber/jadc2s --enable-ssl --enable-flash