Les VM

De TeteveWiki.

Sommaire

L'hyperviseur

Après l'installation du serveur, nous avons mis en place quelques VM, beaucoup sont en prod sans être totalement fignolées...
le dossier :
/var/lib/vz/private
comprend les données des VE OpenVZ. Lorsqu'une VE est active (non arrêtée), Proxmox (OpenVZ) monte cette partition dans :
/var/lib/vz/root
Quant au dossier :
/vz
est en fait un lien symbolique vers :
/var/lib/vz

DNS

WWW

Cette VM sert de serveur web, tournant grâce à LAMP. Du classique : une Debian 5, Apache 2.2.9, vsftpd pour les webmasters...
Le firewall qui va bien :)

Les fichiers de conf :

  1. less /etc/vz/conf/102.mount
!/bin/bash
source /etc/vz/vz.conf
source /etc/vz/conf/102.conf
mount -n --bind /home/zik /var/lib/vz/vm/root/102/home/zik
mount -n --bind /home/bin /var/lib/vz/vm/root/102/home/bin

Les disques sont partitionnés comme suit :

Filesystem Size Used Avail Use% Mounted on

/dev/simfs

5.0G

1.5G

3.6G

29%

/

/dev/mapper/vg--vm-lv--data

247G

58G

176G

25%

/home/zik

/dev/mapper/vg--vm-lv--data

247G

58G

176G

25%

/home/bin

Les jobs automatiques

A l'origine, il y avait ça :

# cat crontab
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# m h dom mon dow user  command
53 * * * * root    cd / && run-parts --report /etc/cron.hourly
57 4 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
15 2 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
26 5 31 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
# ll cron*
crontab
cron.d :
  php5
cron.daily :
  apache2
  apt
  aptitude
  bsdmainutils
  exim4-base
  locate
  logrotate
  man-db
  quota
  standard
cron.hourly :
cron.monthly :
  standard
cron.weekly :
  man-db

Le serveur lance donc toutes les heures, à 53 minutes, les éventuels scripts qui sont dans cron.hourly Il n'y en a pas dans notre cas.
Il lance également tous les jours, à 4h57, les fichiers qui sont dans cron.daily Il lance donc les rotations des logs tous les matins.
Il lance également tous les dimanches matin, à 2h15, les fichiers contenus dans cro.weekly
Je laisse ces fichiers pour l'instant, je me re-pencherai dessus plus tard...

# vim /etc/logrotate.d/apache2

/var/log/apache2/*.log {     # Le fichier de log en question...
       weekly                # La rotation s'effectue toutes les semaines
       missingok             # L'absence de fichier de log n'est pas anormale...
       rotate 52             # On garde 52 fichiers. Vu qu'on change de fichier toutes les semaines, on a 1 an de logs
       compress              # On compresse tous les fichiers secondaires (= tous les fichiers sauf celui en cours)
       delaycompress         # Avec l'option compress, on décale l'archivage d'un cran (pour garder 2 fichiers non-archivés)
       notifempty            # ne pas permuter le journal lorsqu'il est vide
       create 640 root adm   # chmod et chown des fichiers de logs créés
       sharedscripts         # Permet d'exécuter une seule fois le script par rotation (???)
       postrotate            # Ces commandes (une par ligne) sont exécutées avant la rotation du fichier de log.
         if [ -f "`. /etc/apache2/envvars ; echo ${APACHE_PID_FILE:-/var/run/apache2.pid}`" ]; then
           /etc/init.d/apache2 reload > /dev/null
         fi
       endscript             # fin des commandes
}

SVZ2

NGINX