Created
January 26, 2016 16:00
-
-
Save richardsonlima/9e852da1122fc1b2923c to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m Calculando MaxClients dividindo maior Apache Thread pela memoria livre \033[0m"; | |
if [ -e /etc/debian_version ]; then | |
APACHE="apache2" | |
elif [ -e /etc/redhat-release ]; then | |
APACHE="httpd" | |
fi | |
APACHEMEM=$(ps -aylC $APACHE |grep "$APACHE" |awk '{print $8'} |sort -n |tail -n 1) | |
APACHEMEM=$(expr $APACHEMEM / 1024) | |
SQLMEM=$(ps -aylC mysqld |grep "mysqld" |awk '{print $8'} |sort -n |tail -n 1) | |
SQLMEM=$(expr $SQLMEM / 1024) | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m Parando $APACHE para calcular a quantidade de memoria livre \033[0m"; | |
/etc/init.d/$APACHE stop &> /dev/null | |
TOTALFREEMEM=$(free -m |head -n 3 |tail -n 1 |awk '{free=($4); print free}') | |
TOTALMEM=$(free -m |head -n 2 |tail -n 1 |awk '{total=($2); print total}') | |
SWAP=$(free -m |head -n 4 |tail -n 1 |awk '{swap=($3); print swap}') | |
MAXCLIENTS=$(expr $TOTALFREEMEM / $APACHEMEM) | |
MINSPARESERVERS=$(expr $MAXCLIENTS / 4) | |
MAXSPARESERVERS=$(expr $MAXCLIENTS / 2) | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m Iniciando $APACHE novamente... \033[0m"; | |
/etc/init.d/$APACHE start &> /dev/null | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m Total memoria: \033[0m" $TOTALMEM; | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m Memoria livre: \033[0m" $TOTALFREEMEM; | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m Quantidade de memoria virtual (swap) que esta sendo usada: \033[0m" $SWAP; | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m Tamanho da maior Apache Thread: \033[0m" $APACHEMEM; | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m Quantidade de memoria ocupanda pelo MySQL: \033[0m" $SQLMEM; | |
if [[ SWAP > TOTALMEM ]]; then | |
ERR=" [+] A memoria virtual esta com valor muito alto!"; | |
else | |
ERR=" [+] A memoria virtual esta OK!"; | |
fi | |
echo "$ERR" | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m Total memoria livre: \033[0m" $TOTALFREEMEM; | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m O valor para MaxClients deve ficar em torno de: \033[0m" $MAXCLIENTS; | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m O valor para MinSpareServers deve ficar em torno de: \033[0m" $MINSPARESERVERS; | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m O valor para MaxSpareServers deve ficar em torno de: \033[0m" $MAXSPARESERVERS; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Hi Dude!! So good script!!!