3 machines Web Apache (centos7)
- node01-webw 172.16.186.30
- node02-webw 172.16.186.31
- node03-webw 172.16.186.32
Spécification des machines
Le Pool « Cluster_webw » va être composé de trois machines virtuelles
- Node01-webw -> 172.16.186.30
- 2CPU, 2G RAM, 10Go Disk
- 30Go Disque GlusterFS node01.gfsw
- Node02-webw -> 172.16.186.31
- 2CPU, 2G RAM, 10Go Disk
- 30Go Disque GlusterFS node02.gfsw
- Node03-webw -> 172.16.186.32
- 2CPU, 2G RAM, 10Go Disk
- 30Go Disque GlusterFS node03.gfsw
Les Machines du Cluster vont partager les fichiers de conf du VirtualHost ainsi que les DATA du site. Les données du site seront hébergées sur le Cluster GlusterFS et pour les bases de données le Cluster Mysql/Percona.
Les machines web hébergeront simplement le service Apache/PHP.
1°) Désactivation du SElinux (3 nœuds webw)
[root@node01-webw ~]# vi /etc/selinux/config SELINUX=disabled
Redémarrer la machine.
[root@node01-webw ~]# reboot
2°) Désactiver l’IPV6 (3 nœuds webw)
[root@node01-webw ~]# vi /etc/sysctl.conf net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.all.autoconf = 0 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.default.autoconf = 0
[root@node01-webw ~]# sysctl –p
3°) Installation de paquets utiles(3 nœuds webw)
[root@node01-webw ~]# yum _y update && yum upgrade [root@node01-webw ~]#] yum -y install qemu-guest-agent [root@node01-webw ~]# yum -y install htop nmap net-tools
4°) Installation ntp (3 nœuds webw)
[root@node01-webw ~]# yum install ntp ntpdate ntp-doc [root@node01-webw ~]# ntpdate pool.ntp.org [root@node01-webw ~]# systemctl enable ntpd && systemctl start ntpd [root@node01-webw ~]# firewall-cmd --add-service=ntp --permanent && firewall-cmd --reload
5°) Installation du client Gluterfs (3 nœuds web) pour se connecter au Cluster GFS
[root@node01-webw ~]# yum -y install glusterfs-fuse [root@node01-webw ~]# mkdir -p /sharegfs
Montage de la ressource /gfs dans /etc/fstab via le réseau privé (3 nœuds web)
node01-web
[root@node01-webw ~]# vi /etc/fstab node01-gfsw:/gfsw /sharegfs glusterfs defaults,_netdev 0 0 [root@node01-webw ~]# mount -a [root@node01-webw ~]# df -Th /sharegfs/
node02-web
[root@node02-web ~]# vi /etc/fstab node02-gfsw:/gfsw /sharegfs glusterfs defaults,_netdev 0 0 [root@node02-web ~]# mount -a [root@node02-web ~]# df -Th /sharegfs/
node03-web
[root@node03-web ~]# vi /etc/fstab node03-gfsw:/gfsw /sharegfs glusterfs defaults,_netdev 0 0 [root@node03-web ~]# mount -a [root@node01-web ~]# df -Th /sharegfs/
6°) des répertoires /etc et /www
On va créer les deux répertoires qui vont héberger les datas communes entre les machines du Cluster web. La création se fera sur le node01 et on va vérifier que la réplication de la structure se fasse automatiquement sur les node02 et node03.
Sur le Node01
[root@node01-webw ~]# mkdir /sharegfs/etc [root@node01-webw ~]# mkdir /sharegfs/www
Sur les Node02 et Node03
La réplication de données sur le Cluster est fonctionnelle. On vient de relier le Cluster GlusterGFS avec le Cluster Web apache/PHP
7°) Installation Apache(3 nœuds web)
[root@node01-webw ~]# yum install -y httpd [root@node01-webw ~]# systemctl enable httpd && systemctl start httpd
Activer les rules Firewall pour Apache
[root@node01-webw ~]# firewall-cmd --permanent --zone=public --add-service=http [root@node01-webw ~]# firewall-cmd --reload
8°) Installation PHP5.6 et modules(3 nœuds web)
[root@node01-webw ~]# yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm [root@node01-webw ~]# yum install -y http://rpms.remirepo.net/enterprise/remi-release-7.rpm [root@node01-webw ~]# yum install -y yum-utils [root@node01-webw ~]# yum-config-manager –enable remi-php56 [root@node01-webw ~]# yum install php php-common php-mysql php-gd php-xml php-mbstring php-mcrypt php-xmlrpc [root@node01-webw ~]# php -v
9° Installation site Test (sur node01-webw)
Fichier index.php
[root@node01-webw ~]# yum install vim [root@node01-webw ~]# mkdir /sharegfs/www/site1 [root@node01-webw ~]# touch /sharegfs/www/site1/index.php
[root@node01-webw ~]# vim /sharegfs/www/site1/index.php <?php echo "</h2> Site de TEST </h2>"; // afficher le nom du fichier de script éxécuté echo $_SERVER['PHP_SELF']; echo "<br>"; // afficher l’adresse IP du serveur où le script est éxécuté echo $_SERVER['SERVER_ADDR']; echo "<br>"; // afficher le nom d’hôte du serveur echo $_SERVER['SERVER_NAME']; echo "<br>"; // afficher la méthode de requête (‘GET’, ‘HEAD’, ‘POST’, ‘PUT’) echo $_SERVER['REQUEST_METHOD']; echo "<br>"; // afficher les paramètres de l’URL echo $_SERVER['QUERY_STRING']; echo "<br>"; // afficher le nom du répertoire racine du script echo $_SERVER['DOCUMENT_ROOT']; echo "<br>"; // afficher le nom d’hôte de la machine cliente echo $_SERVER['HTTP_HOST']; echo "<br>"; // afficher les informations sur le navigateur utilisé echo $_SERVER['HTTP_USER_AGENT']; echo "<br>"; // afficher l’adresse IP du client echo $_SERVER['REMOTE_ADDR']; echo "<br>"; ?>
[root@node01-webw ~]# chown -R apache.apache /sharegfs/www [root@node01-webw ~]# chmod -R 755 /sharegfs/www
Fichier de conf VirtualHost
[root@node01-webw ~]# mkdir -p /sharegfs/etc/httpd/conf.d [root@node01-webw ~]# touch /sharegfs/etc/httpd/conf.d/site1.conf [root@node01-webw ~]# cp /etc/httpd/conf.d/php.conf /sharegfs/etc/httpd/conf.d/ [root@node01-webw ~]# vim /sharegfs/etc/httpd/conf.d/site1.conf
<VirtualHost *:80> ServerName site1.house.cpb ServerAlias house.cpb DocumentRoot /sharegfs/www/site1 DirectoryIndex index.php <Directory /sharegfs/www/site1/> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> </VirtualHost>
Modifier les conf Apache (3 nœuds web)
[root@node01-webw ~]# vim /etc/httpd/conf/httpd.conf
Modifier
# Supplemental configuration # # Load config files in the "/etc/httpd/conf.d" directory, if any. #IncludeOptional conf.d/*.conf IncludeOptional /sharegfs/etc/httpd/conf.d/*.conf
[root@node01-webw ~]# systemctl reload httpd
Visualiser le fonctionnement des 3 machines du site1 localisé sur le Cluster de fichier distribué.
- Il Faut pour cela prendre une machine du Subnet 172.16.186.0/24.
- Ici une Machine Windows IP 172.16.186.100
Views: 7