Infos pour les sysadmins
informations facebook :
- la création de ce mediawiki : https://www.facebook.com/groups/120403474764049/permalink/130151823789214/
- discussion pour les devs : https://www.facebook.com/groups/120403474764049/permalink/133132120157851/
1 prospective
2 les mediawiki de prod et tests
ce mediawiki ( "production" ) :
- database = gv
- backup mysql : nice -n 19 mysqldump -u $USER --password=$PASSWORD gv -c | nice -n 19 gzip -9 > /backup/wiki-gv-$(date '+%Y%m%d').sql.gz
deuxieme instance de test/qualification de ce mediawiki : http://projetgentilsvirus.ouvaton.org/test
- database = test
- restore mysql : mysql --user=$USER --password=$PASSWORD test < wiki-gv-20120701.sql
3eme instance de test avec l'extension WYSIWYG en mediawiki 1.18.4 : http://projetgentilsvirus.ouvaton.org/mediawiki-1.18.4/
- database = test1184
3 le drupal de test
http://projetgentilsvirus.ouvaton.org/drupal-7.14/ (DESACTIVATON : changement de drupal-7.14 en drupal-7.14-0)
- database = drupal
4 drupal commons de test
à installer
5 le buddypress de test
http://projetgentilsvirus.ouvaton.org/wordpress (DESACTIVATON : changement de wordpress en wordpress0 !!)
- database = buddypress
6 le elgg de test
http://projetgentilsvirus.ouvaton.org/elgg/ (elgg déplacé vers elgg0 pour éviter le spam)
- database = elgg_test
7 le redmine de test
Voir Redmine
8 backup de /var/www
cd /var/www ; nice -n 19 tar czf /backup2/www-$(date '+%Y%m%d').tgz .
9 gestion des sauvegardes mysql
9.1 debat au sujet des backups sur dev.gouv.fr
http://dev.ggouv.fr/brainstorm/view/627/Acces-aux-sources-et-%C3%A0-la-configuration-%3F
- Quand la personne aura le backup, elle pourra extraire toutes les données qu'elle veut. Pas les mots de passe par contre qui sont codés dans la base de donnée et donc impossible à extraire.
- La personne pourra voir qui a voté sur quoi par exemple. Bon en soit je ne sais pas si ça craint ou pas...
9.2 sur le serveur de "prod"
sauvegarde de 30j d'une base mysql (wiki de prod) : /root/bin/bd_backup.sh
https://github.com/remy40/gvadmin/blob/master/bd_backup.sh
obsolete : /root/bin/mysqlbackup.sh :
#/bin/sh PARAMSFILE=$1 . $PARAMSFILE # PARAMSFILE MUST DEFINE THE FOLLOWING VARIABLES : # 1. BACKUPDIR : exple : BACKUPDIR=/backup # 2. MYSQLUSER : exple : MYSQLUSER=<user> # 3. MYSQLPASSWD : exple : MYSQLPASSWD=<passwd> # 4. MYSQLDB : exple : MYSQLDB=<db> # BACKUPFILE=$BACKUPDIR/${MYSQLDB}-$(date '+%Y%m%d').sql.gz nice -n 19 mysqldump -u $MYSQLUSER --password=$MYSQLPASSWD $MYSQLDB -c | nice -n 19 gzip -9 > $BACKUPFILE if test `stat -c %s $BACKUPFILE` -lt 999999 then echo "error : backup too small!!!" mv $BACKUPFILE $BACKUPDIR/ERROR exit 1 fi cd $BACKUPDIR CONTINUE=1 while test $CONTINUE -eq 1 do NBFILES=`ls $BACKUPDIR | wc -l` echo "NBFILES="$NBFILES if test $NBFILES -gt 30 then echo "removing & continuing" rm `ls -t $BACKUPDIR | tail -1` else CONTINUE=0 echo "exiting" fi done
note : script éxécuté 1 fois par jour via la crontab :
root@projetgentilsvirus:/backup# crontab -l | grep mysql 10 4 * * * /bin/sh /root/bin/mysqlbackup.sh /root/bin/wikibackupparamsfile.sh
9.3 sur un serveur d'accueil des backups
recuperer 30j de sauvegarde d'une base mysql (wiki de prod) sur un serveur d'accueil de backups :
# cat /root/bin/transferwikibackup.sh #/bin/sh BACKUPDIR=/backup BACKUPFILE=`ssh root@projetgentilsvirus.ouvaton.org "ls -rt $BACKUPDIR | tail -1"` echo "BACKUPFILE="$BACKUPFILE cd $BACKUPDIR scp root@projetgentilsvirus.ouvaton.org:${BACKUPDIR}/$BACKUPFILE . if test `stat -c %s $BACKUPFILE` -lt 999999 then echo "error : backup too small!!!" mv $BACKUPFILE ERROR exit 1 fi CONTINUE=1 while test $CONTINUE -eq 1 do NBFILES=`ls $BACKUPDIR | wc -l` echo "NBFILES="$NBFILES if test $NBFILES -gt 30 then echo "removing & continuing" rm `ls -t $BACKUPDIR | tail -1` else CONTINUE=0 echo "exiting" fi done
note1 : script à executer 1 fois par jour (crontab)
note2 : Authentification SSH automatique par clé pour que le ssh/scp marche sans authentification :
10 gestion des sources
( https://www.facebook.com/groups/120403474764049/permalink/154001578070905/ )
depot git pour le réseau social : https://github.com/remy40/gvrs
depot git pour les outils d'admin : https://github.com/remy40/gvadmin
11 roles/outils et droits administrateurs/sysadmins
Utilisateur | Roles/Outils | Droits Mediawiki Prod |
Droits Mediawiki Test |
Droits serveur (vps) (et mysql) |
---|---|---|---|---|
Utilisateur:Remy40 | oui | oui | ||
Utilisateur:Porc | oui | oui | ||
Utilisateur:Pierro78 | mediawiki | oui | oui | oui |
Utilisateur:Champagne | mediawiki | oui | utilisateur créé pour acces aux backups/sources | |
Utilisateur:Catherine_vergnaud | mediawiki | oui | ||
Utilisateur:Grumeau | serveur | oui (test et prod) |
12 outils divers
12.1 phpmyadmin : http://projetgentilsvirus.ouvaton.org/phpmyadmin
http://projetgentilsvirus.ouvaton.org/phpmyadmin
12.2 interface graphique pour acceder au serveur de test : nomachine nx client
- il faut avoir un compte non-root sur le serveur de test
- telecharger le client ici : http://www.nomachine.com/download.php
- dans le bureau choisir linux, custom et xterm
13 maintenance du serveur
voir MAINTENANCE
13.1 information sur le vps
le vps est "hosté" sur le noeud "chicago vps49"
14 Optimisations mediawiki
http://www.mediawiki.org/wiki/User:Aaron_Schulz/How_to_make_MediaWiki_fast
crontab : voir scripts /root/bin/smwrefreshdata.sh
14.1 Cache
Lire http://www.mediawiki.org/wiki/Manual:File_cache et http://www.mediawiki.org/wiki/Manual:$wgCacheEpoch pour invalider le cache
crontab : voir scripts
- /root/bin/mwRefreshFileCache.sh (pour rebuildFileCache.php)
- /root/bin/smwrefreshdata.sh (pour rebuildFileCache.php --overwrite => inutile à cause du touch LocalSettings.php !)
15 Upgrades mediawiki
15.1 de 1.19.1 vers 1.20.2
16 journal sur le fonctionnement du serveur, les changements effectués, etc ...
(commencer vos remarques en mettant "4 ~ :" "~~~~ :" pour les signer ...)
Pierro78 (discussion) 10 février 2013 à 13:49 (CET) : Upgrade du mediawki de 1.19.1 en 1.20.2
Pierro78 (discussion) 25 janvier 2013 à 13:04 (CET) : crontab : ajout d un script smwrefreshdata.sh s executant ttes les nuits à 4h40
- ... certaines données semantiques ne semblaient pas à jour, plus d'infos sur : http://semantic-mediawiki.org/wiki/Help:Repairing_SMW%27s_data
Pierro78 (discussion) 13 janvier 2013 à 14:28 (CET) : ajout statcounter dans le LocalSettings.php
Pierro78 (discussion) 12 janvier 2013 à 18:10 (CET) : installation APC cache et $wgUseFileCache = true;
Pierro78 (discussion) 24 novembre 2012 à 00:34 (CET) : Ajout extension
- http://www.mediawiki.org/wiki/Extension:DynamicPageList_%28third-party%29 pour afficher les pages liées à une autre page, exemple : Liberté_politique_et_individuelle
Pierro78 (discussion) 26 novembre 2012 à 18:29 (CET) : ds LocalSettings.php
- $wgDefaultUserOptions['numberheadings'] = 1;
- => les "titres de sections" des pages sont automatiquement numérotées
Pierro78 (discussion) 8 novembre 2012 à 23:52 (CET) : qd on saisissait http://projetgentilsvirus.ouvaton.org/index.php/Autre_probl%C3%A8me_essentiel_:_La_monnaieP apache faisait un core dump ... apres un "ulimit -s 88888 ; /etc/init.d/apache2 restart" cela marche ... (le "ulimit -s" valait 10240 auparavant)
Pierro78 (discussion) 8 octobre 2012 à 16:39 (CEST) : Activation de l'antibot (antispam) QuestyCaptcha de l'extension ConfirmEdit : https://www.mediawiki.org/wiki/Extension:ConfirmEdit#QuestyCaptcha
Pierro78 (discussion) 2 septembre 2012 à 23:37 (CEST) : FS plein. plein de sendmail (user smmsp) qui tournent => je les ai tous tués et le FS s est vidé
- il reste des gros fichiers ds /var/spool/mqueue-client (cf http://linuxfr.org/forums/linuxredhat/posts/pb-de-disque-qui-se-remplit)
- je les consulte : en fait c est mon script de backup ( /root/bin/wikibackup.sh ) qui ne trouvait pas les fichiers à supprimer et donc envoi de (pleins de) mails bidon ... script corrigé ...
Pierro78 (discussion) 8 juillet 2012 à 14:53 (CEST) : Installation drupal de test : http://projetgentilsvirus.ouvaton.org/drupal-7.14/
Pierro78 (discussion) 6 juillet 2012 à 14:52 (CEST) : installation mw 1.18.4 avec l'extension WYSIWYG : http://projetgentilsvirus.ouvaton.org/mediawiki-1.18.4/
Pierro78 (discussion) 2 juillet 2012 à 23:55 (CEST) : installation https://www.mediawiki.org/wiki/Extension:LiquidThreads
Pierro78 (discussion) 2 juillet 2012 à 20:34 (MSK) : désactivation du "wiki-forum" (awc) suite à vote : https://www.facebook.com/groups/gentilsvirus/permalink/453984507959448/
Pierro78 (discussion) 2 juillet 2012 à 18:07 (MSK) : chicagovps m'a répondu en disant que cela devrait etre OK maintenant, et effectivement cela a l'air d'etre le cas ...
Pierro78 (discussion) 2 juillet 2012 à 13:29 (MSK) : Ce matin vers 11h le serveur a été inaccessible ou trés lent pendant qqs minutes (10-15 je pense) - j'ai fait un ticket à chicagovps ...