두 VPS 요금제를 나란히 놓으면 사양 한 줄이 똑같아 보일 때가 많습니다. 4 vCPU, 8 GB RAM, NVMe, 1 Gbit/s, 트래픽 무제한. 그런데 하나는 앱을 매끄럽게 돌리고 다른 하나는 매일 저녁 버벅입니다. 사양 한 줄이 엄밀히 말해 거짓말을 하는 건 아닙니다. 중요한 부분을 빼놓았을 뿐입니다.
이 글은 VPS라는 범주 안에서 요금제를 비교하는 이야기입니다. VPS가 애초에 맞는 호스팅인지 아직 고민 중이라면 VPS, 공유 호스팅, 전용 서버, 클라우드 비교부터 읽어 보세요.
vCPU: 상한이지 보장이 아니다
가장 많은 것을 숨기는 단어입니다. 대부분의 VPS 플랫폼에서 vCPU는 물리 코어 시간의 한 조각이고, 다른 고객의 조각과 함께 스케줄링됩니다. 요금제의 숫자는 순간 부하 때 동시에 쓸 수 있는 개수입니다. 그 전부를 몇 시간씩 100 %로 유지할 수 있는지는 다른 질문이고, 그 답은 (있다면) 공정 사용 정책에 적혀 있습니다.
저희 요금제에 대해서는 구체적으로 말씀드리겠습니다. 모호함이 바로 문제의 원인이기 때문입니다. vCPU 수는 짧은 순간 부하의 상한이지 전용 물리 코어가 아니며, 장시간 최대 부하의 CPU는 같은 머신의 모두에게 공정하도록 제한될 수 있습니다. 웹 앱, 봇, 에이전트, 데이터베이스에서는 거의 느껴지지 않습니다. 몇 시간짜리 영상 인코딩에서는 느껴집니다.
구매 전에 물어볼 것: vCPU 수가 보장인지 버스트인지, 장시간 부하에서는 어떻게 되는지. 구매 후에 확인할 것: vmstat의 st(steal) 열. steal이 두 자릿수에 계속 머문다면 다른 사람의 작업을 기다리고 있다는 뜻입니다.
RAM: 유일하게 정직한 숫자
메모리는 해석의 여지가 가장 적은 사양입니다. 8 GB는 8 GB입니다. 남는 질문은 요금제가 여러분의 작업량에 충분한지, 그리고 업체가 용량 이상으로 팔고 있지 않은지뿐이며, 후자는 이유 없는 스왑으로 드러납니다. 얼마나 필요한지 모르겠다면 64 GB RAM이 정말 필요한 때에서 메모리 문제를 디스크·CPU 문제와 구분하는 방법을 볼 수 있습니다.
NVMe: 인터페이스지 속도가 아니다
NVMe는 스토리지 인터페이스이고, 예전 SATA보다 훨씬 빠릅니다. 하지만 라벨은 몇 대의 서버가 같은 디스크를 함께 쓰는지, 서버마다 I/O 상한이 있는지 알려 주지 않습니다. NVMe라고 적혀 있어도 부하가 걸리면 평범한 처리량만 나오는 요금제가 있습니다. 저희 요금제는 모두 NVMe를 쓰지만, 그래도 저희 말을 믿기보다 직접 테스트해 보시길 권합니다.
디스크 크기는 생각보다 중요합니다. 데이터베이스, 로그, Docker 이미지 몇 개면 15 GB는 예상보다 빨리 찹니다. 요금제는 제자리에서 키우는 것만 가능하니 6개월 뒤에 필요할 디스크를 고르세요.
'1 Gbit/s': 포트 속도지 처리량이 아니다
이것은 서버와 스위치 사이 연결의 속도입니다. 어디로든 항상 1기가비트가 나온다는 약속이 아닙니다. 실제로 얻는 속도는 회선이 얼마나 붐비는지와 상대편까지의 경로에 달려 있습니다.
참고로 저희 수치입니다. Linux 요금제는 1 Gbit/s 포트, Windows 요금제는 150 Mbit/s입니다. 한산한 회선에서 Linux 서버 한 대는 방향별로 약 940 Mbit/s를 얻고, 여러 서버가 동시에 붐비면 회선은 실제로 전송 중인 서버들 사이에 고르게 나뉩니다. 속지 않는 속도 테스트 방법을 포함한 자세한 내용은 트래픽과 속도에 있습니다.
'무제한': 할당량이 없을 뿐, 제한이 없는 건 아니다
트래픽 무제한은 아무도 여러분의 테라바이트를 세지 않고, 월간 한도를 넘어도 속도를 줄이지 않는다는 뜻입니다. 속도가 무제한이라는 뜻은 아닙니다. 포트와 앞서 말한 공정한 몫은 그대로 적용됩니다. '대역폭 무제한'이라는 표현은 특히 주의해서 읽으세요. 보통은 할당량 없음에 공정 사용 조항이 붙은 것이고, 진짜 제한은 그 조항 안에 있습니다.
사양표에 없는 줄
요금제 사이의 가장 큰 차이 중 일부는 제목에 아예 나오지 않습니다.
- IPv4 포함 여부. 자체 IPv4가 없는 요금제로는 IPv4로 웹사이트를 호스팅할 수 없습니다. 이곳에서는 월 8달러의 Small이 NAT이고, 월 16달러의 Small-IP는 같은 크기에 자체 주소가 있습니다. 실제 차이는 포워딩된 포트 하나로 할 수 있는 것과 없는 것에서 설명합니다.
- 백업. 포함, 유료 부가 서비스, 혹은 직접 해결.
- 결제 주기. 이곳의 연간 요금제는 월 결제보다 10 % 저렴합니다.
- 위치. 저희 서버는 독일과 핀란드에 있습니다. 사용자나 봇이 통신하는 API에 가장 가까운 곳을 고르세요.
- 사양 변경. 제자리에서 키울 수 있는지, 얼마나 걸리는지. 줄일 수 있는지.
스스로를 속이지 않고 가격 비교하기
가격을 RAM 기가바이트로 나누는 건 끌리지만 대개 오해를 부릅니다. 기가바이트당은 싸도 IPv4가 없고 백업이 유료이며 디스크가 작은 요금제는, 정말 필요한 것을 더하고 나면 '비싼' 요금제보다 더 들 수 있습니다. 양쪽에 같은 완전한 구성, 즉 쓸 주소와 백업과 디스크를 꾸린 다음 그 구성의 월 총액을 비교하세요.
새 서버는 첫 한 시간에 점검하기
대부분의 업체는 저렴하게 써 볼 수 있게 해 줍니다. 첫 한 시간은 설치 대신 측정에 쓰세요.
nproc && lscpu | grep 'Model name'
vmstat 1 30 # watch the st column
fio --name=rand --rw=randread --bs=4k --size=1G --runtime=30 --time_based --direct=1
iperf3 -c <a test server near you> -P 4 -t 20
같은 명령을 저녁 붐비는 시간에 다시 실행해 보세요. 숫자가 무너진다면 그걸 싸게 알게 된 셈입니다.
이 방법이 맞지 않는 경우
사양표는 지원에 대해서도, 업체가 악용 신고를 어떻게 처리하는지도, 하드웨어가 고장 나면 어떻게 되는지도 말해 주지 않습니다. 한 시간 동안 잰 수치가 다음 달을 예측하지도 않습니다. 그리고 어떤 작업에는 이 모든 게 상관없습니다. Nano에서 도는 Telegram 봇은 좋은 디스크와 아주 좋은 디스크의 차이를 알아채지 못합니다. 비교에 들이는 노력은 걸린 것에 맞추세요. 3달러짜리 봇이라면 적당한 것을 골라 넘어가세요. 운영 데이터베이스라면 테스트하세요.
위 질문들을 들고 VPS 요금제를 둘러보세요. 다른 업체에서 옮겨 온다면 다운타임 없이 VPS 이전하기에 이전 순서가 있습니다.
댓글
아직 댓글이 없습니다. 첫 번째가 되세요.