Мен окуямды бөлүшүүнү чечтим. Балким, ал тургай кимдир бирөө белгилүү көйгөйгө ушундай бюджеттик чечим керек болот.
Мен жаш жана ысык кезимде жана энергиямды эмне кыларымды билбей жүргөндө, мен бир аз фрилансерлик кылууну чечтим. Мен тез эле рейтингге ээ болдум жана менден серверлерин үзгүлтүксүз колдоону суранган бир нече туруктуу кардарларды таптым.
Мен эң биринчи ойлогон нерсем мониторинг жүргүзүү керек эле. Мен дөңгөлөктү кайра ойлоп табуу үчүн эмес, Мунин же Заббикс сыяктуу даяр варианттарды карап чыгууну акылдуу адамдардай кылууну чечтим. Бирок мен дароо эле Веб версиясы жакшы интернет байланышын талап кыларын байкадым, айрыкча, аны телефонуңуздан биринчи жолу ачсаңыз. Эгер сиз шаардан алыс жерде табиятта эс алып жатсаңыз, туруктуу байланышка ээ болуу кыйын. Ошондуктан, консолдук мониторинг опциясы тандалды.
Atop жана журналдардын үстүнөн окуу программасы - atopsar - мага консолдук мониторинг сыяктуу эле жардам берди. Алар буга чейин хабрда айтылган, , бирок атопсар жөнүндө дээрлик эч нерсе айтылган эмес.
жөндөө
Абдан жөнөкөй орнотуу, үч гана буйрук.
#Centos
yum install atop#Debian/Ubuntu
apt-get install atopАндан кийин, сиз мониторинг операциясын өзүңүзгө ыңгайлаштыра аласыз же демейки жөндөөлөрдү колдоно аласыз.
#Debian/Ubuntu/Centos
/etc/default/atop Стандарттык файл:
#cat /etc/default/atop
INTERVAL=60 #Время, через которое создаётся снимок нагрузки в секундах, по умолчанию каждые 10 минут
LOGPATH="/var/log/atop" #Путь до папки хранения логов
OUTFILE="$LOGPATH/daily.log" #Название файла логов за сегодняшний день
Autorun'го кошуу
#Debian/Ubuntu/Centos
systemctl enable atop Демон катары үстүнө чуркай бер
#Debian/Ubuntu/Centos
systemctl start atop Жалкоолорго мен бир командага чогулдум
#Centos
yum install atop && systemctl enable atop && systemctl start atop#Debian/Ubuntu
apt-get install atop && systemctl enable atop && systemctl start atopАтопсар
Atop менен бирге atopsar да орнотулган, ал үстүнкү демон тарабынан тейленген бинардык журналдардын ыңгайлуу консолдук анализатору; Албетте, сиз журналдарды өзүңүздүн үстүнөн окуй аласыз, бирок бул өтө ыңгайлуу эмес, эгерде сизге көп убакытты тартуу керек болсо.
Атопсардын чыгармачылыгы боюнча чакан окуу программасы.
Атопсарды ачкычсыз баштаганда, бүгүнкү күндө журнал ачылат жана ар бир өзөктөгү жүк өзүнчө жана бардык өзөктөр үчүн бош сызык көрсөтүлөт.
Мен колдонгон ачкычтар:
-A = журналдан бардык маалыматты көрсөтүү
-ден = процессордун өзөктөрүндөгү жүктөм жөнүндө маалыматты көрсөтүү, демейки ачкыч
-m = RAMга жүктөө жана алмаштыруу
-d = диск активдүүлүгү
-O = жогорку 3 CPU жүктөө процесси
-G = RAMга эң жогорку 3 процесс жүктөлөт
-D = жогорку 3 диск жүктөө процесси
-N = жогорку 3 тармак жүктөө процесси
-r = Эгер өткөн күндөрдө жүктү көрүшүңүз керек болсо, сиз окугуңуз келген журналдын жолун көрсөтүңүз
-b = тартып баштоо үчүн убакыт
-e = чыгаруу бүтүшү керек болгон убакыт
-M = аягында кошумча мамычаны түзөт, ал сызыктын критикалык деңгээлин белгилейт (+ жүк, * критикалык жүк)
Мониторингдин аркасында биз каалаган убакта сервердин туура эмес жүрүм-турумунун себебин түшүнө алабыз.
кабарлоо
Ошентип, жүк мониторинг бар, бирок ал дагы эле тез таап, көйгөйлөрдү чечүүгө мүмкүндүк бербейт. Бизге көйгөй тууралуу эскертмелер керек.
Мен серверлерди көзөмөлдөгөн жалгыз адаммын, ошондуктан мен аны ар дайым көрө турган жана жок дегенде кандайдыр бир жол менен жооп бере турган жерге кабарлашым керек.
Башында SMS бар болчу - тез, ишенимдүү, бекер. Бирок кийин уюлдук операторлор өз шлюздары аркылуу акысыз SMS билдирүүлөрдү жөнөтүүнү токтотушту.
Почта көп убакытты талап кылат, жеткирүүдө көйгөйлөр болушу мүмкүн.
Messengers - аларды телефонуңузга орнотуу керек, ботторду түзүү керек.
Издөөнүн жыйынтыгында Telegram мессенджери өзүнүн жөнөкөйлүгү жана телефондо жана иш тактада колдонууга ыңгайлуу болгондугу үчүн тандалды.
колдонуу менен ботуңузду түздү .
Андан кийин мен серверге жүктөмдү (IDL, smartct ж.б.) көзөмөлдөгөн бир нече скрипттерди койдум, "oom killer" сыяктуу каталардын болушу, резервдик көчүрмөнү түзүүдөгү каталар жана башка мониторинг жүргүзүү керек болгон операциялар.
Скрипттер абдан жөнөкөй, bash тилинде жазылган, мисалы, LA текшерүү жана жүктөө орточосу ядролордун санынан ашып кеткени жөнүндө билдирүү сервер.
if [ ${LA[0]} -gt 2000 ] || [ ${LA[1]} -gt 3000 ] || [ ${LA[2]} -gt 4000 ]
then
wget -O /dev/null "https://api.telegram.org/$bot_id:$bot_key/sendMessage?chat_id=$chat_id&text=На сервере $ip LA $LAd"
wget -O /dev/null "https://api.telegram.org/$bot_id:$bot_key/sendMessage?chat_id=$chat_id&text=`top -b -n 1 | grep Cpu`"
wget -O /dev/null "https://api.telegram.org/$bot_id:$bot_key/sendMessage?chat_id=$chat_id&text=Топ 5 процессов `top -b -n 1 | grep -A 5 'PID USER' | tail -5`"
fiСинтаксистин жөнөкөйлүгү колдонуу үчүн көптөгөн мүмкүнчүлүктөрдү берет (жана программалоо тилин бир аз болсо да билген адам жаза/кошушу мүмкүн).
Бир гана эскертүү, эгерде сервер Россияда жайгашкан болсо (жана серверде IPv6 жок), анда прокси колдонушуңуз керек. Бул үчүн, скрипттин башында проксиге байланыш сабын жазышыңыз керек:
export https_proxy=http://логин:пароль@IP.адрес:портБул аягы эмес
Сиз белиңизге рюкзак менен тоолорду аралап, цивилизациядан тыныгуу алып бара жатасыз, анан телефонуңуз кокусунан байланышты алып, сервериңизде пайда болгон көйгөй тууралуу билдирүү жөнөтөт. Эмне кылуу керек? Тынч маанайды шамал учуруп кетти. Аялыңа чалып, буйрук бересиңби? Ха ха!
Бул тез жана жакшы Интернет байланышы жок пайда болгон көйгөйлөрдү чечүү үчүн кандайдыр бир жол менен келип, шашылыш болгон. Бул жерде мессенджер мени кайрадан куткарды (#telegramlive). Мен ботумду башкаларды тоготпой, мени менен гана баарлашууга үйрөттүм. Эми, көйгөй жөнүндө билдирүү менен бирге, мен бир аз көбүрөөк маалымат алып жатам, алардан маселенин булагы ким экенин түшүнөм жана мен аны алыстан чечүүгө аракет кылам. Сиз жөн гана ботко билдирүү жазышыңыз керек, телефонуңузду бийик ыргытыңыз, ошондо кабар кетпейт жана voila - бот сиздин жумушуңузду аткарууга барат. Ушундай жол менен мен, мисалы, кээ бир керексиз процесстерди жок кыла алам, демонду кайра иштете алам, IPди бөгөттөйм ж.б.
Бул жерде мен кардарлардын келечектеги зарыл суроо-талаптарын да өткөрүп бердим, мисалы, колдонуучулар үчүн сырсөздөрдү шашылыш түрдө калыбына келтирүү (анткени “Аххх, биз серверге кире албай жатабыз, миллиондорду жоготуп жатабыз!”), кирүү мүмкүнчүлүгү бар колдонуучуну издөө. каалаган папканы, сайтты күйгүзүү жана өчүрүү жана башкалар. Албетте, мен дайыма боттун функционалдуулугун өркүндөтөм, анткени кардарлардын фантазиясы кээде мен күтпөгөн күтүүсүз суроо-талаптарды жаратат. Бирок негизгилери канааттандырат.
ВКнын версиясы да бар, бирок кандайдыр бир жол менен ал жакпай калды.
Азыр мен ал жерде бир нерсе бузулуп, аны таап же оңдой албай калам деп коркпой, бул дүйнөнү кыдырып, изилдеп жүрөм.
Source: www.habr.com
