SSD Nodes Learn 🎉 VPS $5.50/மாதம் முதல்
கல்வி வழிகாட்டிகள் Matt Connorஆல் Matt Connor · புதுப்பிக்கப்பட்டது 2026-08-14

குறைந்த விலை VPS சலுகைகளை ஆய்வு செய்வது எப்படி?

குறைந்த விலை VPS விளம்பரங்களில் உள்ள vCPU oversell, unlimited bandwidth நிபந்தனைகள் மற்றும் மறைமுக புதுப்பித்தல் கட்டணங்களை கண்டறியும் முறையை இந்த வழிகாட்டி விளக்குகிறது.

குறைந்த விலை VPS சலுகைகளில் விடுபடும் தகவல்கள்

குறைந்த விலை VPS சலுகைகளைத் தலைகீழாக வாசியுங்கள், ஏனெனில் அந்தப் பக்கத்தில் உள்ள விலையை விட மற்ற தகவல்களே முக்கியமானவை. அந்த server தரம் வாய்ந்ததா என்பதைத் தீர்மானிப்பது விளம்பரத்தில் குறிப்பிடப்படாத அம்சங்களே: vCPU எண்ணிக்கைக்குப் பின்னால் உள்ள oversell விகிதம், "unlimited" என்ற சொல்லுக்குப் பின்னால் உள்ள fair use நிபந்தனை, முதல் காலத்திற்குப் பிறகு வரும் புதுப்பித்தல் விலை, மற்றும் backups மற்றும் IPv4 முகவரிக்குத் தனியாகக் கட்டணம் வசூலிக்கப்படுகிறதா என்பது போன்றவை. இந்த வழிகாட்டி ஒரு சலுகையை வரி வரியாக ஆய்வு செய்கிறது, மேலும் பணத்தைத் திரும்பப் பெறும் காலத்திற்குள் நீங்கள் அந்த server-ல் செய்ய வேண்டிய ஒரு ஏற்புத்திறன் சோதனையை (acceptance test) வழங்குகிறது.

குறைந்த விலை என்பது ஏமாற்று வேலை என்று இதைக் கூறவில்லை. பழைய வன்பொருள் (hardware), அதிகப்படியான virtual machine-களை ஒரே server-ல் அடுக்குதல், சுய-சேவை ஆதரவு (self-service support) மற்றும் குறைவான platform redundancy ஆகியவற்றின் மூலமே குறைந்த விலை சாத்தியமாகிறது. உங்கள் பயனர்கள் அதைக் கண்டறிவதற்கு முன்பே, நீங்கள் என்னென்ன சமரசங்களை ஏற்றுக்கொண்டீர்கள் என்பதைத் தெரிந்துகொள்வதே உங்கள் பணி. கீழே உள்ள அனைத்தும் Ubuntu 24.04 மற்றும் ஆகஸ்ட் 2026-ல் கிடைக்கக்கூடிய packages-களைக் கொண்டு இயங்குகின்றன.

vCPU என்பது ஒரு core அல்ல

vCPU என்பது சிலிக்கான் துண்டு அல்ல, அது ஒரு scheduling slot ஆகும். KVM (kernel-based virtual machine)-ல் ஒவ்வொரு vCPU-வும் host-ல் ஒரு thread ஆகச் செயல்படும். அதன் முறை வரும்போது, host scheduler அந்த thread-ஐ ஒரு physical core-ல் இயக்கும். ஒரு host, ஒரு physical core-க்கு நான்கு vCPU-க்களை விற்க முடியும்; ஆனாலும் ஒவ்வொரு guest-ம் nproc-ல் அதன் முழு எண்ணிக்கையையே காட்டும். பட்டியலில் உள்ள அந்த எண், நீங்கள் கேட்கக்கூடிய அதிகபட்ச அளவே தவிர, உங்களுக்காக ஒதுக்கப்பட்ட அளவைக் குறிப்பதில்லை.

Oversell ratio என்பது ஒரு physical core-க்கு host விற்கும் vCPU-க்களின் எண்ணிக்கை ஆகும். 1:1 விகிதத்தில், அந்த core உங்களுடையது மட்டுமே. மலிவான திட்டங்களில் இந்த விகிதம் அதிகமாக இருக்கும். இந்த விகிதம் பெரும்பாலும் வெளியிடப்படுவதில்லை என்பதால், "dedicated core" அல்லது "dedicated vCPU" என்று குறிப்பிடப்படாத எந்தவொரு திட்டத்தையும் shared என்று கருதவும். பெரும்பாலான நேரங்களில் server-கள் சும்மா இருப்பதால், பெரும்பாலான பணிகளுக்கு shared வசதி போதுமானது. மற்றவர்களின் busy hour-ம் உங்கள் busy hour-ம் ஒன்றாக இருக்கும்போதுதான் சிக்கல் ஏற்படும்.

இதன் தாக்கத்தை guest-க்குள் இருந்தே நீங்கள் அளவிடலாம். உங்கள் vCPU இயங்கத் தயாராக இருக்கும்போது, host அந்த physical core-ஐ மற்றொரு guest-க்கு வழங்கினால், அந்த காத்திருப்பு நேரம் steal time என்று கணக்கிடப்படும்: இது vmstat மற்றும் top-ல் உள்ள %st-ல் st column-ஆகக் காட்டப்படும். Steal time என்பது ஒரு noisy neighbour உங்கள் metrics-ல் எப்படித் தெரிகிறார் என்பதைக் குறிக்கும், இதுவே இந்த வழிகாட்டியில் மிக முக்கியமான எண், ஏனெனில் ஒரு பட்டியலால் இதை மறைக்க முடியாது.

Dedicated core இருந்தாலும், பிற வழிகளில் அது shared ஆகத்தான் இருக்கும். Memory bandwidth, last level cache மற்றும் storage path ஆகியவை முழு host-க்கும் பொதுவானவை. "Dedicated vCPU" என்பது மாறுபாட்டிற்கான மிகப்பெரிய காரணத்தை நீக்குகிறது, ஆனால் முழுமையாக நீக்குவதில்லை.

lscpu மூலம் CPU model-ஐயும் சரிபார்க்கவும். இரண்டு திட்டங்கள் "4 vCPU" என்று இருந்தாலும், அவற்றின் single thread வேகம் இரண்டு மடங்கு வித்தியாசப்படலாம்; ஏனெனில் ஒரு host பல CPU தலைமுறைகள் பழையதாக இருக்கலாம். Build agent-க்கு குறைந்த விலையில் பழைய சிலிக்கான் ஒரு நியாயமான தேர்வு, ஆனால் checkout page-க்கு அது மோசமான தேர்வாகும்.

"Unlimited bandwidth" என்பது குறைந்தது நான்கு வெவ்வேறு தயாரிப்புகளைக் குறிக்கும்

Network traffic நான்கு வழிகளில் விவரிக்கப்படுகிறது, அவை ஒன்றிற்குப் பதிலாக மற்றொன்றைப் பயன்படுத்த முடியாது.

  • Metered allowance: இதில் ஒரு குறிப்பிட்ட அளவு, உதாரணமாக "மாதத்திற்கு 2 TB" என்று கொடுக்கப்பட்டிருக்கும். அந்த அளவைத் தாண்டிய பிறகு என்ன நடக்கும் என்பது முக்கியம்: கூடுதல் TB-க்கு கட்டணம் வசூலிக்கப்படுமா அல்லது மாதம் முடியும் வரை வேகம் மிகக் குறைவாகக் குறைக்கப்படுமா? இதைத் தெரிந்துகொள்வது அவசியம்.
  • Fair use clause கொண்ட unmetered திட்டம்: இதில் traffic கணக்கிடப்படாது, ஆனால் acceptable use policy-ல் வரம்புகள் எண்களுக்குப் பதிலாக வார்த்தைகளால் குறிப்பிடப்பட்டிருக்கும். அந்த ஆவணத்தில் "fair use", "sustained", "excessive" மற்றும் "abuse" போன்ற வார்த்தைகளைத் தேடிப் பார்க்கவும்.
  • Port speed cap: 100 Mbit/s port என்பது இயற்பியல் ரீதியான வரம்பு. traffic policy என்ன சொன்னாலும், இந்த வேகம் மாறாது.
  • மேற்கூறிய இரண்டின் கலவை: குறைந்த வேகமுள்ள port-ல் unmetered traffic. மலிவான திட்டங்களில் இதுவே பொதுவானது. port speed-ஐச் சரியாகச் சரிபார்த்தால், இது ஒரு நேர்மையான சலுகைதான்.
ChartTraffic ceiling set by port speed alone, 30 days at full rate
The data behind this chart
[
  {
    "label": "100 Mbit/s",
    "tb_ceiling_30d": 32,
    "hours_per_tb": 22.2
  },
  {
    "label": "200 Mbit/s",
    "tb_ceiling_30d": 65,
    "hours_per_tb": 11.1
  },
  {
    "label": "500 Mbit/s",
    "tb_ceiling_30d": 162,
    "hours_per_tb": 4.4
  },
  {
    "label": "1 Gbit/s",
    "tb_ceiling_30d": 324,
    "hours_per_tb": 2.2
  }
]

Port speed என்பது ஒரு கடினமான உச்சவரம்பு, இதன் கணக்கீடு எளிதானது. 100 Mbit/s என்பது வினாடிக்கு 12.5 megabytes ஆகும். எனவே, 30 நாட்களுக்கு முழு வேகத்தில் இயங்கினால் சுமார் 32 TB தரவு பரிமாற்றம் செய்யப்படும். அதே 30 நாட்களுக்கு 1 Gbit/s port-ல் 324 TB பரிமாற்றம் செய்யப்படும். இங்கே TB என்பது 10^12 bytes-ஐக் குறிக்கும், இதுவே hosting நிறுவனங்கள் கணக்கிடும் அலகு. இது ஒரு கணிதக் கணக்கீடு மட்டுமே, நிஜ உலகில் எந்த server-ம் ஒரு மாதம் முழுவதும் முழு வேகத்தில் இயங்காது.

இரண்டாவது நெடுவரிசைதான் திட்டங்களை மாற்றக்கூடியது. 100 Mbit/s port-ல் ஒரு terabyte தரவை நகர்த்த சுமார் 22.2 மணிநேரம் ஆகும், gigabit port-ல் 2.2 மணிநேரம் ஆகும். உங்கள் recovery plan "backup-ஐத் தரவிறக்கம் செய்து மீண்டும் தொடங்குவது" என்றால், இந்த நேரமே உங்கள் recovery time ஆகும்.

இந்த விவரக்குறிப்பில் மேலும் இரண்டு நுணுக்கங்கள் உள்ளன. "1 Gbit/s shared" என்றால், அந்த port மற்ற பயனர்களுடன் பகிரப்படுகிறது என்று பொருள். எனவே, மேலே குறிப்பிட்ட உச்சவரம்பு ஒரு வாக்குறுதி அல்ல, அது ஒரு சிறந்த சூழலில் மட்டுமே சாத்தியம். மேலும், சில நிறுவனங்கள் மொத்த அளவை கணக்கிடுவதற்குப் பதிலாக, 95th percentile அடிப்படையில் traffic-க்குக் கட்டணம் வசூலிக்கின்றன. இது சீரான சுமை கொண்ட traffic-க்கு, அதிக ஏற்ற இறக்கம் கொண்ட traffic-ஐ விடக் குறைந்த கட்டணத்தையே தரும்.

திட்டத்தில் என்ன சொல்லப்பட்டிருந்தாலும், உங்கள் பயன்பாட்டை நீங்களே அளவிடுங்கள். vnstat interface counters-ஐப் படித்து வரலாற்றைப் பராமரிக்கிறது.

sudo apt install -y vnstat
sudo systemctl enable --now vnstat
vnstat -d
vnstat -m

Install செய்தவுடன், vnstat Not enough data available yet. என்று காட்டும், ஏனெனில் அதன் database-ல் தரவுகள் இருக்காது. அடுத்த நாள் சரிபார்க்கவும், vnstat -m கட்டளை நீங்கள் செலுத்தும் கட்டணத்திற்கு ஏற்ப மாதந்திர மொத்தப் பயன்பாட்டைக் காட்டும்.

NVMe குறித்த கூற்று உண்மையானதா, அதை எவ்வாறு சரிபார்ப்பது?

lsblk -d -o NAME,ROTA,SIZE,MODEL

ROTA-ன் மதிப்பு 0 எனில், அந்த சாதனம் சுழலும் தன்மை கொண்டதல்ல (non-rotational) என்று guest-க்குத் தெரிவிக்கப்பட்டுள்ளது என்று பொருள். இந்த மதிப்பு hypervisor-லிருந்து வருவதால், அது வன்பொருளின் உண்மையான தன்மையை விட, host எதை வெளிப்படுத்துகிறது என்பதையே குறிக்கிறது. /dev/vda போன்ற virtio disk-களுக்கு MODEL நெடுவரிசை பொதுவாக காலியாக இருக்கும், SCSI மூலம் இணைக்கப்பட்டவற்றுக்கு அது பொதுவான QEMU HARDDISK மதிப்பைக் காட்டும். நீங்கள் பார்ப்பது ஒரு virtual disk என்பதால், அதன் label எதையும் நிரூபிக்காது.

சரிபார்க்க வேண்டிய முக்கியமான அம்சம் latency ஆகும். local NVMe மற்றும் network attached volume ஆகியவற்றுக்கு இடையேதான் உண்மையான வேறுபாடு உள்ளது. ஒரு network volume அதிக sequential throughput-ஐக் காட்டினாலும், அது மெதுவாகச் செயல்படலாம். ஏனெனில், throughput பல கோரிக்கைகளை ஒரே நேரத்தில் வைத்து அளவிடப்படுகிறது, ஆனால் database ஒரு நேரத்தில் ஒரு சிறிய write-க்காகக் காத்திருக்கும். Latency-ஐ அளவிட queue depth 1-ஐயும், IOPS (input/output operations per second)-ஐ அளவிட அதிக queue depth-ஐயும் பயன்படுத்தவும்.

sudo apt install -y fio
fio --name=lat --filename=fiotest --size=1G --direct=1 --ioengine=libaio --rw=randread --bs=4k --iodepth=1 --numjobs=1 --runtime=60 --time_based --group_reporting
fio --name=iops --filename=fiotest --size=1G --direct=1 --ioengine=libaio --rw=randread --bs=4k --iodepth=32 --numjobs=1 --runtime=60 --time_based --group_reporting
rm -f fiotest

clat percentiles தொகுப்பைப் படிக்கவும், குறிப்பாக 99.00-வது வரியைக் கவனிக்கவும். இது உங்கள் கோரிக்கைகளில் மிக மெதுவான ஒரு சதவீதத்தினர் அனுபவிக்கும் completion latency ஆகும்; இதுவே பயனர் உணரும் தடையாகும் (stall). ஒரு தோராயமான வழிகாட்டியாக, local NVMe queue depth 1-ல் நூற்றுக்கணக்கான microseconds-ல் பதிலளிக்கும், ஆனால் network attached volume milliseconds-ல் பதிலளிக்கும். வெளியிடப்பட்ட எந்தவொரு ஒற்றை மதிப்பையும் நம்புவதை விட, உங்கள் சொந்த இரண்டு சோதனைகளை ஒப்பிட்டுப் பாருங்கள். ஒரு நாளைக்கு மூன்று முறை இந்தச் சோதனையைச் செய்யுங்கள், ஏனெனில் மற்ற பயனர்களுடன் பகிரப்படும் வட்டு 03:00 மற்றும் 20:00 நேரங்களில் வெவ்வேறு விதமாகச் செயல்படும்.

fio முதலில் 1 GB கோப்பை உருவாக்கும், எனவே வட்டில் போதுமான இடவசதி இருப்பதை உறுதி செய்யவும். மேலும், இந்தச் சோதனை உங்கள் plan-ல் அனுமதிக்கப்பட்ட IOPS அளவைப் பயன்படுத்தும் என்பதை நினைவில் கொள்க. உங்களுக்கு விரைவான வாசிப்பு மட்டுமே தேவைப்பட்டால், ioping -c 20 . உங்களுக்கு ஒரே வரியில் latency-ஐத் தரும். ஒரு benchmark-ஐ மீண்டும் செய்ய முடிந்தால் மட்டுமே அதற்கு மதிப்பு உண்டு, எனவே பயன்படுத்திய exact command lines மற்றும் தேதியுடன் கூடிய output-ஐச் சேமித்து வைக்கவும்.

எவை உள்ளடக்கப்பட்டுள்ளன, எவற்றிற்கு கூடுதல் கட்டணம் வசூலிக்கப்படுகிறது

  • IPv4. பொதுவாக ஒரு முகவரி உள்ளடக்கப்பட்டுள்ளது. சில மலிவான திட்டங்களில் NAT (network address translation)-க்கு பின்னால் பகிரப்பட்ட முகவரி வழங்கப்படுகிறது, அதில் சில ports மட்டுமே forward செய்யப்பட்டிருக்கும். இதன் பொருள், உங்களால் port 443-ல் எதையும் இயக்க முடியாது. ip -4 addr show scope global மற்றும் curl -4 https://icanhazip.com மூலம் சரிபார்க்கவும். இரண்டு வெவ்வேறு பதில்கள் கிடைத்தால், நீங்கள் NAT-க்கு பின்னால் இருக்கிறீர்கள் என்று அர்த்தம்.
  • IPv6. ஒரு routed /64 உங்களுக்கு containers-க்கும், வெளியிலிருந்து அணுகப்பட வேண்டிய எதற்கும் தேவையான முகவரிகளை வழங்குகிறது. ஒரு ஒற்றை /128 outbound traffic-க்கு மட்டுமே உதவும், மற்றவற்றுக்கு போதாது.
  • Backups. தானியங்கி backups பொதுவாக கட்டணத்துடன் கூடிய கூடுதல் சேவையாகும். Snapshots பெரும்பாலும் இலவசம், ஆனால் ஒரு snapshot அது நகலெடுக்கும் அதே disk உள்கட்டமைப்பிலேயே இருக்கும். எனவே, இது உங்கள் சொந்த தவறுகளிலிருந்து உங்களைப் பாதுகாக்குமே தவிர, host-ஐ இழப்பதிலிருந்து பாதுகாக்காது. திட்டத்தில் என்ன இருந்தாலும், ஒரு நகலை server-க்கு வெளியே வைத்திருக்கவும்.
  • DDoS கையாளுதல். பல host-கள் volumetric attack (distributed denial of service) ஏற்படும்போது, உங்கள் IP முகவரியை ஒரு குறிப்பிட்ட காலத்திற்கு null route செய்துவிடும். இதனால் server ஆரோக்கியமாகவே இருக்கும், ஆனால் இணையத்திலிருந்து அதை அணுக முடியாது. இதற்கான trigger threshold என்ன மற்றும் null route எவ்வளவு காலம் நீடிக்கும் என்று கேட்டுத் தெரிந்துகொள்ளவும்.
  • Support வரம்பு. நிர்வகிக்கப்படாத (unmanaged) திட்டத்தில் நீங்களே system administrator, மற்றும் host-ன் பொறுப்பு hypervisor மற்றும் network-உடன் முடிந்துவிடுகிறது. ஒரே மாதிரியான விவரக்குறிப்புகளைக் கொண்ட இரண்டு திட்டங்களுக்கு இடையே உள்ள மிகப்பெரிய உண்மையான செலவு வேறுபாடு இதுதான்.
  • உரிமங்கள் மற்றும் panels. ஒரு control panel, வணிக ரீதியான operating system அல்லது mail add-on ஆகியவற்றிற்கு, server-ன் மாதக் கட்டணத்தை விட அதிக செலவாகலாம்.

நீங்கள் எந்த வகையான virtualization-ஐ வாங்குகிறீர்கள்?

systemd-detect-virt

kvm அல்லது qemu என்பது முழுமையான virtualization-ஐக் குறிக்கும்: இதில் உங்கள் சொந்த kernel மற்றும் நீங்கள் தேர்வு செய்யும் modules-ஐப் பயன்படுத்தலாம். lxc, lxc-libvirt அல்லது openvz என்பது host kernel-ஐப் பகிர்ந்து கொள்ளும் container-ஐக் குறிக்கும். none என்பது bare metal-ஐக் குறிக்கும்.

shared kernel-ல் இந்த வேறுபாடு முக்கியமானது. sudo modprobe wireguard தோல்வியடையும், மற்றும் ip link add dev wg0 type wireguard ஆனது RTNETLINK answers: Operation not supported-ஐத் தரும், ஏனெனில் host ஏற்றாத kernel module-ஐ ஒரு container-ஆல் ஏற்ற முடியாது. lxcfs இல்லாதபோது free -h ஆனது உங்கள் memory-க்கு பதிலாக host memory-ஐக் காட்டக்கூடும், இதனால் உங்கள் monitoring தரவுகள் உங்கள் server-ஐப் பற்றியதாக இருக்காது. Swap பெரும்பாலும் பிற container-களுடன் பகிரப்படுகிறது, மேலும் உங்கள் VPS-க்குள் virtual machines-ஐ இயக்குவது சாத்தியமில்லை. Container திட்டங்கள் மலிவானவை என்பதற்கு ஒரு காரணம் உண்டு, ஒரு static site அல்லது சிறிய application-க்கு அவை சரியான தேர்வாகும்.

புதுப்பித்தல் கட்டணம் எவ்வளவு?

விளம்பரப்படுத்தப்படும் விலை பெரும்பாலும் முதல் காலத்திற்கு மட்டுமே பொருந்தும். ஆர்டர் பக்கத்தில் "renews at" என்ற சொற்களையும், தள்ளுபடியுடன் இணைக்கப்பட்டுள்ள கால அளவையும் கவனிக்கவும். ஓராண்டுக்கு மட்டும் நீடிக்கும் தள்ளுபடியும், திட்டத்தின் வாழ்நாள் முழுவதும் நீடிக்கும் தள்ளுபடியும் ஒரே முதல் விலைப்பட்டியலின் கீழ் வரும் வெவ்வேறு தயாரிப்புகள் ஆகும்.

பணத்தைத் திரும்பப் பெறும் (refund) விதிமுறைகளையும் அதே கவனத்துடன் படிக்கவும். பணத்தைத் திரும்பப் பெறும் கால அவகாசம் எவ்வளவு காலம் நீடிக்கிறது, அது ஆர்டர் செய்த நாளிலிருந்து தொடங்குகிறதா அல்லது provisioning செய்யப்பட்ட நாளிலிருந்து தொடங்குகிறதா, கூடுதல் IP addresses போன்ற add-ons-களுக்குப் பணம் திரும்பக் கிடைக்குமா, மற்றும் ஆண்டு சந்தா முன்கூட்டியே செலுத்தப்பட்டிருந்தால் அது விகிதாச்சார அடிப்படையில் (pro rata) திரும்பக் கிடைக்குமா என்பதைக் கவனிக்கவும். புதுப்பித்தல் தேதிக்கு ஒரு வாரத்திற்கு முன்பே உங்கள் காலெண்டரில் நினைவூட்டலைச் சேர்க்கவும், ஏனெனில் விலைப்பட்டியல் வருவதற்கு முன்பே வெளியேறுவதே சிக்கனமான வழியாகும்.

பிறகு மாறுவதும் இலவசமானது அல்ல. சில நூறு gigabytes தரவை நகர்த்துவது, configuration-ஐ மீண்டும் உருவாக்குவது, DNS (domain name system) time to live மதிப்புகள் முடியும் வரை காத்திருப்பது மற்றும் ஒரு mail server-க்கு IP reputation-ஐ மீண்டும் கட்டமைப்பது என இவை அனைத்தும் சேர்ந்து ஒரு முழு வார இறுதியையே எடுத்துக்கொள்ளும். ஒரு சேமிப்பு கவர்ச்சிகரமாகத் தோன்றும்போது, அந்த வார இறுதியின் உழைப்பையும் கணக்கில் கொள்ளவும். ஒரு VPS-ன் ஓராண்டுக்கான உண்மையான செலவு என்பதுதான் நீங்கள் ஒப்பிட வேண்டிய தொகையே தவிர, முதல் மாதக் கட்டணம் அல்ல.

முப்பது நிமிட ஏற்புத்திறன் சோதனை (Acceptance test)

எந்தவொரு தரவையும் இடமாற்றம் செய்வதற்கு முன்பும், பணத்தைத் திரும்பப் பெறும் காலக்கெடு முடிவதற்கு முன்பும் புதிய server-ல் இதைச் செய்யவும். முதலில் பாதுகாப்பை உறுதிப்படுத்தவும்: புதிய VPS-ல் முதல் பத்து நிமிடங்கள் என்ற பகுதி user account, keys மற்றும் firewall அமைப்புகளை விளக்குகிறது. அதன் பிறகு தேவையான கருவிகளை நிறுவவும்.

sudo apt update
sudo apt install -y sysbench fio ioping sysstat stress-ng vnstat mtr-tiny curl

Check 1: அவர்கள் உண்மையில் எனக்கு என்ன வழங்கியுள்ளனர்?

systemd-detect-virt
nproc
lscpu | grep -E 'Model name|MHz|Hypervisor'
free -h
lsblk -d -o NAME,ROTA,SIZE,MODEL
ip -4 addr show scope global
curl -4 -s https://icanhazip.com

இதில் virtualization வகை, CPU மாதிரி மற்றும் நீங்கள் வாங்கிய திட்டத்திற்கு இணையான memory அளவு ஆகியவற்றை நீங்கள் பார்க்க வேண்டும். free -h-ல் நீங்கள் வாங்கியதை விட மிக அதிகமான RAM காட்டப்பட்டால், அது lxcfs இல்லாத ஒரு container-ஆக இருக்கலாம், அது கூடுதல் வசதி அல்ல. curl-ல் உள்ள ஒரு public address, ip -4 addr-ல் காட்டப்படவில்லை என்றால், அந்த IPv4 address பகிரப்பட்டதாக (shared) உள்ளது என்று பொருள்.

Check 2: ஒரு thread-ன் வேகம் என்ன, சுமையின் போது எவ்வளவு steal உள்ளது?

sysbench cpu --cpu-max-prime=20000 --threads=1 run

events per second வரியைப் பதிவு செய்யவும். ஒரு பக்கத்தின் rendering வேகம் மற்றும் build நேரம் ஆகியவற்றை single thread வேகம் தீர்மானிக்கிறது; மலிவான திட்டங்களில் இதுவே முக்கிய வேறுபாடாக இருக்கும். இப்போது ஒவ்வொரு vCPU-விலும் சுமையை ஏற்றி, scheduler உங்களுக்கு என்ன வழங்குகிறது என்பதைக் கவனிக்கவும்.

stress-ng --cpu 0 --timeout 300s &
vmstat 1 30
mpstat -P ALL 1 10

--cpu 0 ஒவ்வொரு online CPU-விற்கும் ஒரு worker-ஐத் தொடங்கும். vmstat-ல் உள்ள st நெடுவரிசையையும், mpstat-ல் உள்ள %steal-ஐயும் கவனிக்கவும். பகிரப்பட்ட திட்டங்களில் எப்போதாவது ஒற்றை இலக்க steal இருப்பது இயல்பானது. Steal பல நிமிடங்கள் இரட்டை இலக்கத்தில் இருந்தால், physical cores அதிகப்படியாகப் பயன்படுத்தப்படுகின்றன என்று பொருள்; அதாவது உங்கள் பணி மற்றொரு வாடிக்கையாளரின் பணிக்கு பின்னால் வரிசையில் நிற்கிறது. சுமை இருக்கும்போது மீண்டும் sysbench-ஐ இயக்கவும்: single thread score குறைந்தால், உங்கள் vCPU-க்கள் ஒன்றுடன் ஒன்று போட்டியிடுகின்றன என்று பொருள்; இவை பெரும்பாலும் தனித்தனி cores அல்ல, ஒரே core-ன் sibling threads ஆகும். Steal பூஜ்ஜியமாக இருந்து, score குறைவாக இருந்தால், host ஒரு CPU வரம்பை (cap) விதித்துள்ளது என்று பொருள்; இதை guest-க்குள் இருந்து நேரடியாகப் பார்க்க முடியாது.

Check 3: queue depth 1-ல் வட்டு (disk) எவ்வாறு செயல்படுகிறது?

NVMe பகுதியில் உள்ள இரண்டு fio கட்டளைகளை இயக்கி, இரண்டின் முடிவுகளையும் சேமிக்கவும்: queue depth 1-ல் 99th percentile latency மற்றும் depth 32-ல் IOPS. பிறகு எழுதும் வேகத்தைச் (writes) சரிபார்க்கவும், ஏனெனில் பல volumes அந்தத் திசையில் மிக மெதுவாகச் செயல்படும்.

fio --name=wlat --filename=fiotest --size=1G --direct=1 --ioengine=libaio --rw=randwrite --bs=4k --iodepth=1 --numjobs=1 --runtime=30 --time_based --group_reporting
rm -f fiotest

dd sequential அளவு என்பது விளம்பரங்களில் காட்டப்படும் ஒரு எண், ஆனால் இது மிகவும் பயனற்றது. ஏனெனில், database அல்லது பிஸியான web application-கள் sequential streaming-ஐச் செய்வதில்லை. ஒப்பீட்டிற்காக மட்டும் இதைச் சேகரிக்கவும். Latency-ஐ அடிப்படையாகக் கொண்டு முடிவெடுக்கவும்.

Check 4: உங்கள் பயனர்கள் இருக்கும் இடத்திலிருந்து network எப்படி உள்ளது?

முதலில் VPS-க்கு ஒரு பெரிய கோப்பைப் பதிவிறக்கவும்.

curl -o /dev/null -w 'in: %{speed_download} bytes/s\n' https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.6.tar.xz

இது உங்கள் server-க்கு வரும் ஒரு பாதையை மட்டுமே சோதிக்கிறது. பயனர்கள் பயன்படுத்தும் பாதைதான் முக்கியமானது, எனவே ஒரு கோப்பை server-ல் வைத்து, பயனர்களுக்கு அருகில் உள்ள ஒரு machine-லிருந்து அதைப் பதிவிறக்கவும்.

fallocate -l 100M /var/tmp/100mb.bin
python3 -m http.server 8080 --directory /var/tmp

பிறகு, உங்கள் பயனர்களுக்கு அருகில் உள்ள ஒரு laptop அல்லது server-லிருந்து:

curl -o /dev/null -w 'down: %{speed_download} bytes/s\n' http://YOUR_SERVER_IP:8080/100mb.bin
mtr --report --report-cycles 50 YOUR_SERVER_IP

இதைச் செய்யும்போது firewall-ல் Port 8080 திறந்திருக்க வேண்டும். சோதனையை முடித்ததும் அதை மூடிவிட்டு, கோப்பை நீக்கவும், Ctrl+C மூலம் Python server-ஐ நிறுத்தவும். mtr வெளியீட்டில், கடைசி வரியில் உள்ள loss நெடுவரிசையைப் பார்க்கவும். இடையில் உள்ள ஒரு hop-ல் loss இருந்து, இலக்கில் (destination) இல்லையென்றால் அது இயல்பானது; ஏனெனில் routers ICMP (internet control message protocol) பதில்களுக்குக் குறைந்த முன்னுரிமை அளிக்கின்றன, இது உங்கள் traffic-ல் ஏற்படும் இழப்பு அல்ல. கடைசி வரியில் உள்ள loss மட்டுமே உண்மையானது.

பயனர்களின் உச்சகட்ட பயன்பாட்டு நேரத்தில் (peak hour) இந்த network சோதனையை மீண்டும் செய்யவும். அதிகாலை 02:00 மணிக்குச் செய்யப்படும் சோதனை அமைதியான network-ஐ மட்டுமே காட்டும்.

நான்கு முடிவுகளையும் தேதியுடன் ஒரு கோப்பில் சேமித்து, ஒரு மாதம் கழித்து மீண்டும் சோதிக்கவும். முதல் நாளில் சரியாக இருந்து, ஆறாவது வாரத்தில் வேகம் குறைந்தால், அந்த host-ன் கொள்ளளவு நிரம்பிவிட்டது என்று பொருள். முதல் நாள் தரவுகள் இருந்தால் மட்டுமே உங்களால் இதை உறுதிப்படுத்த முடியும், இல்லையெனில் நீங்கள் யூகிக்க மட்டுமே முடியும்.

குறைந்த விலை VPS எப்போது சரியான தேர்வாகும்

குறைந்த விலை என்பது சில உண்மையான வசதிகளைப் பெற்றுத் தருகிறது, அதே சமயம் சில இழப்புகளையும் ஏற்படுத்துகிறது. பழைய CPUs, அதிகப்படியான oversell விகிதம், மெதுவான network storage, சுய-சேவை ஆதரவு (self-service support) மற்றும் குறைவான redundancy ஆகியவையே விலையைக் குறைக்கின்றன. உங்கள் தேவைக்கு ஏற்ப இவற்றைத் தேர்வு செய்யவும்.

Development box, CI runner, VPN endpoint, monitoring node, backup target அல்லது static site போன்றவற்றுக்குக் குறைந்த விலை VPS சரியான தேர்வாகும். இவை அனைத்திலும் ஒரு நிமிடம் வேகம் குறைவாக இருந்தாலும் பெரிய பாதிப்பு ஏற்படாது. ஆனால், latency முக்கியமாக இருக்கும் இடங்களில் குறைந்த விலை VPS-ஐத் தேர்வு செய்வது தவறான முடிவாகும்: ஒரு checkout பக்கம், interactive API, game server அல்லது மற்றொரு service சார்ந்திருக்கும் database போன்றவற்றுக்கு இது பொருந்தாது. மேலே உள்ள சோதனை நீங்கள் வாங்கியது எந்த வகை என்பதைத் தெரிவிக்கும்; மேலும், எந்தச் செலவும் இல்லாதபோதே இந்த முடிவை எடுக்க இது உதவும்.

FAQ

மலிவான VPS சலுகைகளில் vCPU என்பதன் பொருள் என்ன?

vCPU என்பது உங்கள் guest-க்கு வழங்கப்படும் ஒரு virtual processor ஆகும். host scheduler-ஆல் ஒரு physical core-ல் இயக்கப்படும் thread-க்கு இது இணையாகும். இது வன்பொருள் ஒதுக்கீடு அல்ல, மாறாக CPU நேரத்தைப் பெறுவதற்கான அனுமதி மட்டுமே. விற்பனை விவரத்தில் "dedicated core" அல்லது "dedicated vCPU" என்று குறிப்பிடப்பட்டிருந்தால் ஒழிய, இது பகிரப்பட்ட வளமே. host-கள் தங்களிடம் உள்ள core-களை விட அதிக vCPU-களை விற்பனை செய்கின்றன. இந்த விகிதம் பெரும்பாலும் வெளியிடப்படுவதில்லை, எனவே நீங்களே அளவிட வேண்டும். stress-ng --cpu 0 --timeout 300s-ஐ இயக்கி, vmstat 1-ல் உள்ள st நெடுவரிசையைக் கவனிக்கவும். Steal மதிப்பு இரண்டு இலக்கங்களில் இருந்தால், பிற guest-கள் பயன்படுத்தும் core-களுக்காக நீங்கள் காத்திருக்கிறீர்கள் என்று பொருள்.

"Unlimited bandwidth" என்பது உண்மையிலேயே வரம்பற்றதா?

இல்லை. இதற்கான வரம்பு பெரும்பாலும் திட்ட விளக்கத்திற்கு வெளியே இரண்டு இடங்களில் இருக்கும். Acceptable use policy-ல் "fair use" வரம்பு சொற்களால் குறிப்பிடப்பட்டிருக்கும், மேலும் port speed என்பது தரவு பரிமாற்றத்தின் உச்ச வரம்பை நிர்ணயிக்கும். 100 Mbit/s port மூலம் 30 நாட்களில் அதிகபட்சமாக சுமார் 32 TB தரவை மட்டுமே பரிமாற முடியும். எனவே, port speed-ஐக் கேட்டுத் தெரிந்துகொள்ளுங்கள், மேலும் கொள்கையில் "fair use" மற்றும் "sustained" போன்ற சொற்கள் உள்ளனவா என்று சரிபார்க்கவும். நீங்கள் உண்மையில் அனுப்பும் தரவை vnstat -m மூலம் கண்காணித்து, அனுமதிக்கப்பட்ட அளவோடு ஒப்பிட்டுப் பாருங்கள்.

எனது VPS உண்மையிலேயே NVMe-ஐப் பயன்படுத்துகிறதா என்பதை எப்படி அறிவது?

Guest-க்குள் இருந்து கொண்டு இயற்பியல் வன்பொருளை உங்களால் உறுதிப்படுத்த முடியாது. ஏனெனில் lsblk, hypervisor எதைக் காட்டுகிறதோ அதை மட்டுமே தெரிவிக்கும்: ROTA மதிப்பு 0 ஆகவும், model string காலியாகவோ அல்லது பொதுவான பெயரிலோ இருக்கும். நீங்கள் அதன் செயல்பாட்டை மட்டுமே அளவிட முடியும். --direct=1 மற்றும் --iodepth=1 பயன்படுத்தி fio-வை இயக்கவும், அதன் 99.00th percentile completion latency-ஐக் கவனிக்கவும். Local NVMe நூற்றுக்கணக்கான மைக்ரோ விநாடிகளில் பதிலளிக்கும், ஆனால் network attached volume-கள் அதன் sequential throughput சிறப்பாகத் தெரிந்தாலும், மில்லி விநாடிகளில் மட்டுமே பதிலளிக்கும். பகிரப்பட்ட வட்டு (shared disk) 03:00 மணிக்கும் 20:00 மணிக்கும் ஒரே மாதிரியாக இருக்காது என்பதால், நாள் முழுவதும் பலமுறை இதைச் சோதிக்கவும்.

பணத்தைத் திரும்பப் பெறும் காலம் முடிவதற்குள் எதைச் சோதிக்க வேண்டும்?

இந்த வரிசையில் நான்கு விஷயங்களைச் சோதிக்கவும். systemd-detect-virt, lscpu மற்றும் free -h மூலம் அந்த server உண்மையில் என்ன என்பதை அறியவும். sysbench cpu --cpu-max-prime=20000 --threads=1 run மூலம் single thread வேகத்தைச் சோதிக்கவும். vmstat 1 மூலம் கண்காணிக்கப்படும் stress-ng --cpu 0-ஐப் பயன்படுத்தி, முழுச் சுமையின் கீழ் steal time-ஐச் சோதிக்கவும். Queue depth 1-ல் fio மூலம் disk latency-ஐச் சோதிக்கவும். இறுதியாக, உங்கள் பயனர்களுக்கு அருகிலுள்ள ஒரு கணினியிலிருந்து mtr மற்றும் அந்த server-லிருந்து ஒரு கோப்பைப் பதிவிறக்கம் செய்வதன் மூலம் network வேகத்தை அளவிடவும். இவை அனைத்தையும் செய்ய முப்பது நிமிடங்கள் போதும். எதையும் migrate செய்வதற்கு முன்பே இதைச் செய்வது, பணத்தைத் திரும்பப் பெறும் உரிமையை உங்களுக்குச் சாதகமாக வைத்திருக்கும்.