Table Of Content
- NFS คืออะไร
- การติดตั้งและกำหนดค่า NFS Server บน Ubuntu
- การเชื่อมต่อ VM เข้ากับ NFS
NFS คืออะไร
การสร้าง NFS หรือ Network File System เป็นวิธีการที่จะทำให้คอมพิวเตอร์ 2 เครื่อง ( ซึ่งในตัวอย่างนี้คือ VM นะครับ ) สามารถที่จะแชร์ไฟล์ให้สามารถทำงานร่วมกันได้ ซึ่งการใช้งาน NFS มีประโยชน์ดังนี้ครับ
- ทำให้เข้าถึงและแชร์ข้อมูลในเครือข่ายได้อย่างรวดเร็วและสะดวก
- ช่วยในการจัดเก็บข้อมูลร่วมและควบคุมการเข้าถึงข้อมูลอย่างมีประสิทธิภาพ
- ช่วยในการทำงานร่วมกันและลดการซ้ำซ้อนของข้อมูลในทีม
การติดตั้งและกำหนดค่า NFS Server บน Ubuntu
ในตัวอย่างนี้ ผมจะสมมติว่าเรามี VM 2 Instance นะครับ โดยผมจะติดตั้ง package nfs-kernel-server ใน VM ตัวแรก และติดตั้ง package nfs-common ใน vm ตัวที่สอง เพื่อให้ VM ตัวที่สองสามารถ mount file เพื่อที่จะเข้ามาใช้งานแชร์ไฟล์ จาก VM ตัวแรกได้
1. ติดตั้ง NFS Server
sudo apt update
sudo apt install nfs-kernel-server
2. กำหนดแฟ้มที่จะแชร์
sudo nano /etc/exports
3. กำหนด Directory ที่เราต้องการแชร์กับ VM เครื่องอื่น
# แบบกำหนด IP Address
/path/to/shared/directory IP_ADDRESS_OF_VM1(rw,sync,no_subtree_check) IP_ADDRESS_OF_VM2(rw,sync,no_subtree_check)
# แบบ wildcard
/path/to/shared/directory *(rw,sync,no_subtree_check) IP_ADDRESS_OF_VM2(rw,sync,no_subtree_check)
4. รีโหลดการกำหนดค่า NFS
sudo exportfs -a
sudo systemctl restart nfs-kernel-server
การเชื่อมต่อ VM เข้ากับ NFS
1. ติดตั้ง NFS Client: บนเครื่อง VM เครื่องที่จะเข้ามาเรียกใช้งาน ให้ติดตั้งแพ็กเกจ NFS client
sudo apt update
sudo apt install nfs-common
2. เชื่อมต่อกับแชร์ NFS หรือบางคนเขาเรียกว่าการ mount drive ครับ
sudo mkdir /mnt/shared_folder
sudo mount -t nfs IP_ADDRESS_OF_NFS_SERVER:/path/to/shared/directory /mnt/shared_folder
อธิบาย block นี้นะครับ เราพยายามที่จะสร้าง folder /mnt/shared_folder
บน VM Client และ Mount แชร์ folder จาก nfs master เข้าที่โฟล์เดอร์นี้ เมื่อไหร่ก็ตามที่มีการสร้างไฟล์หรือลบไฟล์บนเครื่อง master เราจะเห็นการเปลี่ยนแปลงที่ไฟล์เดอร์ /mnt/shared_folder
ด้วย
หรือในทางกลับการ ถ้าเรามีการทำการเปลี่ยนแปลงใดๆ บน /mnt/shared_folder
แล้ว บน vm master เอง /path/to/shared/directory
ก็จะเห็นการเปลี่ยนแปลงไปด้วยครับ
3. ทำให้การเชื่อมต่อถูกต้องทุกครั้งที่เริ่มระบบ
IP_ADDRESS_OF_NFS_SERVER:/path/to/shared/directory /mnt/shared_folder nfs defaults 0 0
เอาละครับ เท่านี้เราก็สามารถสร้าง share drive ง่ายๆ ผ่าน network ไว้ใช้งานได้แล้ว