ትናንሽ servers በጣም በከፋ ጊዜ ማህደረ ትውስታ ያልቅባቸዋል፦ apt upgrade፣ Docker build፣ የሌሊት backup። ያለ swap የkernelኡ OOM killer አንድ processን መርጦ ያጠፋዋል፣ ብዙውን ጊዜ databaseዎን። swap ፋይል ለእነዚያ መጨመሮች የሚሄዱበት ቦታ የሚሰጥ ርካሽ የደህንነት ቀበቶ ነው። አምስት ትዕዛዞችን ይወስዳል።
1. ያለዎትን ይፈትሹ
swapon --show
free -h
swapon --show ምንም ካላሳየ እስካሁን swap የለም።
2. swap ፋይሉን ይፍጠሩ
fallocate -l 2G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
chmod 600 አስፈላጊ ነው፦ swap በማህደረ ትውስታ ውስጥ ያለ የማንኛውም ነገር ቁርጥራጮችን፣ ሚስጥሮችንም ጨምሮ፣ ሊይዝ ይችላል፣ ስለዚህ root ብቻ ሊያነበው ይገባል። fallocate በ«operation not supported» ከከሸፈ በምትኩ ddን ይጠቀሙ፦
dd if=/dev/zero of=/swapfile bs=1M count=2048 status=progress
3. ቋሚ ያድርጉት
ያለዚህ እርምጃ swap ከዳግም ማስጀመር በኋላ ይጠፋል፦
echo '/swapfile none swap sw 0 0' >> /etc/fstab
4. swappinessን ያስተካክሉ
kernelኡ RAMን እንዲመርጥ እና swapን በአብዛኛው በጫና ጊዜ እንዲጠቀም ይንገሩት፦
echo 'vm.swappiness=10' > /etc/sysctl.d/99-swap.conf
sysctl --system
5. ያረጋግጡ
swapon --show
free -h
2 GB swap መሳሪያ ማየት አለብዎት፣ cat /proc/sys/vm/swappiness ደግሞ 10ን ማተም አለበት።
ምን ያህል ትልቅ መሆን አለበት?
- 1–2 GB RAM ያለው server፦ 1–2 GB swap።
- 4 GB እና ከዚያ በላይ፦ እንደ የደህንነት መረብ 1–2 GB አሁንም በቂ ነው።
የswapን መጠን «የRAM እጥፍ» አያድርጉት። በserver ላይ swap የሚኖረው አጭር መጨመሮችን ለመምጠጥ እንጂ በማህደረ ትውስታ የማይገጥሙ ስራዎችን ለማሄድ አይደለም።
swap መልሱ ሳይሆን ሲቀር
ለጥቂት ቀናት ይከታተሉት፦
vmstat 5
si እና so ዓምዶች በሰከንድ ወደ swap የገቡ እና የወጡ ገጾችን ያሳያሉ። አልፎ አልፎ የሚኖር እንቅስቃሴ ችግር የለውም። ያለማቋረጥ ከዜሮ በላይ የሆኑ እሴቶች serverሩ የማህደረ ትውስታ እጥረት እንዳለበት እና ሁሉም ነገር diskን እየጠበቀ እንደሆነ ያሳያሉ። ያኔ መፍትሄው ተጨማሪ RAM ነው፤ VPS ምን ያህል RAM ያስፈልገዋልን ይመልከቱ። በEQVPS ሳይጭኑ እንደገና ወደ ትልቅ ዕቅድ መሄድ ይችላሉ፤ ውሂብዎ ባለበት ይቆያል።
አስተያየቶች
እስካሁን አስተያየቶች የሉም። መጀመሪያ ይሁኑ።