જ્યારે સર્વર ઓવરલોડ થાય છે, પછી ભલે તે વર્ચ્યુઅલ હોય કે ડેડિકેટેડ, તે વેબસાઇટ્સને ધીમે ધીમે લોડ કરે છે અને સામગ્રીને બદલે બળતરાત્મક ભૂલો ઉત્પન્ન કરે છે. આવા પરિણામને ટાળવા માટે તેના પરિમાણોનું કાળજીપૂર્વક નિરીક્ષણ કરવું અને સંસાધનોનું સમયસર વિશ્લેષણ કરવું જરૂરી છે,
આગળ, આપણે હોસ્ટિંગ પ્રદાતાના સાધનોનો ઉપયોગ કરીને, તેમજ સર્વર બાજુ પરના ટર્મિનલ દ્વારા વ્યક્તિગત સંસાધનોનું નિદાન કરવા પર વિચાર કરીશું. વધુમાં, આપણે નબળા સિસ્ટમ પ્રદર્શન સાથે સંકળાયેલી સમસ્યાઓના ઉકેલ માટે વિવિધ અભિગમો પર વિચાર કરીશું. સૂચનાઓ Linux OS ચલાવતા કોઈપણ સર્વર પર લાગુ પડે છે, પછી ભલે તે પહેલાથી ઇન્સ્ટોલ કરેલ સોફ્ટવેર હોય.
VMmanager દ્વારા સર્વર સંસાધનો તપાસી રહ્યું છે
VMmanager વર્ચ્યુઅલાઈઝેશન ટૂલ એ સૌથી સરળ છે, પરંતુ તે જ સમયે ડાયગ્નોસ્ટિક્સ માટે સાર્વત્રિક ઉકેલ છે. તે મોટાભાગના આધુનિક હોસ્ટિંગ પ્રદાતાઓ પર સમર્પિત અથવા વર્ચ્યુઅલ સર્વર્સના કાર્યક્ષમ સંચાલનને સુનિશ્ચિત કરવામાં મુખ્ય ભૂમિકા ભજવે છે . ઉદાહરણ તરીકે, ટૂલના સંસ્કરણ 6 પર તપાસ કરવામાં આવશે, જો કે, પાછલા સંસ્કરણો પણ સમાન ડાયગ્નોસ્ટિક્સ કરી શકે છે.
વિશ્લેષણ માટે, તમારે VMmanager કંટ્રોલ પેનલ પર જવાની અને ઇચ્છિત વર્ચ્યુઅલ મશીન પસંદ કરવાની જરૂર છે:
આગળ, વપરાશકર્તા રીઅલ ટાઇમમાં સંસાધનોનો ઉપયોગ તરત જ જોઈ શકે છે. વધુ વિગતવાર આંકડા માટે, તમારે "પરિમાણો" પસંદ કરવાની જરૂર છે:
ટોચ પર વિગતવાર આંકડા ટેબ સામાન્ય સર્વર લાક્ષણિકતાઓ અને વર્ચ્યુઅલાઈઝેશન પ્રકાર દર્શાવે છે. ગ્રાફ પર તમે રીઅલ ટાઇમમાં નેટવર્ક કન્જેશન, પ્રોસેસર લોડ, RAM અને ડિસ્ક સ્પેસ વપરાશ જોઈ શકો છો:
ચોક્કસ સમયગાળા માટે ડિસ્ક સ્પેસ અથવા સંસાધન આંકડાઓના વધુ વિગતવાર વિશ્લેષણ માટે, તમારે યોગ્ય મેનૂ આઇટમ પસંદ કરવી આવશ્યક છે. વર્ચ્યુઅલ ડિસ્ક વિશેની માહિતી આ ફોર્મેટમાં પ્રદર્શિત થાય છે:
ચોક્કસ સંસાધન માટેના લોડ આંકડા અનુકૂળ ગ્રાફના રૂપમાં પ્રદર્શિત થાય છે:
દિવસ, સપ્તાહ, મહિનો, વર્ષ માટે લોડ ગ્રાફ પ્રદર્શિત કરવો અથવા જરૂરી તારીખો મેન્યુઅલી પસંદ કરવી શક્ય છે. બધા મુખ્ય સંસાધનો પ્રદર્શિત થાય છે: પ્રોસેસર, રેમ, સ્ટોરેજ, નેટવર્ક ઇન્ટરફેસ.
ઘણા વપરાશકર્તાઓ ચોક્કસ સમયગાળા દરમિયાન સંસાધનોનો સમાન રીતે ઉપયોગ થવાની અપેક્ષા રાખે છે. જો કે, આ હંમેશા કેસ નથી. ઉદાહરણ તરીકે, નિષ્ક્રિય સ્થિતિમાં પણ નેટવર્ક ઇન્ટરફેસ સમાન દેખાઈ શકે છે:
આ કિસ્સામાં કોઈ પગલાં લેવાની જરૂર નથી. જો કે, પ્રોસેસર, RAM અથવા ડિસ્ક સ્ટોરેજના કિસ્સામાં, સર્વરે તેના તમામ 100% સંસાધનોનો સતત ઉપયોગ ન કરવો જોઈએ; ભલામણ કરેલ લોડ 70% થી વધુ ન હોવો જોઈએ.
ટર્મિનલમાં સર્વર સંસાધનો તપાસી રહ્યા છીએ
કુલ ભાર વિશ્લેષણ
આપણે પહેલા જનરલ ડાયગ્નોસ્ટિક્સ ઓફ સર્વર રિસોર્સિસ લેખમાં કેટલાક વિશ્લેષણ વિકલ્પો જોયા છે . ત્યાં આપણે ટોપ/એટોપ જેવા માનક સાધનો વિશે વાત કરી હતી , અને નેટડેટા યુટિલિટી ઇન્સ્ટોલ અને ગોઠવવા વિશે પણ વાત કરી હતી , જે આપણને બ્રાઉઝર દ્વારા સર્વર રિસોર્સિસનું નિરીક્ષણ કરવાની મંજૂરી આપે છે. આ લેખમાં આપણે સામાન્ય સિસ્ટમ રિસોર્સિસ વિશ્લેષણ માટે ટોપ યુટિલિટીના વિકલ્પ તરીકે htop પર નજર નાખીશું.
આ ટૂલ ડિફોલ્ટ રૂપે Linux ડિસ્ટ્રિબ્યુશનમાં પહેલાથી ઇન્સ્ટોલ કરેલું નથી, તેથી ચાલો ઇન્સ્ટોલેશનથી શરૂઆત કરીએ. ડેબિયન/ઉબુન્ટુ માટે આપણે આ આદેશનો ઉપયોગ કરીએ છીએ:
apt-get install htop
CentOS માટે, EPEL રિપોઝીટરીઝનો ઉપયોગ કરવો વધુ અર્થપૂર્ણ છે . તે ડિફૉલ્ટ રૂપે અક્ષમ હોય છે, તેથી પ્રથમ આદેશ તેમને ઉમેરવા માટે જવાબદાર છે, અને બીજો આદેશ htop ઇન્સ્ટોલ કરવા માટે છે :
yum -y install epel-release
yum install htop -y
ઇન્સ્ટોલેશન પછી તરત જ, તમે એપ્લિકેશન મેનૂમાંથી અથવા ટર્મિનલમાં યોગ્ય આદેશ સાથે ઉપયોગિતા ખોલી શકો છો:
htop
પરિણામે, વપરાશકર્તા સિસ્ટમ વિશેની બધી માહિતી જોઈ શકશે:
ઉપર ડાબા ખૂણામાં પ્રોસેસર ડેટા પ્રદર્શિત થાય છે, જેમાં દરેક કોર, RAM અને સ્વેપ મેમરીનો ઉપયોગ શામેલ છે. Linux માં સ્વેપ મેમરીનો ઉપયોગ RAM ની અછતના કિસ્સામાં થાય છે, જે સિસ્ટમ સ્થિરતા સુનિશ્ચિત કરે છે. ઉપરના જમણા ખૂણામાં તમે પ્રોસેસર લોડ અને સક્રિય કાર્યોની સંખ્યા જોઈ શકો છો. મધ્ય ભાગ સૉર્ટ કરવાની ક્ષમતા સાથે સક્રિય પ્રક્રિયાઓ દર્શાવે છે. નીચેનો ભાગ હોટ કી અને કાર્યક્ષમતા વિશે માહિતી પ્રદાન કરે છે. "મદદ" વિભાગમાં પ્રોગ્રામની ક્ષમતાઓનું વિગતવાર વર્ણન છે:
સિસ્ટમનું નિદાન કરતા પહેલા, સર્વર પર કેટલા કોરો/પ્રોસેસરનો ઉપયોગ થાય છે તે બરાબર સમજવું જરૂરી છે. વપરાશકર્તા htop યુટિલિટીના ઉપરના ડાબા ખૂણામાં તેમનું મૂલ્ય શોધી શકે છે :
અથવા આદેશ ચલાવીને:
nproc
પ્રાપ્ત મૂલ્યના આધારે, માન્ય કુલ લોડની ગણતરી કરવામાં આવશે (ઉપલા જમણા ખૂણામાં લોડ સરેરાશ). અમારા કિસ્સામાં તે 2 ની બરાબર છે, જેનો અર્થ એ છે કે મહત્તમ લોડ 2.0 છે. જો કે, આનો અર્થ એ નથી કે લોડ 2.0 હેઠળ સિસ્ટમ સંપૂર્ણપણે સ્થિર થઈ જશે. આ સંખ્યા વધારે હોઈ શકે છે, પરંતુ આ કિસ્સામાં, અન્ય તમામ કાર્યો કતારમાં હશે, અને સર્વર પોતે લોડ થશે. આદર્શ મૂલ્ય 70% કરતા વધુ ન હોય તેવા લોડને માનવામાં આવે છે. ઉદાહરણ તરીકે, સિંગલ-પ્રોસેસર સર્વર પર લોડ સરેરાશ 0.7 ની અંદર હોવી જોઈએ. ઉપરોક્ત ઉદાહરણમાં સર્વરના કિસ્સામાં, એક સારો સૂચક 1.4 કરતા વધુ ન હોય તેવા મૂલ્યો હશે.
htop અથવા તેના એનાલોગનો ઉપયોગ કરીને , વપરાશકર્તાએ મુખ્ય સંસાધનોનું મૂલ્યાંકન કરવાની જરૂર છે: સરેરાશ પ્રોસેસર લોડ, RAM વપરાશ, ડિસ્ક સ્પેસ અને નેટવર્ક ઇન્ટરફેસ. જો સંસાધનો ન્યૂનતમ હોય, તો તમારે CPU વપરાશ દ્વારા પ્રક્રિયાઓને સૉર્ટ કરવાની, ઉચ્ચ-વપરાશ કરતી કામગીરી ઓળખવાની અને પછી તેમને ઑપ્ટિમાઇઝ અથવા સમાપ્ત કરવાની જરૂર છે. જો પ્રોગ્રામ બંધ કરવું અશક્ય છે અથવા ઑપ્ટિમાઇઝેશન નિષ્ફળ જાય છે, તો વધુ શક્તિશાળી ગોઠવણીવાળા સર્વર પર સ્વિચ કરવાનું વિચારવાની ભલામણ કરવામાં આવે છે.
મફત RAM તપાસી રહ્યું છે
આ વિભાગમાં, આપણે કોઈપણ સર્વરના કાર્યના એક મહત્વપૂર્ણ પાસાં પર નજીકથી નજર નાખીશું - મફત RAM નું પૂરતું સ્તર.
ટર્મિનલ દ્વારા કોઈપણ Linux સિસ્ટમ પર મફત RAM તપાસવાનો સૌથી સહેલો રસ્તો આદેશ છે:
free -m
આઉટપુટ પર આપણને મેગાબાઇટ્સમાં નીચેનો ડેટા મળે છે: કુલ, વપરાયેલ, મફત અને કેશ્ડ RAM, તેમજ સ્વેપ વોલ્યુમ:
આ સાધન ચોક્કસ સમયે સામાન્ય ડેટા મેળવવા માટે ઉપયોગી છે. ગતિશીલ RAM વપરાશ નિદાન માટે, અમે vmstat ઉપયોગિતાની ભલામણ કરીએ છીએ, જે અમને આઉટપુટ માહિતીની અપડેટ આવર્તનને ગોઠવવાની મંજૂરી આપે છે:
vmstat 1
ઉપરોક્ત ઉદાહરણમાં, ડેટા દર સેકન્ડે અપડેટ થશે. આઉટપુટ free : જેવા ફોર્મેટમાં ઉત્પન્ન થાય છે.
આ ટૂલ સામાન્ય સિસ્ટમ માહિતી પણ પ્રદાન કરે છે, પરંતુ અમારા કિસ્સામાં, ફક્ત RAM માટે જવાબદાર કૉલમ, એટલે કે મેમરી અને સ્વેપ, મહત્વપૂર્ણ છે. બધા મૂલ્યો કિલોબાઇટમાં દર્શાવેલ છે. ચાલો તેમને વધુ વિગતવાર જોઈએ:
મેમરી (RAM):
- swpd: ભૌતિક મેમરી માટે વર્ચ્યુઅલ મેમરીનું વિનિમય.
- મફત: ઉપલબ્ધ ભૌતિક મેમરી (RAM).
- બફ: ડિસ્ક લખતા પહેલા બફર તરીકે વપરાતી મેમરી.
- કેશ: ઍક્સેસ ઝડપી બનાવવા માટે કેશ તરીકે ઉપયોગમાં લેવાતી મેમરી.
સ્વેપ
- si: ઍક્સેસ ઝડપી બનાવવા માટે કેશ તરીકે ઉપયોગમાં લેવાતી મેમરી.
- so: ભૌતિક મેમરીમાંથી સ્વેપ મેમરીમાં લખાયેલ ડેટા.
અલગથી, એ હકીકતનો ઉલ્લેખ કરવો યોગ્ય છે કે ઉપયોગિતાઓ નિદાન કરતા બધા સિસ્ટમ સંસાધનો શરૂઆતમાં લોગમાંથી ડેટા લે છે. RAM ના કિસ્સામાં, વપરાશકર્તા સંબંધિત ફાઇલ ખોલીને સીધો ડેટા જોઈ શકશે:
cat /proc/meminfo
આઉટપુટ ખૂબ વ્યાપક છે, પરંતુ મેમરીનું વિશ્લેષણ કરવા માટે પ્રથમ રેકોર્ડ્સ પર ધ્યાન આપવા માટે તે પૂરતું છે:
વધુ પડતા RAM વપરાશની સમસ્યાઓ મોટાભાગે ચોક્કસ કાર્ય અથવા પ્રક્રિયા સાથે સંબંધિત હોય છે. શરૂઆતમાં, સમસ્યારૂપ પ્રક્રિયાઓને ઓળખવા માટે સામાન્ય સાધનોનો ઉપયોગ કરીને નિદાન કરવું પૂરતું હશે. ઉકેલ તરીકે, તમે ચોક્કસ એપ્લિકેશનને ઑપ્ટિમાઇઝ કરવાનું, કેશીંગ અને ડેટા કમ્પ્રેશનને સક્ષમ કરવાનું વિચારી શકો છો જો આપણે મોટી માત્રામાં માહિતી વિશે વાત કરી રહ્યા છીએ, અથવા સર્વર ગોઠવણી વધારવા વિશે વાત કરી રહ્યા છીએ.
ડિસ્ક જગ્યા નિયંત્રણ
સર્વર ડિસ્ક સ્પેસનું નિદાન તેના અન્ય સંસાધનો કરતાં ઓછું મહત્વનું નથી. નિયમ પ્રમાણે, તપાસની જરૂરિયાત વિશેના સંકેતો છે: હાલની ફાઇલો બનાવવા અથવા લખવામાં અસમર્થતા, ધીમી સિસ્ટમ કામગીરી અને વિવિધ ઇનપુટ/આઉટપુટ ભૂલો.
તપાસવાની સૌથી અનુકૂળ રીત આદેશ છે:
df -h
જવાબમાં, ટૂલ બધા માઉન્ટ થયેલ ડિસ્ક પાર્ટીશનો પર માહિતી બતાવશે:
વધુ વિગતવાર ડિરેક્ટરીઓના નિરીક્ષણ માટે તમે આ આદેશનો ઉપયોગ કરી શકો છો:
du -hs /*
આ રીતે, વપરાશકર્તા શોધી શકશે કે દરેક ડિરેક્ટરી કેટલી જગ્યા રોકે છે. સિસ્ટમ કામગીરી પુનઃસ્થાપિત કરવા માટે, તમારે ડિસ્કના પાર્ટીશનને ઑપ્ટિમાઇઝ કરવાની જરૂર પડશે જે સૌથી વધુ મેમરી વાપરે છે. કુલ રકમના 80-90% થી વધુ ખાલી જગ્યાનો ઉપયોગ કરવાની મંજૂરી ન આપવાની ભલામણ કરવામાં આવે છે; બાકીની 10-20% સ્થિર સિસ્ટમ કામગીરી માટે પૂરતી હોવી જોઈએ. જો ઑપ્ટિમાઇઝેશન શક્ય ન હોય તો ડિસ્ક સ્પેસ વધારવાની ભલામણ કરવામાં આવે છે. આ નવી ડિસ્ક ઉમેરીને અથવા હાલની ડિસ્કને વિસ્તૃત કરીને, તેમજ ક્લાઉડ સ્ટોરેજનો ઉપયોગ કરીને કરી શકાય છે. પસંદ કરેલ ઉકેલને ધ્યાનમાં લીધા વિના, ફાઇલ ખોટ ટાળવા માટે હંમેશા બેકઅપ કોપી બનાવવાની ભલામણ કરવામાં આવે છે.
નેટવર્ક ઇન્ટરફેસ તપાસ
સર્વર ડાયગ્નોસ્ટિક્સનું અંતિમ, પરંતુ ઓછું મહત્વનું પાસું નેટવર્ક ઇન્ટરફેસ તપાસવાનું છે. નેટહોગ્સ જો તમે રીઅલ ટાઇમમાં નેટવર્ક પ્રક્રિયાઓ દ્વારા કેટલો ટ્રાફિક થાય છે તે વિશે સામાન્ય માહિતી મેળવવા માંગતા હો, તો ઉપયોગિતાનો ઉપયોગ કરી શકાય છે.
સેન્ટ ઓએસ પર ઇન્સ્ટોલેશન અને લોન્ચ:
yum install nethogs
nethogs
ડેબિયન/ઉબુન્ટુ માટે:
apt-get install nethogs
nethogs
આ ટૂલ તે પ્રક્રિયાઓ બતાવશે જે હાલમાં નેટવર્ક સંસાધનોનો ઉપયોગ કરી રહી છે:
અમે ઉપયોગ કરવાની ભલામણ કરીએ છીએ ઇફ્ટોપ વધુ વિગતવાર વિશ્લેષણ માટે.
સેન્ટ ઓએસ પર ઇન્સ્ટોલેશન અને લોન્ચ:
yum install iftop
iftop
ડેબિયન/ઉબુન્ટુ માટે:
apt-get install iftop
iftop
પ્રોગ્રામ આઉટપુટ એ સક્રિય કનેક્શન્સની સૂચિ છે જે IP સરનામાં, પોર્ટ, ટ્રાન્સફર કરેલ ડેટાની માત્રા અને ટ્રાન્સફર ગતિ દર્શાવે છે. પ્રોગ્રામનો મુખ્ય ફાયદો નેટવર્ક ચેનલ લોડિંગની વિઝ્યુઅલ ડિઝાઇન છે:
સર્વર નેટવર્ક ચેનલનું નિદાન કર્યા પછી અને ઉચ્ચ ભાર સાથે સમસ્યાઓ ઓળખ્યા પછી, હોસ્ટિંગ પ્રદાતાની બાજુમાં નેટવર્ક કનેક્શન્સની બેન્ડવિડ્થ વધારવા અથવા ચોક્કસ સમસ્યારૂપ ઇન્ટરફેસની સેટિંગ્સને ઑપ્ટિમાઇઝ કરવાની ભલામણ કરવામાં આવે છે. બેકઅપ ટૂલ તરીકે, તમે નેટવર્ક પ્રવૃત્તિમાં થતા ફેરફારોને ઝડપથી ટ્રેક કરવા માટે વિવિધ મોનિટરિંગ સિસ્ટમ્સનો ઉપયોગ કરી શકો છો અને જો જરૂરી હોય તો, જરૂરિયાતો અનુસાર નેટવર્ક ઇન્ફ્રાસ્ટ્રક્ચરને નિયમિતપણે અપડેટ કરી શકો છો.
ઉપસંહાર
નિષ્કર્ષમાં, એ વાત પર ભાર મૂકી શકાય છે કે સર્વર સંસાધનોનું નિદાન એ વર્ચ્યુઅલ અને સમર્પિત સર્વર્સના અસરકારક સંચાલનનો એક અભિન્ન ભાગ છે. લેખે અમને સંપૂર્ણ સર્વર વિશ્લેષણ માટે મુખ્ય સાધનો જોવાની શક્યતા પ્રદાન કરી, અને શક્ય સમસ્યાઓના નિવારણ માટે વ્યવહારુ ભલામણો પણ આપી. નિયમિત સિસ્ટમ ડાયગ્નોસ્ટિક્સ સર્વરને સક્રિય વપરાશકર્તા ભાગીદારી વિના પણ, એકીકૃત રીતે કાર્ય કરવાની મંજૂરી આપે છે.