Кейс

VPS серверінде CPU үнемі 100% жүктелген

Сайт баяу ашылды, басқару панелі қатып қалды, ал мониторингте сервер үнемі 100% CPU көрсетті. Мақсат: VPS-ті нақты не жүктеп тұрғанын анықтау және тарифті көтермей шешуге бола ма, соны түсіну.

VPS/VDS CPU жүктемесі Диагностика 30-60 минут

Жағдай

Клиент сайттың баяу ашылатынын және мониторингте CPU үнемі жоғары екенін байқады. Бірақ сайтқа келушілер саны көп емес сияқты көрінді.

Мұндай жағдайда бірден тарифті үлкейту дұрыс емес. Алдымен қандай процесс жүктеме беріп тұрғанын және оның не үшін іске қосылғанын анықтау керек.

Не тексеріледі

  • ағымдағы жүктеме top, htop немесе ps арқылы;
  • процесті қай пайдаланушы іске қосқаны;
  • процестің қанша уақыт жұмыс істеп тұрғаны;
  • резервтік көшіру, архивті қысу немесе деректер импорты жүріп жатқан-жатпағаны;
  • диск орны және енгізу-шығару операцияларының жағдайы;
  • веб-сервер мен басқару панелінің логтары.

Себебі

Көп жағдайда жүктемені сайттың өзі емес, фондық тапсырма береді: резервтік көшіру, архивті қысу, тауар импорты, сурет генерациясы немесе ауыр cron-процесс.

Мысалы, резервтік көшірмеде максималды қысу қосылса, процесс ұзақ уақыт CPU-ды толық пайдалана алады. Бұл апат сияқты көрінгенімен, сервер ауыр тапсырманы орындап жатқан болуы мүмкін.

Шешім

  1. CPU тұтынатын процесті анықтау.
  2. Бұл штаттық тапсырма ма, әлде күмәнді белсенділік пе, соны түсіну.
  3. Егер резервтік көшіру жүріп жатса: аяқталуын күту немесе тоқтатуды келісу.
  4. Келесі жолы қысу деңгейін азайту, бэкапты түнгі уақытқа қою немесе бөлек қойма қолдану.
  5. Егер процесс күмәнді болса: қолжетімділіктерді, cron тапсырмаларын, уақытша файлдарды және авторизация логтарын тексеру.

Нәтиже

Диагностикадан кейін CPU/RAM арттыру қажет пе, әлде резервтік көшіру баптауын өзгерту жеткілікті ме, түсінікті болады. Бұл себеп бір фондық тапсырмада болса, артық тариф төлеуден сақтайды.

Қайталанбауы үшін не істеу керек

Жүктеме себебі жойылғаннан кейін фондық тапсырмаларды тұрақты бақылау маңызды. Қай процестер кесте бойынша іске қосылатынын, резервтік көшірме қашан жасалатынын, қандай қысу деңгейі қолданылатынын және сервер ресурстары жеткілікті ме екенін түсіну керек.

  • ауыр тапсырмаларды түнгі уақытқа ауыстыру;
  • қажет болмаса, бэкапта максималды қысуды қолданбау;
  • cron тапсырмаларын және жүйелік процестерді тексеру;
  • диск орны, I/O және CPU жүктемесін бақылау;
  • жүктеме жиі қайталанса, тарифті бірден өсірмей, алдымен процесті оңтайландыру.