Sync Loadbalanced webservers: Difference between revisions
(layout aanpassingen) |
|||
Line 1: | Line 1: | ||
= doel = | = doel = | ||
Dit script zorgt | Dit script zorgt ervoor dat de configuraties van webservers gelijk worden getrokken | ||
= config files = | = config files = | ||
De config files staan in de volgende dir /usr/local/hobbynet/apache2conf/'''html'''<br> | De config files staan in de volgende dir /usr/local/hobbynet/apache2conf/'''html'''<br> | ||
Vervang 'html' door de naam van het cluster, bijvoorbeeld 'php-joomla' dus '''zonder -lbx''' | |||
== config files | |||
== config files synchroniseren == | |||
Om de config files te synchroniseren draai je op scripting het script /usr/local/hobbynet/bin/sync_html <br> | |||
Vervang 'html' door de naam van het cluster, bijvoorbeeld 'php-joomla' dus '''zonder -lbx''' | |||
= scripting = | = scripting = | ||
== op server scripting == | == op server scripting == | ||
Op de server scripting wordt het script /usr/local/hobbynet/bin/sync_* aangeroepen.<br> | Op de server scripting wordt het script /usr/local/hobbynet/bin/sync_* aangeroepen.<br> | ||
Deze start op | Deze start op beide servers in het cluster het script /usr/local/hobbynet/local/getapacheconf | ||
<pre> | <pre> | ||
#!/bin/bash | #!/bin/bash | ||
echo | echo syncing html-lb1 | ||
ssh html-lb1-int /usr/local/hobbynet/local/getapacheconf | ssh html-lb1-int /usr/local/hobbynet/local/getapacheconf | ||
echo synching html-lb2 | echo synching html-lb2 | ||
ssh html-lb2-int /usr/local/hobbynet/local/getapacheconf | ssh html-lb2-int /usr/local/hobbynet/local/getapacheconf | ||
</pre> | </pre> | ||
== locale scripting op webserver == | == locale scripting op webserver == | ||
Dit script zorgt | Dit script zorgt ervoor dat lb* in de config file wordt vervangen door lb1 of lb2, afhankelijk van de waarde in het script.<br> | ||
Omdat dit script server specifiek is staat deze lokaal op de server, in de map /usr/local/hobbynet/local/getapacheconf.<br> | |||
Nadat alle sites zijn uitgeschakeld worden de huidige website files weg gebackup naar /usr/local/hobbynet/local/backup.<br> | |||
Hierna worden alle files (website) die in de configdir staan geactiveerd.<br> | |||
Wil je een site uitschakelen verplaats je de website configfile naar uitgeschakeld | Wil je een site uitschakelen dan verplaats je de website configfile naar de map 'uitgeschakeld'. | ||
<pre> | <pre> | ||
#!/bin/bash | #!/bin/bash | ||
Line 31: | Line 33: | ||
LB=1 | LB=1 | ||
cd $BASISCONFIG/lb$LB | |||
cd | |||
rm $BASISCONFIG/lb$LB/* | rm $BASISCONFIG/lb$LB/* | ||
cp $BASISCONFIG/* $BASISCONFIG/lb$LB/ >/dev/null | cp $BASISCONFIG/* $BASISCONFIG/lb$LB/ >/dev/null |
Revision as of 14:57, 15 November 2011
doel
Dit script zorgt ervoor dat de configuraties van webservers gelijk worden getrokken
config files
De config files staan in de volgende dir /usr/local/hobbynet/apache2conf/html
Vervang 'html' door de naam van het cluster, bijvoorbeeld 'php-joomla' dus zonder -lbx
config files synchroniseren
Om de config files te synchroniseren draai je op scripting het script /usr/local/hobbynet/bin/sync_html
Vervang 'html' door de naam van het cluster, bijvoorbeeld 'php-joomla' dus zonder -lbx
scripting
op server scripting
Op de server scripting wordt het script /usr/local/hobbynet/bin/sync_* aangeroepen.
Deze start op beide servers in het cluster het script /usr/local/hobbynet/local/getapacheconf
#!/bin/bash echo syncing html-lb1 ssh html-lb1-int /usr/local/hobbynet/local/getapacheconf echo synching html-lb2 ssh html-lb2-int /usr/local/hobbynet/local/getapacheconf
locale scripting op webserver
Dit script zorgt ervoor dat lb* in de config file wordt vervangen door lb1 of lb2, afhankelijk van de waarde in het script.
Omdat dit script server specifiek is staat deze lokaal op de server, in de map /usr/local/hobbynet/local/getapacheconf.
Nadat alle sites zijn uitgeschakeld worden de huidige website files weg gebackup naar /usr/local/hobbynet/local/backup.
Hierna worden alle files (website) die in de configdir staan geactiveerd.
Wil je een site uitschakelen dan verplaats je de website configfile naar de map 'uitgeschakeld'.
#!/bin/bash BASISCONFIG=/usr/local/hobbynet/apache2conf/html APACHE2CONFIGDIR=/etc/apache2/sites-available BACKUPDIR=/usr/local/hobbynet/local/backup/ LB=1 cd $BASISCONFIG/lb$LB rm $BASISCONFIG/lb$LB/* cp $BASISCONFIG/* $BASISCONFIG/lb$LB/ >/dev/null for fl in *; do mv $fl $fl.old sed 's/lb\*/lb'$LB/g $fl.old > $fl rm -f $fl.old done cd $APACHE2CONFIGDIR service apache2 stop a2dissite * mv * $BACKUPDIR cp $BASISCONFIG/lb$LB/* . a2ensite * service apache2 start