Modifications entre les versions 16 et 17
Version 16 à la date du 2008-02-20 15:15:09
Taille: 7786
Éditeur: ThomasNoël
Commentaire: tipo
Version 17 à la date du 2008-02-20 15:45:05
Taille: 7930
Éditeur: ThomasNoël
Commentaire: bon ben on se lance avec des petits gars volontaires ? qui ? qui ?...
Texte supprimé. Texte ajouté.
Ligne 18: Ligne 18:
 . En cours de mise en place dans `deb http://apt.auf.org etch voip-test`
 . '''ATTENTION''' c'est vraiment des tests, pour l'instant ça marche même pas ;) Ceux qui veulent tester (mais alors uniquement TESTER, sur des serveurs de TEST très éloignés de toute machine en production ;) ) peuvent ajouter cette source en deb (voire deb-src pour ceux qui aiment compiler).
Mis en place dans `deb http://apt.auf.org etch voip-test`

'''JE CHERCHE DES VOLONTAIRES''' pour tester en production. Il suffit d'être capable, si ça déconne (cas peu probable), de repasser en asterisk 1.2. Donc il suffit de faire un backup de son /etc/asterisk/auf/ et de garder sa clé privée dans un coin, c'est tout.
Ligne 41: Ligne 42:
Backport des sources asterisk-addons, ce qui donne : Backport des sources asterisk-addons, telles quelles, ce qui donne :
Ligne 124: Ligne 125:

= Test 3 =

Un VRAI upgrade d'un serveur en production : Dakar, ce soir, me promet Jérôme. Allez Jérôme ! Lâche pas l'affaire, y'en a plus que pour quelques mois ;)

Mes notes pour un backport de Asterisk 1.4.x (Debian/Sid) vers Etch -- ThomasNoël

Objectifs

Je veux compiler une version sans y intégrer les trucs inutiles, notamment :

  • pas de h323 dépendant de openh323 (on utilisera asterisk-ooh323c en cas de besoin de h323)
  • pas de liaisons ODBC, MSSQL ou PgSQL, inutiles pour nous
  • pas de consoles kde, qt ou gtk
  • pas de gestion des voicemail en IMAP ou ODBC
  • en revanche, on va ajouter une dépendance sur gnutls apparemment nécessaire pour iksemel (jabber)

Pour cela, on prend une Etch VIERGE. Attention c'est important : la compilation d'asterisk peut varier si tel ou tel paquet est déjà installé. En effet, le ./configure active les modules s'il peut les compiler, et il est difficile de desactiver certains (c'est pas les --with/--without du ./configure qui font tout, c'est beau).

Ensuite, on se base sur ce qui est disponible dans Sid, voir : http://packages.qa.debian.org/a/asterisk.html (s'abonner aux RSS si vous avez envie de voir comment les dev Debian ont du mal avec asterisk).

Résultats actuels

Mis en place dans deb http://apt.auf.org etch voip-test

JE CHERCHE DES VOLONTAIRES pour tester en production. Il suffit d'être capable, si ça déconne (cas peu probable), de repasser en asterisk 1.2. Donc il suffit de faire un backup de son /etc/asterisk/auf/ et de garder sa clé privée dans un coin, c'est tout.

Dépendances

il faut backporter libpri et zaptel : aucun soucis de ce coté là

Modification des sources d'asterisk

Voir le changelog du paquet... c'est un peu le bazar, mais on y arrive (c'est déjà moins tordu qu'avec 1.2, j'avoue).

asterisk-config-auf

Adapté à asterisk 1.4. Un vrai parcours du combattant vu la documentation de ce qui a changé entre 1.2 et 1.4 (pour ceux qui n'ont jamais joué avec asterisk : la doc est tout simplement inexacte, partielle, elliptique voire erronée).

appconference

J'ai packagé la version 2.0, compatible avec asterisk 1.4. Elle sait faire beaucoup de choses de plus que la version que nous avons actuellement avec 1.2 ; cependant il va falloir étudier les regressions.

Note : 2.0-1 est une version patchée "AUF" pour annoncer les départs et les arrivées dans une conférence. Le patch, presque pas crapoteux, sera soumis à l'upstream un jour de pluie.

addons

Backport des sources asterisk-addons, telles quelles, ce qui donne :

  • asterisk-ooh323c : channel h323 pour le Grand Projet (TM) de liaison avec le matos de visio Polycom
  • asterisk-mysql : liaisons avec mysql
  • asterisk-mp3 : pour lire les mp3 directement

Notes

  • asterisk-doc : aucune utilité pour nous ; si besoin on prendra celui de Sid

  • Il est très très très très probable que je ne parvienne pas, vu mes ressources, à faire un package qui permette un bel upgrade "hip hop" depuis le 1.2. Y'a trop de trucs modifiés (par asterisk). Je passerais sans doute infiniment moins de temps à documenter une réinstallation (dire ce qui doit être mis de coté avant un purge+install), qui aura "l'avantage" de reprendre un peu le bazar à zéro... Désolé les gars, mais bon.

Reste à faire

  • l'asterisk de sid intègre le patch bristuff : voir si ça inclue DPickUp et autres modifs de bristuff (i.e. on ne doit pas avoir de regression avec l'asterisk-classic que nous utilisons actuellement).

  • d'une façon générale, étudier les regressions (c'est pas la doc d'asterisk qui va nous les dire)
  • tester ekiga/sip... avec la video (en prévision de ekiga 3.0 qui saura faire du codec x264)

Tests en cours

Sur voip-test.sn.auf.org (merci Jérôme), machine vz interne au RPV de Dakar, accessible en IP publiques via IAX2 (SNAT/DNAT).

Test 1 : installation sur une machine vierge

  • Ajout du dépot AUF avec auf-keyring : ok

  • aptitude install asterisk : tout joli, a priori juste ce qu'il faut :

{{{Les NOUVEAUX paquets suivants vont être installés : asterisk asterisk-app-conference asterisk-config-auf asterisk-config-auf-connexions asterisk-moh-auf asterisk-prompt-fr asterisk-sounds-main libasound2 libgsm1 libiksemel3 libogg0 libpri1.0 libradiusclient-ng2 libsensors3 libsnmp-base libsnmp9 libspeex1 libsqlite0 libsysfs2 libtonezone1 libvorbis0a libvorbisenc2 0 paquets mis à jour, 22 nouvellement installés, 0 à enlever et 0 non mis à jour. Il est nécessaire de télécharger 17,7Mo d'archives. Après dépaquetage, 34,4Mo seront utilisés. }}}

  • Installation ok :

    (...)
    Paramétrage de asterisk-config-auf-connexions (1.0-64) ...
    Adding system user for Asterisk
    Ajout de l'utilisateur « asterisk » au groupe « dialout »...
    Terminé.
    Ajout de l'utilisateur « asterisk » au groupe « audio »...
    Terminé.
    Unable to connect to remote asterisk (does /var/run/asterisk/asterisk.ctl exist?)
    Unable to connect to remote asterisk (does /var/run/asterisk/asterisk.ctl exist?)
    
    Paramétrage de asterisk-moh-auf (1) ...
    Unable to connect to remote asterisk (does /var/run/asterisk/asterisk.ctl exist?)
    
    Paramétrage de asterisk-sounds-main (1.4.17~dfsg-1auf2) ...
    Paramétrage de asterisk-prompt-fr (0.0.20070104-1) ...
    Paramétrage de asterisk-app-conference (2.0) ...
    Paramétrage de asterisk-config-auf (1.4-7) ...
    
    Paramétrage de asterisk (1.4.17~dfsg-1auf2) ...
    Asterisk not yet configured. Edit /etc/default/asterisk first.
  • Questions debconf : ok (on les passe vu qu'on a pas encore
  • Vérif des droits sur /etc/asterisk et les clés : ok (note : c'est ast-config-auf-connexion qui créée le compte lors d'une prémière install. Normal. Asterisk s'installe ensuite et ne met pas le bazar, tout a l'air ok !)
  • RUNASTERISK=yes (/etc/default/asterisk : ok)

  • /etc/init.d/asterisk start, stop, reload, etc... : ok

  • astgenkey : ok

  • dpkg-reconfigule asterisk-config-auf : ok (asterisk-config-auf >= 1.4-8)

  • start : ok
  • tests de regression.
    • test des services de base de puis un ipphone : ok
    • test appel vers international, puis depuis international : ok
    • Regressions possibles/prévues :
      • conference : ça marche (version 2.0-1)
      • pickup (mais est-ce utilisé ?) : à revérifier, mais ça a l'air ok

PETITE ÉMOTION : mais mais mais, ça a l'air BON !!!!!

Test 2 : installation depuis une machine en asterisk 1.2 (asterisk-etch)

Youpi, c'est presque bon !!

Notes :

  • ne couvrira pas les installation bidouillées, normalement ça sera à gérer à coup de fichiers *.dpkg-new & co. Logique, classique.

  • pour éviter les réactions bizarres il faut stopper asterisk 1.2 avant le dist-upgrade => downtime

  • l'upgrade peut se faire de deux façons :
    • aptitude dist-upgrade (sans doute la méthode à conseiller, ne devrait pas poser de soucis sur un serveur non bidouillé)

    • aptitude install asterisk asterisk-config-auf asterisk-config-auf-connexions asterisk-prompt-fr (pour être certain de ne mettre à jour que la partie asterisk de la machine ; NB : un simple install asterisk ne suffit pas, au contraire il rend le système incohérent s'il n'est pas suivi d'un upgrade)

  • /etc/default/asterisk : il faut dire "oui" lorsque dpkg veut le remplacer, puis y indiquer "RUNASTERISK=yes"

Reste à faire : déplacement automatique de .key vers /usr/share... il faut le faire le plus tôt possible, sans doute dans asterisk-config-auf/debian/config (dans preinst ça marche pooh... bah...) ? ok dans asterisk-config-auf/debian/config oui je sais, bof mais je suis preneur d'une solution (je précise : pas d'une "idée" de solution, d'une solution testée et validée ;) )

Test 3

Un VRAI upgrade d'un serveur en production : Dakar, ce soir, me promet Jérôme. Allez Jérôme ! Lâche pas l'affaire, y'en a plus que pour quelques mois ;)

Asterisk/NotesBackportEtch (dernière édition le 2008-02-27 10:49:24 par ThomasNoël)