როდესაც სერვერი გადატვირთულია, ვირტუალური თუ გამოყოფილი, ეს იწვევს ვებსაიტების ნელა ჩატვირთვას და შინაარსის ნაცვლად გამაღიზიანებელ შეცდომებს. აუცილებელია მისი პარამეტრების გულდასმით მონიტორინგი და რესურსების დროული ანალიზი, რათა თავიდან ავიცილოთ ასეთი შედეგი.
შემდეგი, ჩვენ განვიხილავთ ინდივიდუალური რესურსების დიაგნოზს ჰოსტინგის პროვაიდერის ინსტრუმენტების გამოყენებით, ასევე სერვერის მხარეს არსებული ტერმინალის მეშვეობით. გარდა ამისა, ჩვენ განვიხილავთ სხვადასხვა მიდგომებს სისტემის ცუდი შესრულებასთან დაკავშირებული პრობლემების გადასაჭრელად. ინსტრუქციები ვრცელდება Linux OS-ის მქონე ნებისმიერ სერვერზე, წინასწარ დაინსტალირებული პროგრამული უზრუნველყოფის მიუხედავად.
სერვერის რესურსების შემოწმება VMmanager-ის საშუალებით
VMmanager ვირტუალიზაციის ინსტრუმენტი არის ყველაზე მარტივი, მაგრამ ამავე დროს უნივერსალური გამოსავალი დიაგნოსტიკისთვის. ის მნიშვნელოვან როლს ასრულებს ეფექტური მართვის უზრუნველსაყოფად თავდადებული or ვირტუალური სერვერები ყველაზე თანამედროვე ჰოსტინგის პროვაიდერებზე. მაგალითად, შემოწმება განხორციელდება ხელსაწყოს მე-6 ვერსიაზე, თუმცა წინა ვერსიებმაც შეიძლება ჩაატარონ მსგავსი დიაგნოსტიკა.
ანალიზისთვის უნდა გადახვიდეთ VMmanager მართვის პანელი და აირჩიეთ სასურველი ვირტუალური მანქანა:
შემდეგი, მომხმარებელს შეუძლია დაუყოვნებლივ დაინახოს რესურსების გამოყენება რეალურ დროში. უფრო დეტალური სტატისტიკისთვის, თქვენ უნდა აირჩიოთ "პარამეტრები":
დეტალური სტატისტიკის ჩანართი ზედა აჩვენებს სერვერის ზოგად მახასიათებლებს და ვირტუალიზაციის ტიპს. გრაფიკებზე შეგიძლიათ იხილოთ ქსელის გადატვირთულობა, პროცესორის დატვირთვა, ოპერატიული მეხსიერება და დისკის სივრცის გამოყენება რეალურ დროში:
დისკის სივრცის ან რესურსების სტატისტიკის უფრო დეტალური ანალიზისთვის გარკვეული პერიოდის განმავლობაში, თქვენ უნდა აირჩიოთ მენიუს შესაბამისი ელემენტი. ინფორმაცია ვირტუალური დისკების შესახებ ნაჩვენებია ამ ფორმატში:
კონკრეტული რესურსის დატვირთვის სტატისტიკა ნაჩვენებია მოსახერხებელი გრაფიკის სახით:
შესაძლებელია დატვირთვის გრაფიკის ჩვენება დღის, კვირის, თვის, წლისთვის ან ხელით აირჩიეთ საჭირო თარიღები. ნაჩვენებია ყველა ძირითადი რესურსი: პროცესორი, ოპერატიული მეხსიერება, საცავი, ქსელის ინტერფეისი.
ბევრი მომხმარებელი ელის რესურსების თანაბრად გამოყენებას გარკვეული პერიოდის განმავლობაში. თუმცა, ეს ყოველთვის ასე არ არის. მაგალითად, ქსელის ინტერფეისი შეიძლება მსგავსი იყოს უმოქმედო რეჟიმშიც კი:
ამ შემთხვევაში ზომები არ არის საჭირო. თუმცა, პროცესორის, ოპერატიული მეხსიერების ან დისკის შენახვის შემთხვევაში, სერვერმა არ უნდა გამოიყენოს თავისი რესურსების მთელი 100% მუდმივად; რეკომენდებული დატვირთვა არ არის 70% -ზე მეტი.
სერვერის რესურსების შემოწმება ტერმინალში
მთლიანი დატვირთვის ანალიზი
ჩვენ ადრე განვიხილეთ ანალიზის რამდენიმე ვარიანტი სერვერის რესურსების ზოგადი დიაგნოსტიკა სტატია. იქ ვისაუბრეთ სტანდარტულ ინსტრუმენტებზე, როგორიცაა ზევით/ზემოდან, და ასევე შევხედე ინსტალაციას და კონფიგურაციას ნეტდატა პროგრამა, რომელიც საშუალებას გვაძლევს დავაკვირდეთ სერვერის რესურსებს ბრაუზერის საშუალებით. ამ სტატიაში განვიხილავთ htop როგორც ალტერნატივა დაბრუნება პროგრამა ზოგადი სისტემის რესურსების ანალიზისთვის.
ინსტრუმენტი ნაგულისხმევად არ არის წინასწარ დაინსტალირებული Linux დისტრიბუციებში, ამიტომ დავიწყოთ ინსტალაცია. Debian/Ubuntu-სთვის ჩვენ ვიყენებთ ბრძანებას:
apt-get install htop
CentOS-ისთვის უფრო აზრიანია მისი გამოყენება თბილი საცავები. ისინი ნაგულისხმევად გამორთულია, ამიტომ პირველი ბრძანება პასუხისმგებელია მათ დამატებაზე, ხოლო მეორე ინსტალაციაზე htop:
yum -y install epel-release
yum install htop -y
ინსტალაციისთანავე, შეგიძლიათ გახსნათ პროგრამა პროგრამის მენიუდან ან ტერმინალში შესაბამისი ბრძანებით:
htop
შედეგად, მომხმარებელი შეძლებს სისტემის შესახებ ყველა ინფორმაციის ნახვას:
ზედა მარცხენა კუთხეში ნაჩვენებია პროცესორის მონაცემები, მათ შორის თითოეული ბირთვის გამოყენება, ოპერატიული მეხსიერება და სვოპ მეხსიერება. Swap მეხსიერება Linux-ში გამოიყენება RAM-ის დეფიციტის შემთხვევაში, რაც უზრუნველყოფს სისტემის სტაბილურობას. ზედა მარჯვენა კუთხეში შეგიძლიათ იხილოთ პროცესორის დატვირთვა და აქტიური ამოცანების რაოდენობა. ცენტრალურ ნაწილში ნაჩვენებია აქტიური პროცესები დახარისხების უნარით. ქვედა ნაწილი შეიცავს ინფორმაციას ცხელი კლავიშებისა და ფუნქციონირების შესახებ. განყოფილება "დახმარება" შეიცავს პროგრამის შესაძლებლობების დეტალურ აღწერას:
თავად სისტემის დიაგნოსტირებამდე აუცილებელია ზუსტად გავიგოთ რამდენი ბირთვი/პროცესორია გამოყენებული სერვერზე. მომხმარებელს შეუძლია გაიგოს მათი ღირებულება ზედა მარცხენა კუთხეში htop კომუნალური:
ან ბრძანების გაშვებით:
nproc
მიღებული მნიშვნელობიდან გამომდინარე, გამოითვლება დასაშვები მთლიანი დატვირთვა (დატვირთვის საშუალო ზედა მარჯვენა კუთხეში). ჩვენს შემთხვევაში ის უდრის 2-ს, რაც ნიშნავს, რომ მაქსიმალური დატვირთვაა 2.0. თუმცა, ეს არ ნიშნავს, რომ სისტემა მთლიანად გაიყინება დატვირთვის ქვეშ 2.0. ეს რიცხვი შეიძლება იყოს უფრო მაღალი, მაგრამ ამ შემთხვევაში, ყველა სხვა დავალება იქნება რიგში და თავად სერვერი ჩაიტვირთება. იდეალურ მნიშვნელობად ითვლება დატვირთვა არაუმეტეს 70%. მაგალითად, დატვირთვის საშუალო მაჩვენებელი უნდა იყოს 0.7-ის ფარგლებში ერთ პროცესორიან სერვერზე. ზემოხსენებულ მაგალითში სერვერის შემთხვევაში, კარგი მაჩვენებელი იქნება მნიშვნელობები არაუმეტეს 1.4.
გამოყენება htop ან მის ანალოგებს, მომხმარებელმა უნდა შეაფასოს ძირითადი რესურსები: პროცესორის საშუალო დატვირთვა, ოპერატიული მეხსიერების მოხმარება, დისკის ადგილი და ქსელის ინტერფეისი. თუ რესურსები მინიმალურია, თქვენ უნდა დაალაგოთ პროცესები CPU-ს გამოყენების მიხედვით, დაადგინოთ მაღალი შრომატევადი ოპერაციები და შემდეგ ოპტიმიზაცია ან შეწყვეტა. თუ პროგრამის დახურვა შეუძლებელია ან ოპტიმიზაცია ვერ მოხერხდა, რეკომენდებულია უფრო მძლავრი კონფიგურაციის მქონე სერვერზე გადართვა.
უფასო RAM-ის შემოწმება
ამ განყოფილებაში ჩვენ უფრო დეტალურად განვიხილავთ ნებისმიერი სერვერის ფუნქციონირების მნიშვნელოვან ასპექტს - თავისუფალი ოპერატიული მეხსიერების საკმარისი დონეს.
ტერმინალის მეშვეობით ნებისმიერ Linux სისტემაზე უფასო ოპერატიული მეხსიერების შესამოწმებლად უმარტივესი გზაა ბრძანება:
free -m
გამოსავალზე ვიღებთ შემდეგ მონაცემებს მეგაბაიტებში: მთლიანი, გამოყენებული, თავისუფალი და ქეშირებული ოპერატიული მეხსიერება, ასევე ცვლადი მოცულობა:
ინსტრუმენტი სასარგებლოა ზოგადი მონაცემების მისაღებად დროის კონკრეტულ მომენტში. RAM-ის გამოყენების დინამიური დიაგნოსტიკისთვის, ჩვენ გირჩევთ vmstat პროგრამა, რომელიც საშუალებას გვაძლევს დავაკონფიგურიროთ გამომავალი ინფორმაციის განახლების სიხშირე:
vmstat 1
ზემოთ მოყვანილ მაგალითში მონაცემები ყოველ წამს განახლდება. გამომავალი იწარმოება მსგავსი ფორმატით უფასო:
ინსტრუმენტი ასევე იძლევა ზოგად სისტემურ ინფორმაციას, მაგრამ ჩვენს შემთხვევაში მნიშვნელოვანია მხოლოდ სვეტები, რომლებიც პასუხისმგებელნი არიან RAM-ზე, ანუ მეხსიერებაზე და სვოპზე. ყველა მნიშვნელობა მითითებულია კილობაიტებში. მოდით შევხედოთ მათ უფრო დეტალურად:
მეხსიერება (RAM):
- swpd: ვირტუალური მეხსიერება გაცვალეს ფიზიკურად.
- უფასო: ხელმისაწვდომი ფიზიკური მეხსიერება (RAM).
- buff: მეხსიერება გამოიყენება ბუფერად დისკის ჩაწერამდე.
- cache: მეხსიერება გამოიყენება ქეშად წვდომის დასაჩქარებლად.
swap
- si: მეხსიერება გამოიყენება ქეშად წვდომის დასაჩქარებლად.
- so: მონაცემები დაწერილი ფიზიკური მეხსიერებიდან სვოპ მეხსიერებისთვის.
ცალკე, აღსანიშნავია ის ფაქტი, რომ ყველა სისტემის რესურსი, რომელიც დიაგნოზირებს უტილიტას, თავდაპირველად იღებს მონაცემებს ჟურნალებიდან. ოპერატიული მეხსიერების შემთხვევაში, მომხმარებელი შეძლებს მონაცემების პირდაპირ ნახვას შესაბამისი ფაილის გახსნით:
cat /proc/meminfo
გამომავალი საკმაოდ ვრცელია, მაგრამ საკმარისია ყურადღება მიაქციოთ პირველ ჩანაწერებს მეხსიერების გასაანალიზებლად:
RAM-ის გადაჭარბებული მოხმარების პრობლემები ყველაზე ხშირად დაკავშირებულია კონკრეტულ ამოცანასთან ან პროცესთან. დასაწყისში საკმარისი იქნება დიაგნოსტიკა საერთო ინსტრუმენტების გამოყენებით პრობლემური პროცესების იდენტიფიცირების მიზნით. როგორც გამოსავალი, შეგიძლიათ განიხილოთ კონკრეტული აპლიკაციის ოპტიმიზაცია, ქეშირებისა და მონაცემთა შეკუმშვის ჩართვა, თუ ვსაუბრობთ ინფორმაციის დიდ რაოდენობაზე, ან სერვერის კონფიგურაციის გაზრდაზე.
დისკის სივრცის კონტროლი
სერვერის დისკის სივრცის დიაგნოსტიკა არანაკლებ მნიშვნელოვანია, ვიდრე მისი სხვა რესურსები. როგორც წესი, შემოწმების აუცილებლობის სიგნალებია: არსებული ფაილების შექმნის ან ჩაწერის შეუძლებლობა, სისტემის ნელი მუშაობა და სხვადასხვა შეყვანის/გამოსვლის შეცდომები.
შემოწმების ყველაზე მოსახერხებელი გზაა ბრძანება:
df -h
საპასუხოდ, ინსტრუმენტი აჩვენებს ინფორმაციას ყველა დამონტაჟებული დისკის დანაყოფზე:
თქვენ შეგიძლიათ გამოიყენოთ ეს ბრძანება დირექტორიების უფრო დეტალური მონიტორინგისთვის:
du -hs /*
ამ გზით, მომხმარებელი შეძლებს გაარკვიოს, თუ რამდენ ადგილს იკავებს თითოეული დირექტორია. სისტემის მუშაობის აღსადგენად, თქვენ დაგჭირდებათ დისკის დანაყოფის ოპტიმიზაცია, რომელიც მოიხმარს ყველაზე მეტ მეხსიერებას. რეკომენდირებულია არ დაუშვას მთლიანი რაოდენობის თავისუფალი სივრცის 80-90%-ზე მეტი გამოყენება; დარჩენილი 10-20% საკმარისი უნდა იყოს სისტემის სტაბილური მუშაობისთვის. რეკომენდებულია დისკზე სივრცის გაზრდა, თუ ოპტიმიზაცია შეუძლებელია. ეს შეიძლება შესრულდეს ახალი დისკების დამატებით ან გაფართოებით, ასევე ღრუბლოვანი საცავის გამოყენებით. არჩეული გადაწყვეტის მიუხედავად, რეკომენდირებულია ყოველთვის გააკეთოთ სარეზერვო ასლი ფაილის დაკარგვის თავიდან ასაცილებლად.
ქსელის ინტერფეისის შემოწმება
სერვერის დიაგნოსტიკის საბოლოო, მაგრამ არანაკლებ მნიშვნელოვანი ასპექტი არის ქსელის ინტერფეისის შემოწმება. The ნეტოგები კომუნალური პროგრამა შეიძლება გამოყენებულ იქნას, თუ გსურთ მიიღოთ ზოგადი ინფორმაცია იმის შესახებ, თუ რამდენ ტრაფიკს აღრიცხავს ქსელის პროცესები რეალურ დროში.
ინსტალაცია და გაშვება Cent OS-ზე:
yum install nethogs
nethogs
Debian/Ubuntu-სთვის:
apt-get install nethogs
nethogs
ინსტრუმენტი აჩვენებს იმ პროცესებს, რომლებიც ამჟამად იყენებენ ქსელის რესურსებს:
ჩვენ გირჩევთ გამოიყენოთ iftop უფრო დეტალური ანალიზისთვის.
ინსტალაცია და გაშვება Cent OS-ზე:
yum install iftop
iftop
Debian/Ubuntu-სთვის:
apt-get install iftop
iftop
პროგრამის გამომავალი არის აქტიური კავშირების სია, რომელშიც მითითებულია IP მისამართები, პორტები, გადაცემული მონაცემების რაოდენობა და გადაცემის სიჩქარე. პროგრამის მთავარი უპირატესობა არის ქსელის არხის ჩატვირთვის ვიზუალური დიზაინი:
სერვერის ქსელის არხის დიაგნოსტიკისა და მაღალი დატვირთვის პრობლემების იდენტიფიცირების შემდეგ, რეკომენდებულია ჰოსტინგის პროვაიდერის მხრიდან ქსელური კავშირების გამტარუნარიანობის გაზრდა ან კონკრეტული პრობლემური ინტერფეისის პარამეტრების ოპტიმიზაცია. როგორც სარეზერვო საშუალება, შეგიძლიათ გამოიყენოთ სხვადასხვა მონიტორინგის სისტემები, რათა სწრაფად თვალყური ადევნოთ ქსელის აქტივობაში ცვლილებებს და, საჭიროების შემთხვევაში, რეგულარულად განაახლოთ ქსელის ინფრასტრუქტურა მოთხოვნების შესაბამისად.
დასკვნა
დასასრულს, შეიძლება ითქვას, რომ სერვერის რესურსების დიაგნოსტიკა ეფექტური მართვის განუყოფელი ნაწილია ვირტუალური მდე თავდადებული სერვერები. სტატიამ მოგვცა შესაძლებლობა გადავხედოთ მთავარ ინსტრუმენტებს სერვერის სრული ანალიზისთვის და ასევე მოგვცეს პრაქტიკული რეკომენდაციები შესაძლო პრობლემების გადასაჭრელად. სისტემის რეგულარული დიაგნოსტიკა საშუალებას აძლევს სერვერს შეუფერხებლად იმუშაოს მომხმარებლის აქტიური მონაწილეობის გარეშეც კი.