คำตอบสั้น ๆ: ทำ Right-sizing ลดค่าเซิร์ฟเวอร์คลาวด์จากข้อมูลจริง 2–4 สัปดาห์ หาเครื่องและดิสก์ที่ไม่ได้ใช้ วิเคราะห์ด้วย p95 ลดสเปกอย่างปลอดภัย และทบทวนทุกไตรมาส
คู่มือนี้อธิบาย Right-sizing ทีละขั้นตอน พร้อมคำสั่งที่ใช้ได้จริงและปัญหาที่พบบ่อย
Right-sizing คือการปรับขนาดเซิร์ฟเวอร์ ดิสก์ และทรัพยากรอื่นบนคลาวด์ให้ตรงกับการใช้งานจริง ทั้งลดเครื่องที่ใหญ่เกินงาน ปิดเครื่องที่ไม่มีใครใช้ และล้าง Volume หรือ Snapshot ที่ค้างอยู่ จุดสำคัญคือทำจากข้อมูลการใช้งานหลายสัปดาห์ ไม่ใช่จากความรู้สึกว่าเครื่องว่าง เพราะการลดสเปกผิดจังหวะทำให้ระบบช้าลงตอนสิ้นเดือนพอดี
คู่มือนี้เหมาะกับผู้ดูแลระบบและผู้รับผิดชอบงบไอทีที่ดูแลเซิร์ฟเวอร์คลาวด์หลายเครื่อง เมื่อทำครบ คุณจะมีรายการทรัพยากรพร้อมเจ้าของ ข้อมูลการใช้งานย้อนหลัง 2–4 สัปดาห์ รายชื่อเครื่องที่ลดได้พร้อมตัวเลขรองรับ ขั้นตอนลดสเปกที่ปลอดภัยและถอยกลับได้ และรอบทบทวน Right-sizing ที่ทำซ้ำได้ทุกไตรมาส
สิ่งที่ต้องเตรียม
- รายการเซิร์ฟเวอร์ ดิสก์ และบริการเสริมทั้งหมดจากพอร์ทัลของผู้ให้บริการ พร้อมค่าใช้จ่ายรายเดือนจากใบแจ้งหนี้ล่าสุด
- ข้อมูลการใช้ CPU, RAM, ดิสก์ และเครือข่ายย้อนหลังสำหรับ Right-sizing อย่างน้อย 2 สัปดาห์ ดีที่สุดคือ 4 สัปดาห์ที่มีวันสิ้นเดือนรวมอยู่
- เจ้าของระบบของแต่ละเครื่อง ผู้ที่ยืนยันได้ว่าเครื่องนั้นยังใช้อยู่หรือไม่ และช่วงไหนเป็นช่วงงานหนัก
- Backup ที่ทดลองกู้ได้ของทุกเครื่องที่จะลดสเปก และช่วงเวลาหยุดระบบที่ตกลงกับผู้ใช้แล้ว
ขั้นตอนที่ 1: ทำรายการทรัพยากรและเจ้าของก่อน Right-sizing
ทำตารางหนึ่งแถวต่อหนึ่งทรัพยากร คอลัมน์ที่ควรมีคือ ชื่อ ประเภท (เซิร์ฟเวอร์ ดิสก์เสริม Backup IP) สเปก ค่าใช้จ่ายต่อเดือน ระบบที่ใช้ เจ้าของ และวันที่สร้าง แถวที่ไม่มีใครรับเป็นเจ้าของคือเป้าหมายแรกของ Right-sizing เพราะมักเป็นเครื่องทดสอบหรือดิสก์ที่ถูกลืมหลังโครงการจบ
ตารางนี้คือฐานของ Right-sizing ทุกรอบ ตั้งชื่อเครื่องให้บอกระบบและสภาพแวดล้อม เช่น erp-prod-01 หรือ web-dev-02 จะช่วยให้แยกเครื่องจริงกับเครื่องทดสอบได้ทันทีในรอบถัดไป ดิสก์เสริมที่ไม่ได้ต่อกับเครื่องใดแต่ยังคิดค่าบริการอยู่ ให้ตรวจตามคู่มือ Volume Disk บน Cloud ของ TDC
ขั้นตอนที่ 2: เก็บข้อมูลสำหรับ Right-sizing 2–4 สัปดาห์
กราฟใน Cloud Server Monitoring ของ THAI DATA CLOUD ใช้ดูภาพรวมได้ทันที เครื่องโซน Zenith เลือก Period เป็น Monthly ได้ ส่วนเครื่องโซนอื่นย้อนหลังได้สูงสุด Last 7 days ถ้าต้องการข้อมูลยาวกว่านั้นสำหรับ Right-sizing ให้เก็บในเครื่องเองด้วย sysstat บน Linux
sudo apt install -y sysstat # Ubuntu / Debian
sudo sed -i 's/^ENABLED="false"/ENABLED="true"/' /etc/default/sysstat
sudo sed -i 's/^HISTORY=.*/HISTORY=28/' /etc/sysstat/sysstat # เก็บย้อนหลัง 28 วัน
sudo systemctl enable --now sysstat
# ผ่านไปหลายวันแล้วอ่านผล
ls /var/log/sysstat/
sar -u -f /var/log/sysstat/sa12 # CPU ของวันที่ 12
sar -r -f /var/log/sysstat/sa12 # หน่วยความจำ
บน Windows Server สร้างตัวเก็บข้อมูลด้วย logman ให้บันทึกทุก 5 นาทีลงไฟล์ CSV แล้วเปิดดูใน Excel ได้ ตัวเก็บข้อมูลไม่เริ่มเองหลังรีสตาร์ต ต้องสั่ง logman start ใหม่ทุกครั้งที่รีบูต
mkdir C:\perf
logman create counter RightSizing -c "\Processor(_Total)\% Processor Time" "\Memory\Available MBytes" -si 00:05:00 -f csv -o C:\perf\rightsizing
logman start RightSizing
ถ้ามี Prometheus กับ Node Exporter อยู่แล้ว ให้ใช้ค่าเปอร์เซ็นไทล์ที่ 95 (p95) แทนค่าเฉลี่ย เพราะค่าเฉลี่ยของ 4 สัปดาห์กลบช่วงพีกจนดูเหมือนเครื่องว่างเสมอ ฟังก์ชัน quantile_over_time อธิบายไว้ใน เอกสาร Prometheus query functions
# p95 ของ CPU ที่ใช้ (%) ย้อนหลัง 28 วัน
quantile_over_time(0.95, (1 - avg by (instance) (rate(node_cpu_seconds_total{mode="idle"}[5m])))[28d:5m]) * 100
# p95 ของ RAM ที่ใช้ (%) ย้อนหลัง 28 วัน
quantile_over_time(0.95, (1 - node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes)[28d:5m]) * 100
ขั้นตอนที่ 3: หาทรัพยากรที่ไม่ได้ใช้งาน
ใน Right-sizing ทรัพยากรที่ไม่มีใครใช้ประหยัดได้มากที่สุดและเสี่ยงต่ำที่สุดเมื่อจัดการถูกวิธี สัญญาณที่ควรตรวจ
- เซิร์ฟเวอร์ที่ CPU ต่ำกว่า 5% ตลอดหลายสัปดาห์ ทราฟฟิกเครือข่ายแทบเป็นศูนย์ และไม่มีใครล็อกอิน ดูได้จาก
last -n 20บน Linux หรือ Event Viewer บน Windows - ดิสก์เสริมที่ไม่ได้ต่อกับเครื่องใด หรือต่ออยู่แต่ไม่ได้ Mount (ตรวจด้วย
lsblk -f) - Snapshot หรือ Backup แบบเก็บด้วยมือที่เก่ากว่าระยะที่ Backup Plan กำหนด
- เครื่องทดสอบของโครงการที่จบไปแล้ว และเครื่องเก่าที่เก็บไว้หลังย้ายระบบเกินช่วงรอถอยกลับ
คำเตือน: ก่อนลบทรัพยากรใด ให้เจ้าของยืนยันเป็นลายลักษณ์อักษร และสำรองข้อมูลชุดสุดท้ายไปเก็บแยกไว้ เครื่องที่ไม่แน่ใจให้ปิดไว้ก่อน 2–4 สัปดาห์เพื่อดูว่ามีใครแจ้งปัญหาหรือไม่ แล้วจึงลบ การลบเครื่องหรือดิสก์บนคลาวด์โดยทั่วไปกู้คืนไม่ได้