Digital Thailand@GISTDA
โครงการดิจิตอลไทยแลนด์ เป็นโครงการที่ให้บริการข้อมูลภูมิศาสตร์ของประเทศไทย ผ่านซอฟต์แวร์ NASA World Wind โดยเน้นข้อมูลที่ทันสมัย และมีรายละเอียดสูง รวมทั้งข้อมูลต่าง ๆ ที่เป็นประโยชน์ต่อการดำรงชีวิตของคนไทย โดยโปรแกรมสามารถแสดงขอบเขตการปกครองระดับจังหวัด และอำเภอ ที่ตั้งอำเภอ เส้นทางคมนาคม และสถานที่สำคัญอื่นๆ รวมถึงข้อมูลภาพถ่ายจากดาวเทียม รายละเอียด 2.5 เมตร ทั่วประเทศไทย
ปัจจุบันระบบได้ถูกปรับปรุงโดยขยายขนาดเพิ่มเติมเพื่อรองรับการให้บริการข้อมูลภาพถ่ายดาวเทียมที่เพิ่มขึ้น โดยเฉพาะจากดาวเทียม THEOS ซึ่งเป็นดาวเทียมสำรวจทรัพยากรดวงแรกของไทย
ปัญหาและความท้าทายที่พบ
- ข้อมูลภาพถ่ายดาวเทียวเป็นไฟล์รูปภาพความละเอียดสูงขนาดใหญ่หลายกิกะไบต์ (Gigabyte)
- ข้อมูลภาพถ่ายดาวเทียมมีปริมาณข้อมูลเพิ่มขึ้นทุกวัน
- ระบบมีผู้ใช้งานระบบดังกล่าวภายในองค์กรจำนวนมาก และต้องเตรียมรองรับการให้บริการบุคคลภายนอกที่กำลังขยายตัวเพิ่มขึ้น
- ในส่วนของการให้บริการบุคคลภายนอกผ่านหน้าเว็บไซต์ จะต้องให้บริการได้อย่างรวดเร็ว
- การประหยัดงบประมาณ
วิธีการแก้ปัญหา
คลัสเตอร์คิทเลือกใช้ระบบวิธีการผสมผสานเทคโนโลยี โดยแบ่งออกเป็นส่วน ๆ ดังต่อไปนี้
- ส่วนให้บริการข้อมูล ใช้ระบบไฟล์แบบคลัสเตอร์ ด้วยซอฟต์แวร์ Lustre เพื่อสร้างพื้นที่จัดเก็บข้อมูลขนาดใหญ่ สามารถรองรับผู้ใช้งานจำนวนมากที่ใช้งานระบบพร้อม ๆ กันได้ โดยที่ประสิทธิภาพการอ่านเขียนข้อมูลยังอยู่ในอัตราที่มีความเร็วสูง
- ส่วนการให้บริการเว็บ เลือกใช้ระบบการจายภาระงาน (Web Load-balancing) ด้วยซอฟต์แวร์ Linux Virtual Server (LVS) ทำให้ระบบสามารถรองรับปริมาณผู้ใช้งานจำนวนมากได้เป็นอย่างดี
- การทำ High Availability (HA) ให้กับส่วนที่สำคัญ เพื่อให้ระบบสามารถให้บริการได้อย่างต่อเนื่องโดยมีระยะเวลาการให้บริการไม่ได้ (Downtime) น้อยที่สุด
- การเลือกใช้ซอฟต์แวร์เสรี (Free Software) และ ซอฟต์แวร์โอเพ่นซอร์ส (Open Source) ทำให้หน่วยงานลูกค้าสามารถประหยัดค่าใช้จ่ายด้านซอฟต์แวร์ได้เป็นอย่างมาก ซึ่งบางส่วนยังช่วยประหยัดไปถึงค่าอุปกรณ์ฮาร์ดแวร์ด้วย เช่น การใช้งานซอฟต์แวร์กระจายภาระงาน (Load-Balancing Software) แทนการใช้งานฮาร์ดแวร์การภาระงาน (Load-Balancing Hardware) เป็นต้น
สถาปัตยกรรมของระบบ
- Load Balancer Tier จำนวน 2 โหนด ทำหน้าที่กระจายภาระงานให้กับเครื่องเว็บเซิร์ฟเวอร์
- Web Server Tier จำนวน 4 โหนด ทำหน้าที่ให้บริการเว็บ และภาพถ่ายดาวเทียม
- Database Tier จำนวน 1 โหนด ทำหน้าที่จัดเก็บข้อมูลที่เกี่ยวข้องกับภาพถ่ายดาวเทียม
- Develooer Tier จำนวน 1 โหนด ทำหน้าที่สนับสนุนการพัฒนาซอฟต์แวร์
- Lustre File System Tier จำนวน 4 โหนด ทำหน้าที่จัดเก็บภาพถ่ายดาวเทียม
ระบบไฟล์แบบคลัสเตอร์
Lustre คือสถาปัตยกรรมการจัดเก็บข้อมูลแบบคลัสเตอร์ ซึ่งเป็นการรวบรวมพื้นที่ย่อย ๆ ให้เป็นพื้นที่ขนาดใหญ่ ทำให้สามารถใช้งานข้อมูลร่วมกันได้ และยังเพิ่มประสิทธิภาพในการอ่าน/เขียนข้อมูลอีกด้วย โดย Lustre มีส่วนประกอบพื้นฐานดังนี้
องค์ประกอบและการทำงาน
- Metadata Server (MDS) เป็นเครื่องเซิร์ฟเวอร์ที่สร้างเมตาดาต้าไปจัดเก็บยังหน่วจัดเก็บข้อมูล (MDTs) ทำหน้าที่ จัดการ การอ่านเขียนข้อมูล และจัดการไดเรคทอรีในระบบไฟล์
- Metadata Targets (MDT) เป็นหน่วยจัดเก็บเมตาดาต้า เช่น ชื่อไฟล์, ไดเรกทอรี, สิทธิ์ และรูปแบบไฟล์ เป็นต้น บนเครื่อง MDS
- Object Storage Servers (OSS) เป็นเครื่องเซิร์ฟเวอร์ที่เชื่อมต่อกับหน่วยจัดเก็บข้อมูลย่อย (OSTs) ทำหน้าที่ให้บริการไฟล์ I/O และการร้องขอผ่านเครือข่าย
- Object Storage Target (OST) เป็นหน่วยจัดเก็บไฟล์ข้อมูลบนหนึ่งหรือหลาย ๆ เครื่อง OSS
- Lustre clients เป็นเครื่องไคลเอ็นท์ที่ร้องขอการอ่านเขียนไฟล์บนระบบ Lustre โดยเครื่องไคลเอ็นท์ต้องทำการเชื่อมต่อมายังเครือง MDS ก่อน
นอกจากนี้ทางบริษัทคลัสเตอร์คิทจำกัด ยังได้รับความไว้วางใจจากสำนักพัฒนาเทคโนโลยีอวกาศและภูมิสารสนเทศ (องค์การมหาชน) ให้เป็นผู้บำรุงรักษาระบบเว็บคลัสเตอร์ ตั้งแต่เริ่มต้นโครงการ ฯ จนถึงปํจจุบัน