SSD Nodes Learn RAM 8GB — $66/ปี
คู่มือ Matt Connorโดย Matt Connor · อัปเดตเมื่อ 2026-08-01

VPS, VM และ VPC ต่างกันอย่างไร เลือกใช้อะไรดี

VM คือเทคโนโลยี, VPS คือ VM ที่ขายเป็นบริการ และ VPC คือเครือข่ายส่วนตัวใน cloud ดูความหมายของแต่ละคำและเลือกสิ่งที่เหมาะกับงาน

VPS, VM และ VPC ในย่อหน้าเดียว

VM (virtual machine) คือคอมพิวเตอร์ที่สร้างด้วยซอฟต์แวร์ โดย hypervisor จะแบ่งเซิร์ฟเวอร์จริงหนึ่งเครื่องออกเป็นเครื่องอิสระหลายเครื่อง และแต่ละเครื่องจะใช้งาน kernel ของตนเอง VPS (virtual private server) คือหนึ่งใน virtual machine เหล่านั้นที่ให้คุณเช่าเป็นผลิตภัณฑ์ พร้อม operating system, การเข้าถึง root และค่าบริการรายเดือน VPC (virtual private cloud) ไม่ใช่เซิร์ฟเวอร์ แต่เป็นเครือข่ายส่วนตัวที่คุณกำหนดภายใน cloud account แล้วนำทรัพยากรต่าง ๆ ไปไว้ภายในเครือข่ายนั้น VM คือเทคโนโลยี VPS คือผลิตภัณฑ์ VPC คือเครือข่ายที่ล้อมรอบผลิตภัณฑ์

คำสองคำในนี้ใช้อธิบายเครื่อง ส่วนคำที่สามใช้อธิบายเครือข่าย ความสับสนเกือบทั้งหมดเกิดจากความไม่สอดคล้องนี้ เพราะผู้คนเปรียบเทียบคำเหล่านี้ราวกับเป็นผลิตภัณฑ์สามรายการบนชั้นเดียวกัน

VM คืออะไร

Hypervisor คือชั้นซอฟต์แวร์ที่จำลองการทำงานเป็นฮาร์ดแวร์ โดยจัดสรร CPU เสมือน หน่วยความจำเสมือน ดิสก์เสมือน และการ์ดเครือข่ายเสมือนให้กับ guest แต่ละเครื่อง จากนั้นจะแยก guest ไม่ให้มองเห็นกันเอง KVM, Xen, Hyper-V และ VMware ESXi เป็น hypervisor ที่ใช้กันทั่วไปบนเซิร์ฟเวอร์ Hypervisor สมัยใหม่อาศัยส่วนขยายสำหรับการทำ virtualization ของ CPU (Intel VT-x, AMD-V) ทำให้คำสั่งของ guest ทำงานบน CPU จริงได้ใกล้เคียงความเร็วของเครื่องจริง แทนที่จะต้องแปลคำสั่ง

สำหรับผู้ดูแลระบบ ส่วนที่สำคัญคือ kernel VM จะบูต kernel ของตนเอง คุณจึงเลือก distribution โหลด kernel module และกำหนดค่า sysctl ที่มีผลเฉพาะกับ VM ของคุณได้ ซึ่งแตกต่างจาก container (LXC, Docker) ที่ใช้ kernel ของ host ร่วมกัน และมีเพียงมุมมองของ process และไฟล์ที่เป็นของตนเอง

คุณดูคำตอบได้บนเครื่อง Linux ทุกเครื่องด้วยคำสั่งเดียว

systemd-detect-virt

kvm หมายความว่าคุณกำลังใช้ virtual machine บน hypervisor แบบ KVM lxc หรือ openvz หมายความว่าคุณอยู่ใน container ที่ใช้ kernel ของผู้อื่น none หมายความว่าคุณกำลังใช้งานเครื่องจริงของตนเอง หากไม่มีคำสั่งดังกล่าว lscpu | grep -i hypervisor จะแสดงข้อมูลเดียวกันจาก CPU flags

VPS คืออะไร

VPS เป็นแพ็กเกจเชิงพาณิชย์ที่ครอบ VM เทคโนโลยีเบื้องหลังคือ virtualisation ส่วนคำว่า "VPS" หมายถึงองค์ประกอบที่ทำให้สามารถจำหน่ายได้ ได้แก่ OS image ที่ติดตั้งใหม่ได้ IP address โควตา bandwidth control panel ราคาแบบรายเดือน และผู้ให้บริการที่สามารถติดต่อทางอีเมลได้เมื่อ host หยุดทำงาน คำว่า "Private" ใช้เพื่อแยกบริการนี้ออกจาก shared hosting ซึ่งหลายร้อยเว็บไซต์ใช้ operating system เดียวกันและ PHP configuration เดียวกัน

เนื่องจาก VPS เป็นชื่อผลิตภัณฑ์ ไม่ใช่คำศัพท์ทางเทคนิค จึงไม่ได้หมายความว่าเป็น VM แบบเต็มเสมอไป แพ็กเกจราคาประหยัดบางรายการให้บริการ container โดยใช้คำเดียวกัน ความแตกต่างจะเห็นได้เมื่อคุณต้องใช้งาน kernel เป็นครั้งแรก ในแพ็กเกจที่ใช้ container sudo modprobe wireguard จะล้มเหลวพร้อมกับ RTNETLINK answers: Operation not supported หรือ modprobe: FATAL: Module wireguard not found เนื่องจาก kernel เป็นของ host และคุณไม่ได้รับอนุญาตให้เปลี่ยนแปลง ในแพ็กเกจ KVM module จะโหลดและ tunnel จะเริ่มทำงาน หากคุณวางแผนจะใช้งาน Docker, VPN, custom kernels หรือ virtual machines ของคุณเองภายใน server ให้ตรวจสอบประเภท virtualisation ก่อนซื้อ การรัน virtual machines ภายใน VPS ต้องใช้ KVM ที่เปิด nested virtualisation บน host ซึ่งทำให้เหลือแพ็กเกจที่รองรับน้อยลงไปอีก

VPC คืออะไร

VPC คือเครือข่ายที่กำหนดด้วยซอฟต์แวร์ภายในผู้ให้บริการคลาวด์ คุณกำหนดช่วงที่อยู่ในรูปแบบ CIDR เช่น 10.0.0.0/16 จากนั้นแบ่ง subnet ออกมา เพิ่ม route table และกำหนดกฎไฟร์วอลล์ (security groups) ไว้ด้านหน้าทรัพยากรภายใน VPC VPC ไม่มี CPU ไม่มี memory และไม่มี disk จึงไม่มีสิ่งใดให้เข้าสู่ระบบ การลบเซิร์ฟเวอร์ทั้งหมดใน VPC จะทำให้ VPC ยังคงอยู่โดยว่างเปล่า และโดยทั่วไปไม่มีค่าใช้จ่าย

สิ่งที่ VPC มอบให้คือการใช้ที่อยู่ส่วนตัว เซิร์ฟเวอร์ 2 เครื่องใน VPC เดียวกันสื่อสารกันผ่านที่อยู่ เช่น 10.0.1.15 บนโครงข่ายภายในของผู้ให้บริการ ดังนั้น traffic จึงไม่ผ่าน public internet และไม่ถูกเรียกเก็บค่าใช้จ่ายในฐานะ internet egress จากนั้น database สามารถ listening ได้เฉพาะที่อยู่ส่วนตัว และไม่มี port ใดเปิดเผยต่อโลกภายนอก

ip -4 addr show

ที่อยู่ภายใน 10.0.0.0/8, 172.16.0.0/12 หรือ 192.168.0.0/16 เป็นที่อยู่ส่วนตัว หากเครื่องเดียวกันมีที่อยู่สาธารณะ เซิร์ฟเวอร์นั้นจะเข้าถึงได้โดยตรงจาก internet ไม่ว่าจะอยู่ใน network object ใดก็ตาม

VPC ทำให้เซิร์ฟเวอร์ของฉันเป็นส่วนตัวหรือไม่

ไม่ และนี่เป็นความเข้าใจผิดที่มีค่าใช้จ่ายสูงที่สุดเกี่ยวกับคำศัพท์ทั้งสามคำนี้ VPC ควบคุมการกำหนดเส้นทางและการกำหนดที่อยู่ แต่ไม่ได้ตัดสินว่าอินเทอร์เน็ตจะเข้าถึงเครื่องได้หรือไม่ หาก instance มี public IP และกฎความปลอดภัยอนุญาต port 22 จาก 0.0.0.0/0 เครื่องนั้นจะเปิดให้เข้าถึงได้ไม่ต่างจากเซิร์ฟเวอร์อื่น ไม่ว่าจะใช้ VPC หรือไม่ก็ตาม การแยกที่ VPC มอบให้คือความสามารถในการกำหนดให้ resource ไม่มี public address เลย รวมถึงการกำหนดกฎว่าว่า subnet ใดสามารถสื่อสารกับ subnet ใดได้บ้าง

คำศัพท์ทั้งสามคำยังสื่อถึงการแยกคนละรูปแบบ VM แยกทรัพยากรการประมวลผล โดย hypervisor จะแยกเวลาใช้งาน CPU และหน่วยความจำ ทำให้ guest อื่นไม่สามารถอ่าน RAM ของคุณได้ การแยกนี้มีประสิทธิภาพน้อยกว่าสำหรับดิสก์และเครือข่าย เพราะเพื่อนบ้านที่ใช้งานหนักบน host เดียวกันยังทำให้ระบบของคุณช้าลงได้ VPS ที่ใช้ container ใช้ kernel ร่วมกัน ดังนั้นข้อบกพร่องในระดับ kernel จึงเป็นความเสี่ยงร่วมกัน ส่วน VPC ไม่ได้แยกทรัพยากรการประมวลผลเลย แต่ทำหน้าที่กำหนดรูปแบบเครือข่ายเท่านั้น

แนวคิดพื้นฐานเกี่ยวกับราคา

โดยปกติ VPS จำหน่ายในราคาคงที่รายเดือนสำหรับเครื่องที่มีคุณสมบัติคงที่ คุณทราบค่าใช้จ่ายก่อนเริ่มเดือน และค่าดิสก์กับโควตาการรับส่งข้อมูลรวมอยู่ในราคานั้นแล้ว ความแน่นอนของค่าใช้จ่ายเป็นเหตุผลหลักที่ทำให้ผู้ใช้เลือก VPS แทน cloud instance สำหรับงานขนาดเล็ก

cloud VM คิดค่าบริการตามการใช้งาน instance คิดค่าบริการเป็นรายชั่วโมงหรือรายวินาที ส่วนดิสก์ snapshot load balancer และ outbound traffic คิดค่าบริการแยกกัน โดยปกติ VPC ไม่มีค่าใช้จ่าย แต่ส่วนประกอบแบบ managed ที่เชื่อมต่อกับ VPC มีค่าใช้จ่าย เช่น NAT gateway ที่ทำให้ instance ในเครือข่ายส่วนตัวเชื่อมต่ออินเทอร์เน็ตได้ จะคิดค่าบริการตามชั่วโมงและตาม gigabyte และยังคิดค่าบริการสำหรับ traffic ระหว่าง availability zone ด้วย ณ เดือน July 2026 ผู้ให้บริการ cloud รายใหญ่ยังคงกำหนดให้ instance ใหม่ทุกตัวอยู่ใน default VPC โดยอัตโนมัติ ดังนั้นคุณกำลังใช้ VPC ดังกล่าวไม่ว่าคุณจะร้องขอหรือไม่ก็ตาม

สิ่งที่คุณต้องใช้จริง

  • เซิร์ฟเวอร์ 1 เครื่องสำหรับเว็บไซต์ แอป game server หรือ VPN: ใช้ VPS โดย 10 นาทีแรกบน VPS ใหม่ มีความสำคัญมากกว่าชื่อแพ็กเกจ
  • เซิร์ฟเวอร์หลายเครื่องที่ต้องเชื่อมต่อกันผ่าน private address: ใช้ VPC หรือฟีเจอร์ private network ที่ผู้ให้บริการ VPS ของคุณใช้ชื่อเรียกอื่น
  • workload ที่ต้องทำงานต่อได้แม้ datacentre ทั้งแห่งหยุดให้บริการ: ใช้ cloud ที่มีหลาย zone ซึ่งหมายถึงการใช้ VM ภายใน VPC
  • ต้องการควบคุม kernel อย่างเต็มรูปแบบ หรือต้องการใช้ hypervisor ของคุณเองอยู่ด้านบน: ใช้ VPS ที่อิง KVM หรือ dedicated server และตรวจสอบ ชนิด disk ที่อยู่เบื้องหลังแพ็กเกจ ระหว่างเปรียบเทียบ

โปรเจกต์ที่ใช้เซิร์ฟเวอร์เพียงเครื่องเดียวส่วนใหญ่ไม่จำเป็นต้องใช้ VPC ฟีเจอร์ private network ที่ให้มาพร้อม VPS รองรับงานเดียวกันสำหรับเครื่องจำนวนไม่มาก

FAQ

VPS เหมือนกับ VM หรือไม่?

VPS คือ VM ที่ผู้ให้บริการนำมาจำหน่าย VPS ที่สร้างบน KVM, Xen หรือ VMware ทุกรายการเป็น virtual machine แต่ไม่ใช่ virtual machine ทุกรายการที่จะเป็น VPS เพราะ VM ที่ทำงานบนแล็ปท็อปของคุณภายใต้ VirtualBox ไม่ใช่ผลิตภัณฑ์ของผู้ให้บริการ VPS ราคาถูกบางแพ็กเกจที่ระบุว่าเป็น VPS อาจเป็น container แทนที่จะเป็น VM แบบเต็มรูปแบบ ดังนั้นให้ตรวจสอบกับ systemd-detect-virt ก่อนพึ่งพาการเข้าถึง kernel

ฉันสามารถติดตั้ง VPS ไว้ภายใน VPC ได้หรือไม่?

โดยทั่วไปทำไม่ได้ เพราะ VPC เป็นโครงสร้างของผู้ให้บริการคลาวด์รายหนึ่ง และรองรับเฉพาะทรัพยากรที่สร้างภายใน account เดียวกัน VPS จากผู้ให้บริการอิสระทำงานอยู่บนเครือข่ายของผู้ให้บริการรายนั้น หากต้องการเชื่อมต่อเครือข่ายส่วนตัวระหว่างทั้งสองฝั่ง ให้สร้าง VPN tunnel ระหว่างกันแทน จากนั้น VPS จึงจะเข้าถึง private subnet ผ่าน tunnel ดังกล่าวได้

เหตุใดค่าใช้บริการคลาวด์ของฉันจึงสูงกว่า VPS ที่มีคุณสมบัติเทียบเท่ากัน?

ราคา instance เป็นเพียงส่วนหนึ่งของค่าใช้จ่าย ค่า storage, snapshot, outbound traffic, load balancer และ NAT gateway จะถูกคิดแยกเป็นรายการในคลาวด์แบบคิดค่าบริการตามการใช้งาน และ NAT gateway เพียงรายการเดียวอาจมีค่าใช้จ่ายต่อเดือนสูงกว่า VPS ขนาดเล็ก Fixed-price VPS จะรวม disk และโควตา transfer ไว้ในราคาเดียว จึงมักทำให้ workload เดียวกันดูมีราคาถูกกว่า

ฉันจะตรวจสอบได้อย่างไรว่า server ของฉันมีสิทธิ์เข้าถึง kernel จริง?

เรียกใช้ systemd-detect-virt แล้วอ่านผลลัพธ์ kvm, xen หรือ vmware หมายความว่าคุณมี kernel ของตนเอง และ modprobe จะทำงานได้ lxc, lxc-libvirt หรือ openvz หมายความว่าคุณใช้ kernel ร่วมกับ host และคำสั่งที่โหลด module หรือเขียนไปยัง /proc/sys จะล้มเหลวพร้อม Operation not supported วิธีตรวจสอบเพิ่มเติมคือ uname -r ซึ่งในแพ็กเกจแบบ container มักรายงาน kernel version ที่ distribution ของคุณไม่เคย release

#vps#vm#vpc#cloud#basics