วันพฤหัสบดีที่ 16 กันยายน พ.ศ. 2553

การเพิ่ม Swap Partition บน CentOS

Swap Space เป็นการใชพื้นที่บน Hard disk สำหรับทำงานเป็นส่วนหนึ่งของ RAM ซึ่งในกรณีที่ตัว Server มีการใช้งานโปรแกรมที่ใช้งาน Memory เยอะๆ Linux จะมาใช้พื้นที่ส่วนนี้สำหรับการเก็บข้อมูลชั่วคราว แบบเดียวกับ Virtual Memory (Paged Pool) ใน Windows ดังนั้นหากคุณลองดูบนเครื่องแล้วพบว่ามีการใช้งาน Swap มากๆ แสดงว่าถึงเวลาในการเพิ่ม RAM แล้วครับ

โดยทั่วไปเราจะกำหนดให้ Swap มีขนาดประมาณ 2 เท่าของ RAM ซึ่งในการเพิ่ม RAM เราอาจจะต้องเพิ่ม Swap Space ตาม ทั้งนี้อาจจะไม่จำเป็นเสมอไปนะครับ ต้องดูการใช้งานของเครื่องโดยใช้ free -m โดยทั่วไปแล้ว Swap สามารถสร้างได้จาก Partition หรือ ไฟล์ก็ได้นะครับ ในที่นี้ผมขอพูดถึงประเภท Partition นะครับ
  1. ตรวจสอบ partition ของ swap จาก command คือ swap -s จดชื่อ partition ของ swap ไว้
  2. เราจะต้องปิดการใช้งาน swap partition ครับ โดยใช้ command คือ swapoff -v ตามด้วย parttion ครับ
  3. swapoff -v /dev/mapper/VolGroup00-LogVol01 ในที่นี้ /dev/mapper/VolGroup00-LogVol01 คือ Swap Partition
  4. ทำการขยายขนาด partition โดยใช้ command LVM ครับ
  5. ในที่นี้ผมขยายขนาดเพิ่มอีก 1GB นะครับ 

     lvm lvresize /dev/mapper/VolGroup00-LogVol01 -L +1G
  6. หลังจากนั้นทำการสร้าง Swap บน Partition นี้ครับ
  7. mkswap /dev/mapper/VolGroup00-LogVol01
  8. เปิดใช้งานโดยใช้คำสั่ง swapon -va
  9. ตรวจสอบจาก Command คือ free -m หรือ cat /proc/fstab
ชั้นตอนก็มีแค่นี้ครับ สำหรับการขยายขนาดของ Swap Partition ไม่ยากครับ เพราะว่ามันปิดได้ไม่มีผลกระทบ ยกเว้นว่า Load บนเครื่องเยอะๆ อาจจะเกิด Out of memory ได้ครับ แต่ขั้นตอนนี้ใช้แค่ 1 นาทีก็เสร็จครับ ยกเว้นว่าคุณไม่มีพื้นที่ให้ขยายแล้วบน Hard disk กรณีนี้ต้องลดส่วนอื่นหรือ เพิ่ม Hard disk ก่อน อ้อ ผมใช้ CentOS 5.5 ครับ ก็เริ่มจาก CentOS 5.2 ครับ แล้วก็ Update มาเรื่อยๆ แล้วก็การทำงานทั้งหมดต้องใช้สิทธิของ root นะครับ