рдкрд░реНрд▓ рдФрд░ рдмреИрд╢ рд▓реЛрдб рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рд╕реНрдХреНрд░рд┐рдкреНрдЯ

рдЫрд╡рд┐

рд╢рдирд┐рд╡рд╛рд░ рдХреА рд╢рд╛рдо рдХреЛ рдардВрдбреЗ рдШрд░ рдкрд░ рдмреИрдареЗ, рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдХрд┐ рд╕рд░реНрд╡рд░ рдкрд░ рд▓реЛрдб рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдФрд░ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдХреБрдЫ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХрд░реЗрдВред

рдореИрдВрдиреЗ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд┐рдпрд╛, рдФрд░ рдореИрдВ рд╡рд░реНрддрдорд╛рди рд▓реЛрдб рдХреЗ рдореВрд▓реНрдп рдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреИрд╕реЗ рдирд┐рд░реНрдпрд╛рдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред
рд╣рдо рд╕рднреА рдЕрджреНрднреБрдд рдЕрдкрдЯрд╛рдЗрдо рдХрдорд╛рдВрдб рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реИрдВ рдЬреЛ рд╣рдореЗрдВ рдЗрд╕ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдПрдХ рдореВрд▓реНрдп рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

10:52:52 25 рдорд┐рдирдЯ, 4 рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛, рд▓реЛрдб рдФрд╕рдд: 0.27, 0.38, 0.43

рд▓реЗрдХрд┐рди рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХрдЪрд░рд╛ рд╣реИ, рдФрд░ рд╣рдореЗрдВ рд╢реЗрд╖ рдХрдЪрд░реЗ рд╕реЗ рд╡рд░реНрддрдорд╛рди рднрд╛рд░ рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдпрд╣рд╛рдБ рд╕рд░реНрд╡рд╢рдХреНрддрд┐рдорд╛рди grep рдмрдЪрд╛рд╡ рдХреЗ рд▓рд┐рдП рдЖрддрд╛ рд╣реИ, рдЯреНрд░рд┐рдХреА рдЬреЛрдбрд╝рддреЛрдбрд╝ рдХреА рдорджрдж рд╕реЗ, рдЖрдк рдЗрд╕ рд░реВрдк рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд▓реЛрдб рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: рд▓реЛрдб рдФрд╕рдд: 0.14, 0.29, 0.38 рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ:

uptime | grep -o 'load average.*'

рдмреЗрд╢рдХ, рдЖрдк ':ред *' рдФрд░ 'рд╣рдореЗрдВ рдорд┐рд▓реЗрдЧрд╛' : 0.10, 0.29, 0.38 'рдЦреЛрдЬ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдпрд╣ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ред

рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЗрд╕ рдЯреАрдо рдореЗрдВ рдЕрднреА рднреА рдереЛрдбрд╝рд╛ рд╕рд╛ рдХрдЪрд░рд╛ рд╣реИ, рдХрдЯ рдХрдорд╛рдВрдб рдмрдЪрд╛рд╡ рдХреЗ рд▓рд┐рдП рдЖрддрд╛ рд╣реИ, рдЬреЛ рд╣рдореЗрдВ рдХреБрдЫ рдорд╛рдирджрдВрдбреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╣рдорд╛рд░реА рдЯреАрдо рдХреЛ рдЯреНрд░рд┐рдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рд╣рдорд╛рд░реЗ рд▓рд┐рдП рд╡рд░реНрдгреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдореЗрдВ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдЕрдкрдиреЗ рдЙрддреНрдкрд╛рджрди рдХреЛ 15 рд╕реЗ 18 рд╡рд░реНрдгреЛрдВ рддрдХ рдЯреНрд░рд┐рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдкреВрд░реНрдг рдХрдорд╛рдВрдб рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА:

uptime | grep -o 'load average.*' | cut -c 15-18

рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд░реВрдк рдореЗрдВ рдирд┐рд╖реНрдХрд░реНрд╖ рдорд┐рд▓рддрд╛ рд╣реИ: 0.10

рд╣рдордиреЗ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░ рджрд┐рдпрд╛ рд╣реИ, рдЕрдм рд╣рдореЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдорд╛рди рдХреЗ рд╕рд╛рде рдЗрд╕ рдореВрд▓реНрдп рдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рддрдм рд╕реЗ рдкрд░реНрд▓ рдХреЛ рдЖрдзрд╛рд░ рдорд╛рди рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдореБрдЭреЗ рддреБрд░рдВрдд рд╕рдордЭ рдирд╣реАрдВ рдЖрдпрд╛ рдХрд┐ рдЖрдк рдмреИрд╢ рдореЗрдВ рджрд╢рдорд▓рд╡ рддреБрд▓рдирд╛ рдХреЛ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдореИрдВ рддреБрд░рдВрдд рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рдореИрдВ рдкрд░реНрд▓ рдХрд╛ рдмрд╣реБрдд рдмрдбрд╝рд╛ рдкреНрд░рд╢рдВрд╕рдХ рдирд╣реАрдВ рд╣реВрдВ рдФрд░ рдпрд╣ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдореЗрд░реА рдкрд╣рд▓реА рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реА рдкрд░реНрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИред

рдЕрдЧрд▓рд╛ рдкрд╣рд▓реЗ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЗ рд╕рд╛рде рд╕рдмрд╕реЗ рд╕рд░рд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЖрддрд╛ рд╣реИред (рдкрд░реНрд▓ рдореЗрдВ)

#!/usr/bin/perl
my $load = `uptime | grep -o 'load average.*' | cut -c 15-18`; #
my $maxload = 20; #

if ( $load >= $maxload ) { #
`echo "$load" | mail -s 'High load [SERVERNAME]' admins\@netlevel.ru`; # ,
}


рдмреИрд╢ рдкрд░, рдпрд╣ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА
#!/bin/bash

LOAD=`uptime | grep -o 'load average.*' | cut -c 15-18`
MAX_LOAD=20.0

if [ LOAD \> MAXLOAD ]; then
echo $LOAD | mail -s 'High load [SERVERNAME]' admins\@example.com;
fi

ISage рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж

рдЗрд╕ рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓реЗ рдореЗрдВ, рдореИрдВрдиреЗ рдХреЗрд╡рд▓ рдореЗрд▓ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдореЗрд▓рдмреЙрдХреНрд╕ рдХреЛ рдПрдХ рдИрдореЗрд▓ рднреЗрдЬрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдкрдиреА рдкрд╕рдВрдж рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдЕрдзрд┐рдХрд╛рд░ рд╣реИред

рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЗрд╕реЗ рд▓реЛрдб рдХрд░реЗрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, / рдмрд┐рди рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ, рдЗрд╕реЗ chmod +x scriptname рдЪрд▓рд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВ рдФрд░ рдЗрд╕реЗ crontab -e рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдореБрдХреБрдЯ рдкрд░ рд▓рд┐рдЦреЗрдВ
рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА:

2 * * * * /usr/local/bin/perl /bin/scriptname

рдЦреИрд░, рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ рдмреИрд╢ рдХреЗ рд▓рд┐рдП

2 * * * * /bin/bash /bin/scriptname

рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИред

рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЗрдЪреНрдЫрд╛, рд╕реБрдЭрд╛рд╡, рдкрд░рд┐рд╡рд░реНрдзрди рд╣реИ, рддреЛ рдореБрдЭреЗ рдЙрдирдХреА рдмрд╛рдд рд╕реБрдирдХрд░ рдФрд░ рд╡рд┐рд╖рдп рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рдЦреБрд╢реА рд╣реЛрдЧреАред

рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

рд▓реЛрдЧреЛрдВ рдХреЗ рдХрд░реНрдо рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдореИрдВ рдЗрд╕рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВред рддреЛ рдЙрд╕рдХреЗ рдмрд╛рдж рдЗрд╕реЗ рд╢реЗрдпрд░ рдХрд░реЗрдВ ...

Source: https://habr.com/ru/post/In114127/


All Articles