 |
| DenisG.net | |
|
 | |
|
|
| | RecycLinux | |
|
|
|
|
|
Retour à Réseaux & Linux
Installation d'un serveur HP/Compaq Proliant DL360 G1 sous Linux Debian Etch
Cette page est un aide-mémoire pour moi. Je la diffuse au cas où
ça pourrait aider quelqu'un...
Sommaire :
Présentation de la machine
Le site que vous visitez actuellement est hébergé sur un serveur HP/Compaq Proliant DL360 G1, acheté
d'occasion sur eBay. Voilà à quoi il ressemble :
Caractéristiques :
- Bi-PIII 833 MHz
- 1,5 Go de RAM
- 2 disques durs SCSI de 36 Go (voir le paragraphe suivant)
Configuration des disques durs SCSI
Le serveur Proliant DL360 accepte deux disques durs SCSI Hot-Plug et gère tout seul le RAID 0 ou 1.
Voir sur
Wikipedia pour tout savoir sur le RAID.
J'ai choisi le RAID 1 qui permet de conserver ses données en cas de panne d'un disque dur, et j'ai mis
deux disques identiques de 36 Go (ce sont des 18 Go sur la photo). J'en ai quelques autres en réserve en cas de panne,
ils sont interchangeables à chaud.
Au démarrage du serveur, lorsqu'on vous y invite, tapez sur F10 pour accéder à l'utilitaire de configuration du RAID.
Choisissez le type de RAID choisi (RAID 0 : 36+36=72 Go disponibles sans tolérance de panne,
RAID 1 : 36 Go disponibles avec tolérance de panne sur un disque), quittez en enregistrant les changements.
Les disques durs seront vus par le système comme un seul disque de 36 Go, la redondance est entièrement gérée
par la carte RAID intégrée dans le serveur. En cas de panne d'un disque (LED clignotante en facade), vous
pouvez le retirer et le remplacer à chaud, c'est-à-dire sans éteindre le serveur. Le nouveau disque sera
"reconstruit" à l'identique du premier, automatiquement. Enfin... normalement, mais je n'ai pas encore
eu l'occasion de tester... pourvu que ça dure... ;)
Installation de Debian Linux
Je n'ai pas réussi à booter sur le CD, j'ai donc opté pour une installation par internet avec boot par disquettes.
Ceci n'est possible que si vous avez un modem-routeur et un accès ADSL pas trop lent.
Branchez le serveur sur le réseau avant de lancer l'installation.
Téléchargez les images de disquettes à cette adresse :
http://http.us.debian.org/debian/dists/etch/main/installer-i386/current//images/floppy/.
Il vous faut les images nommées boot.img, root.img et net-drivers-1.img, enregistrez-les quelque part,
puis créez les 3 disquettes avec les commande (sous Linux) :
dd if=fichier.img of=/dev/fd0 bs=1024 conv=sync ; sync
où vous remplacez fichier.img par le nom du fichier image téléchargé. Ceci pour chacune des 3 disquettes.
Insérez la disquette nommée boot dans le serveur et démarrez-le. Il vous demandera ensuite la disquette nommée root
et lancera l'installation.
La documentation
sur le site de Debian
vous aidera mieux que moi pour les différentes étapes de cette installation.
Lorsqu'il vous demande de charger des drivers depuis une disquette, insérez celle
nommée net-drivers-1 et validez. La carte réseau est alors reconnue et l'installation
pourra continuer en téléchargeant
les paquets directement sur internet. Pour cela vous devez configurer le réseau par DHCP si vous avez un
serveur DHCP, ou en indiquant une adresse IP pour le Proliant et en donnant l'adresse
de la passerelle internet (le routeur) et
du serveur DNS de votre
fournisseur d'accès internet.
Lors de la sélection des paquets à télécharger, décochez toutes les catégories (surtout l'environnement
graphique de bureau, inutile pour un serveur de ce type), les paquets seront téléchargés plus tard un par un.
Serveur WEB : APACHE
Apache
est un serveur WEB, c'est-à-dire qu'il héberge des pages HTML, et les
envoie aux clients qui naviguent et qui désirent voir ces pages.
La plupart des hébergeurs professionnels utilisent Apache. Comme il est
gratuit et assez simple d'utilisation, vous pouvez vous aussi l'installer
et héberger
vous-même votre site WEB, à condition d'avoir une connexion internet permanente
et suffisament performante.
Php
est un langage de programmation qui s'intègre dans le code HTML des pages web, lui apportant
beaucoup de fonctionnalités.
- Installez Apache
apt-get install apache2
- Installez php5
apt-get install php5
Si ce n'est pas fait automatiquement, ajoutez libapache2-mod-php5
- Les pages composant votre site doivent être placées dans /var/www/
- Adaptez éventuellement le fichier /etc/apache2/apache2.conf à votre configuration
- /etc/apache2/sites-available/default contient les infos sur votre site
(qu'on mettait dans httpd.conf dans les anciennes versions d'Apache) :
ServerAdmin votre-email
ServerName votre_domaine.com
ServerAlias autres_noms_de_votre_site www.votre_domaine.com par_exemple
DocumentRoot /var/www/dossier_de_mon_site
Changez la balise Directory /var/www/dossier_de_mon_site
Commentez (en ajoutant # au début) la ligne RedirectMatch
- Ajoutez éventuellement pour chaque hôte virtuel un fichier équivalent et un lien
symbolique dans /etc/apache2/sites-enabled.
- Relancez le serveur apache
/etc/init.d/apache2 restart
- Les logs (journaux) des connexions sont dans /var/log/apache2
MySQL est un gestionnaire de base de données
qui s'associe parfaitement avec Apache et php pour créer des sites web dynamiques.
Ce trio permet par exemple de faire tourner des forums web ou des livres d'or, mais aussi des
sites marchands avec gestion d'un catalogue et des clients.
Le site que vous visitez actuellement est programmé en php et HTML et
j'utilise MySQL pour d'autres sites hébergés sur le même serveur.
- Installez MySQL
apt-get install mysql-common mysql-client mysql-server php5-mysql
- Relancez apache2 et mysql
/etc/init.d/apache2 restart
/etc/init.d/mysql restart
- J'utilise webmin
pour administrer simplement MySQL. Il n'est plus présent dans les dépots d'apt-get par défaut,
il faut donc télécharger le fichier webmin.deb sur le site officiel, puis en root :
dpkg -i webmin.deb
Il vous signale une erreur de dépendance de paquets
apt-get -f install résoudra le problème en question.
- Tapez
https://IP_DE_VOTRE_SERVEUR:10000 dans un navigateur,
puis entrez root et le mot de passe pour accéder à l'interface webmin.
Pour que cette interface soit accessible depuis l'extérieur, pensez à rediriger ("NATer") le port 10000
vers votre serveur dans le routeur.
En cas de problème de connexion, cherchez la ligne allow=127.0.0.1 dans /etc/webmin/miniserv.conf
et ajoutez les adresses des
postes autorisés à accéder à webmin par le réseau
(ou 192.168.1. pour toute une classe d'adresses), puis relancez webmin.
- Allez dans serveurs puis MySQL
Créez un compte utilisateur avec tous les droits et un mot de passe
Ajoutez un mot de passe pour l'utilisateur root (qui n'est pas celui du système !)
Créez une nouvelle base de données
- Pour accéder à mysql en ligne de commande :
mysql -u login -p
où login est le nom de l'utilisateur créé avec webmin.
On vous demande ensuite
le mot de passe, puis vous êtes connecté à la base de données.
Vous pouvez tester que tout marche bien en tapant (sans oublier le point-virgule en fin de ligne)
status;
show databases;
show tables from database; où database est une des bases listées au dessus.
exit pour quitter mysql.
- On peut aussi utiliser
phpMyAdmin,
qui s'installe tout simplement avec apt-get, pour administrer les bases de données MySQL.
Une fois installé, tapez http://IP_DE_VOTRE_SERVEUR/phpmyadmin pour y accéder.
Arrivé à ce stade, vous disposez d'un serveur LAMP ( Linux + Apache +
MySQL + Php). Vous pouvez télécharger mes scripts php-MySQL
( voir cette page) ainsi que
tous ceux disponibles
partout sur le net qui permettent de mettre en place par exemple un site dynamique "clé-en-mains"
( phpBB,
Artiphp,
SPIP,
PunBB, etc.).
Lors de l'installation de ces
scripts, on vous demandera le nom de la base (créée avec Webmin) et le login et mot de passe
à utiliser (l'utilisateur créé avec Webmin).
Pour que votre site soit accessible depuis l'extérieur, pensez à rediriger ("NATer") le port 80
vers votre serveur dans le routeur.
Les pages composant votre site doivent être placées dans /var/www/, éventuellement
dans un sous-dossier, conformément à ce que vous avez mis dans /etc/apache2/sites-available/default.
Statistiques de site web : AWStats
AWStats
permet de visualiser les statistiques de visites de votre site web :
nombre de visites, origine des visiteurs, navigateurs utilisés, etc.
Ces statistiques sont générées sur le serveur à partir des logs d'Apache et
présentées sous la forme d'une page web lisible avec n'importe quel
navigateur.
Pour l'installer sur le serveur, on va (comme d'habitude) passer par
apt-get install awstats
- Un fichier /etc/awstats/awstats.conf est créé.
Il faut en faire une copie nommée /etc/awstats/awstats.adresse_de_votre_site.com.conf
(le .com est un exemple)
Si vous avez plusieurs sites (hôtes virtuels), faites une copie par site.
- Modifiez ce fichier, en particulier :
LogFile="/var/log/apache2/votre_fichier_access.log"
LogFormat = 1
SiteDomain="adresse_de_votre_site.com"
- Modifiez la configuration d'Apache :
Dans la section de votre site du
fichier /etc/apache2/sites-available/default :
HostnameLookups On pour avoir le domaine des visiteurs au lieu
de l'adresse IP
Vérifiez que vous avez
CustomLog /var/log/apache2/votre_fichier_access.log combined
Dans /etc/apache2/apache2.conf :
Alias /awstats-icon "/usr/share/awstats/icon/"
- Relancez Apache
- Lancez une première fois le script à la main pour vérifier qu'il fonctionne :
/usr/lib/cgi-bin/awstats.pl -config=adresse_de_votre_site.com
- Ceci crée une première base de données de fréquentation de votre site,
placée dans /var/lib/awstats
(vous pouvez changer ce chemin avec la directive
DirData dans /etc/awstats/awstats.adresse_de_votre_site.com.conf)
- Une tâche CRON a déjà été créée par apt-get pour mettre à jour ces statistiques
automatiquement toutes les 10 minutes.
Pour changer cet intervalle (une fois par jour me paraît suffisant...),
modifiez /etc/cron.d/awstats.
Pour le faire toutes les nuits à 3h01, par exemple :
01 03 * * * www-data /usr/lib/cgi-bin/awstats.pl -config=adresse_de_votre_site.com -update >/dev/null
- Pour visualiser les statistiques, faites pointer votre navigateur vers l'adresse :
http://www.votre_serveur.com/cgi-bin/awstats.pl?config=adresse_de_votre_site.com
Monitoring (supervision) de serveur à distance : Munin
Munin
permet de surveiller une ou plusieurs machines sous Linux sur un réseau, en centralisant les informations
sur un serveur et en générant des graphiques sous forme de pages web. Ces graphiques présentent par exemple
l'utilisation CPU ou mémoire, le trafic réseau, les requêtes MySQL, etc.
Voir ce tutorial en français
pour l'installation des noeuds (les clients) et du serveur.
Partage en réseau Linux/Linux par NFS
NFS est le protocole de partage de fichiers en réseau entre ordinateurs sous Linux,
comme Netbios entre ordinateurs sous Windows.
Là encore, on trouve plein de tutos sur le net pour configurer NFS, Google est votre ami.
A connaître quand même :
le NFS HOWTO
En résumé :
Sur le serveur
- Installer nfs-common et nfs-kernel-server (avec
apt-get install)
- Dans /etc/exports
/dossier-à-partager IP-du-client(rw,sync)
Vous pouvez remplacer l'IP par le nom du client si vous avez mis la correspondance dans /etc/hosts
exportfs -a
- Il peut être nécessaire de relancer les daemons si c'est la première exécution après installation de NFS :
/etc/init.d/nfs-common restart
/etc/init.d/nfs-kernel-server restart
showmount -e doit afficher les dossiers partagés
- /etc/hosts.allow et /etc/hosts.deny avec adresses IP, si vous souhaitez restreindre
certains dossiers de façon plus pointue
- Dans le firewall, ouvrir éventuellement les ports
2049/tcp et udp pour NFS
111/tcp et udp pour Portmapper
745/tcp et udp pour mountd
Dans les deux sens (client <--> serveur)
Sur le client
mount -t nfs serveur:/dossier-à-partager /mnt/machin pour mounter manuellement le dossier distant
- Ou bien, dans /etc/fstab
serveur:/dossier-à-partager /mnt/machin nfs defaults 0 0
Il sera mounté automatiquement au démarrage
- Lien symbolique vers /mnt/machin dans ~/Desktop pour avoir une icone sur le bureau
|