3841
Commentaire:
|
3991
|
Texte supprimé. | Texte ajouté. |
Ligne 11: | Ligne 11: |
== Installaion de HAProxy == | == Installation d'HAProxy == |
Ligne 13: | Ligne 13: |
=== Configuration de HAProxy === | === Configuration d'HAProxy === |
Ligne 54: | Ligne 54: |
Cette commande va permettre a HAProxy de pourvoir tester la disponibilité du serveur via le check définie dans la configuration de HAProxy ({{{option mysql-check user haproxy}}}) | Cette commande va permettre a HAProxy de pourvoir tester la disponibilité du serveur via le check définie dans la configuration d'HAProxy ({{{option mysql-check user haproxy}}}) Il faut ensuite creer un utilisateur en lecture seule pour la connexion de Drupal sur chaque serveur MySQL slave : {{{ grant select on drupal.* to 'haproxy_auf'@'%' identified by 'xxxxxxxxxxx'; }}} |
Ligne 81: | Ligne 87: |
Ligne 83: | Ligne 90: |
{{{ apt-get -y install php5-memcache memcached }}} |
|
Ligne 149: | Ligne 151: |
=== Config pour recuperer le X-Forward-For === | === Config pour récupérer le X-Forward-For === |
Rédiger « OVH/VPC02/idneuf/Drupal » ici.
Installation des paquets
apt-get install apache2 haproxy php5 php5-gd php5-durl libssh2-php php5-memcache memcached
Installation d'HAProxy
Configuration d'HAProxy
Contenu du fichier : /etc/haproxy/haproxy.cfg :
global log /dev/log local0 log /dev/log local1 notice chroot /var/lib/haproxy stats socket /run/haproxy/admin.sock mode 660 level admin stats timeout 30s user haproxy group haproxy daemon defaults log global mode tcp option dontlognull timeout connect 5000 timeout client 50000 timeout server 50000 listen mysql-cluster bind 127.0.0.1:3306 mode tcp option mysql-check user haproxy balance roundrobin server prod-db02-idneuf database_server01:3306 check server prod-db03-idneuf database_server02:3306 check
Configuration des serveurs slaves
Sur chaque serveur slave, exécuter les commandes SQL suivante :
INSERT INTO mysql.user (Host,User) values ('server_web_hostname','haproxy'); FLUSH PRIVILEGES;
Cette commande va permettre a HAProxy de pourvoir tester la disponibilité du serveur via le check définie dans la configuration d'HAProxy (option mysql-check user haproxy)
Il faut ensuite creer un utilisateur en lecture seule pour la connexion de Drupal sur chaque serveur MySQL slave :
grant select on drupal.* to 'haproxy_auf'@'%' identified by 'xxxxxxxxxxx';
Utilisation de HAProxy avec Drupal
Dans le fichier sites/default/settings.php, insérer les lignes suivantes :
$databases = array ( 'default' => array ( 'default' => array ( 'database' => 'drupal', 'username' => 'haproxy_auf', 'password' => 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', 'host' => '127.0.0.1', 'port' => '', 'driver' => 'mysql', 'prefix' => '', 'readonly' => TRUE , ), ), );
Le host ne doit pas être "localhost" sinon la connexion ne se fera pas.
Installation de memcache
Dans le fichier /etc/memcache.conf, configurer la quantité de RAM a allouer :
# Start with a cap of 64 megs of memory. It's reasonable, and the daemon default # Note that the daemon will grow to this size, but does not start out holding this much # memory -m 1024
Configuration de Drupal
Installer le module suivant depuis l'interface d'administration :
https://ftp.drupal.org/files/projects/memcache-7.x-1.5.tar.gz
Dans le fichier sites/default/settings.php, insérer les lignes suivantes :
//Use memcache $conf['cache_backends'][] = 'sites/all/modules/memcache/memcache.inc'; $conf['cache_default_class'] = 'MemCacheDrupal'; $conf['cache_inc'] = 'sites/all/modules/contrib/memcache/memcache.inc'; //Memcache session $conf['session_inc'] = 'sites/all/modules/memcache/unstable/memcache-session.inc'; //Memcache lock $conf['lock_inc'] = 'sites/all/modules/memcache/memcache-lock.inc'; //Add in stampede protection $conf['memcache_stampede_protection'] = TRUE; //Don't bootstrap the database when serving pages from the cache. $conf['page_cache_without_database'] = TRUE; $conf['page_cache_invoke_hooks'] = FALSE;
Lien avec ORI-OAI
Fichiers a modifier afin de faire le lien vers ORI-OAI :
ori-oai-search-idneuf.css
http_header/index.php
sites/default/files/xmlsitemap/Xh****************************wOM/1.xml
sites/all/themes/theme1005/templates/views-view—block₁--block.tpl.php
sites/all/themes/theme1005/css/style-header-footer.css
sites/all/themes/theme1005/css/custom.css
Utilisation de NginX comme ReverseProxy
Config pour récupérer le X-Forward-For
Modifier le fichier sites/default/settings.php :
$conf['reverse_proxy'] = TRUE; $conf['reverse_proxy_addresses'] = array('10.242.1.194','10.242.1.195');