ขอเปลี่ยนบรรยากาศ มา Review Server Platform บ้างนะครับ แก้เลี่ยนการรีวิวกองทัพหุ่นยนต์
ทีมงานของผมได้มีโอกาสร่วมติดตั้งระบบคลัสเตอร์สมรรถนะสูง PHOENIX ของ ภาควิชาเคมี คณะวิทยาศาสตร์ จุฬาลงกรณ์มหาวิทยาลัย ซึ่งเป็นระบบคลัสเตอร์แรกในประเทศไทย ที่สร้างด้วยแพลตฟอร์ม IBM iDataPlex แบบเต็มรูปแบบ วันนี้เลยจะลองนำเสนอรายละเอียดของเจ้า แพลตฟอร์มตัวนี้ว่าของจริงเป็นอย่างไรครับ ทั้งนี้ต้องขอขอบคุณ บริษัท eLife System จำกัด โดย 2BeSHOP.com และบริษัท IBM ประเทศไทย ในส่วนของฮาร์ดแวร์ต่างๆ รวมไปถึงรูปภาพเกือบทั้งหมดในบทความนี้ และทางภาควิชาเคมี ที่อนุญาตให้เขียนรีวิวฉบับนี้ครับ
iDataPlex เป็นแพลตฟอร์มเซิร์ฟเวอร์ใหม่ ในกลุ่ม System X (เซิร์ฟเวอร์ตระกูล Intel/AMD ของ IBM) เพื่อรองรับเซิร์ฟเวอร์จำนวนมากในพื้นที่จำกัด โดย iDataplex เหมาะกับงานประเภทที่ต้องการเซิร์ฟเวอร์จำนวนมากๆ เช่น การประมวลผลสมรรถนะสูง (HPC) หรือการทำเซิร์ฟเวอร์ฟาร์ม ลองมาดูสเปคของ iDataplex ตามเอกสารกันเลยดีกว่า
เซิร์ฟเวอร์ที่จะติดตั้งใน iDataplex จะต้องเป็นซีรีส์ dx360 ซึ่งจะมีหลายรุ่นหลายแบบให้เลือก โดยรายละเอียดคร่าวๆมีดังนี้
มาที่ระบบจริงกันบ้าง คลัสเตอร์ PHOENIX เป็น iDataplex ที่ใช้เซิร์ฟเวอร์ IBM dx360 M3 จำนวน 76 เครื่อง แต่ละเครื่องมี Intel Xeon E5620 2.4GHz จำนวน 2 CPU x 4 core รวมทั้งหมดเป็น 8 Core ต่อเครื่อง ทำให้ทั้งระบบมี 608 core สำหรับการประมวลผล และมีหน่วยความจำ 16GB ต่อเครื่อง ฮาร์ดดิสก์ภายในเครื่องละตัวขนาด 300GB พร้อม Power Supply สำรอง เรื่อง Power Supply สำรองนี้สามารถเลือกให้มีหรือไม่มีก็ได้ครับ เพราะในงานสายนี้ส่วนใหญ่จะมีการทำ Redundancy ในระดับซอฟต์แวร์อยู่แล้ว
ส่วนระบบเครือข่ายจะมีสองส่วน ส่วนแรกเป็น Gigabit Ethernet ไว้ใช้จัดการระบบ และมี Infiniband 40Gbps เป็นเครือข่ายสำหรับประมวลผลแอพลิเคชันอีกชุด จากรูปเส้นสีดำๆที่เสียบทางขวาคือสาย Infiniband ครับ ส่วนเส้นสีเหลืองๆคือสาย Gigabit Ethernet นอกจากนี้จะมีเครื่องควบคุมอีก 4 เครื่อง รวมแล้วจึงมี 80 x 8 = 640 CPU core ทั้งระบบ
จะเห็นว่า iDataplex จะมีการเดินสายแลน และสาย Infiniband ไว้ให้ทางด้านหน้า เซิร์ฟเวอร์ dx360 จะจัดวางอุปกรณ์สายทั้งหลายจะอยู่ด้านหน้าทั้งหมด ด้านหลังของเครื่องจะมีแต่สายไฟเท่านั้น ลดปัญหาที่เวลาซ่อมบำรุงระบบ จะต้องเดินสลับไปมาด้านหน้าและหลังเครื่อง
ด้านหลัง เป็นสายไฟล้วนๆ และมีปลั๊กไฟแบบ Power Plug ยื่นออกมาจากตู้ทั้งหมด 4 เส้น พร้อมเสียบไฟ
ตรงนี้อาจจะสงสัยว่าทำไมไม่มีรูปตอนประกอบเครื่องเข้าตู้ คือiDataPlex จะเป็นระบบแบบ Build-to-order ครับ เราบอกจำนวนเครื่อง รูปแบบของระบบเครือข่าย การเชื่อมต่อกับระบบภายนอก แล้วโรงงานจะ Build ระบบ รวมถึงการเดินสายทั้งหมดมาเสร็จสรรพตั้งแต่โรงงาน ขนมาทั้งตู้แบบนี้เลย แล้วก็จะมีคู่มือพร้อมกระดาษใบนึงแปะมา บอกว่าให้เอาสายแลนจากข้างนอกมาเสียบสวิตช์ตัวไหน ที่จุดไหนบ้าง นึกภาพเหมือนซื้อพลาสติกโมเดลแบบประกอบเสร็จแล้ว เหลือแต่ลงสีอะไรประมาณนั้นครับ
ตรงนี้ต้องระวังเหมือนกัน คือถ้าซื้อระบบนี้ ต้องตรวจดูให้ดีว่าจากที่จอดรถส่งของ มายังสถานที่ติดตั้ง ประตู ลิฟต์ ทางเดิน สามารถเข็น iDataplex เข้ามาได้หรือเปล่า หากไม่ได้คงต้องแจ้งทาง IBM ไว้ก่อน
เซิร์ฟเวอร์ Rack อีก 4 เครื่องที่เป็นเครื่องควบคุม จะเป็นรุ่น x3650 M3 นอกจากนี้จะมี SAN Storage ขนาดรวมประมาณ 20TB แยกไว้ต่างหากสำหรับเก็บข้อมูลด้วย ตรงนี้จริงๆแล้วจะรวมตู้กันมากับ iDataPlex ก็ได้ แต่แยกส่วนไว้เพื่อความเป็นสัดส่วนครับ
สายแลน 4 เส้นและสาย Infiniband อีก 4 เส้นจากเครื่องควบคุมจะเอามาเสียบไว้ในสวิตช์ภายใน (สายสีส้ม 4 เส้นคือ Infiniband จากเครื่องควบคุม) ตรงนี้จะมีกระดาษคู่มือบอกไว้อย่างที่บอกไว้แล้วข้างต้น แต่ลองดูแล้วจะเสียบรูอื่นก็ไม่เป็นไร
ตัวสวิตช์เครือข่าย Gigabit จะใช้วิธีเชื่อมกันแบบเป็น Tree คือมีสวิตช์หลัก 1 และตัวรองอีก 3 ตัว ตรงนี้ถ้าเอามาประมวลผลด้วยคงมีประเด็นเรื่องประสิทธิภาพ แต่เนื่องจากเอามาใช้จัดการเฉยๆจึงไม่มีประเด็นอะไร ในส่วนของ Infiniband ก็เชื่อมต่อในลักษณะเดียวกัน แต่จากการทดสอบประสิทธิภาพพบว่าได้ดีทีเดียว มีรายละเอียดท้ายๆบทความครับ
จากรูป จะดูเหมือนว่าตู้ iDataPlex จะดูใหญ่เท่ากับ 2 ตู้ Rack ใช่ไหมครับ จริงๆแล้ว iDataPlex จะใช้วิธี "หันข้าง" คือใส่ Server ทางด้านข้างๆตู้ครับ จากรูปด้านล่างจะเห็นว่าตู้ iDataPlex จะวางหันข้าง เนื่องจากตัว DX360M3 เองนั้นได้ออกแบบมาให้สั้นกว่า Server Rack ทั่วไปเพื่อให้สามารถระบายความร้อนได้เร็วกว่าปกติ ซึ่งจะเหมาะสมกว่าสำหรับระบบที่มีคอมพิวเตอร์จำนวนมากๆแบบนี้ นี่เป็นวิธีที่ทำให้ iDataPlex สามารถใส่เซิร์ฟเวอร์ได้กว่า 80 เครื่องในพื้นที่ตู้ Rack เดียวนั่นเอง
ตัวเครื่อง dx360 M3 เองถ้าดูจากด้านหน้าจะเหมือนเซิร์ฟเวอร์ 1U ปกติ แต่จะสั้นกว่าปกติครึ่งหนึ่ง ด้านหลังเครื่องจะคล้ายๆเบลดเซิร์ฟเวอร์ คือมีพอร์ตพิเศษที่เชื่อมเครื่องเข้ากับตัวระบบไฟของตู้ โดยช่องๆหนึ่งของ iDataPlex จะสูง 2U ในกรณีของระบบนี้จะใส่เครื่องเซิร์ฟเวอร์ไปเลย 2 เครื่องๆละ 1U แต่ถ้าต้องการก็จะมีเซิร์ฟเวอร์รุ่นอื่นๆที่มีขนาด 2U ซึ่งจะใส่ฮาร์ดดิสก์ได้เยอะขึ้น หรือรองรับการ์ด GPU ของ Nvidia ในตระกูล Tesla ได้
อันนี้รูปจากคลัสเตอร์ MAEKA ของมหาวิทยาลัยเกษตรศาสตร์ซึ่งมี NVIDIA Tesla ด้วยครับ ตัวนี้จริงๆติดตั้งไปก่อน PHOENIX แต่เนื่องจากใช้ตู้ Rack ธรรมดาจึงไม่นับเป็น iDataPlex เต็มรูปแบบ ส่วนของการ์ด Tesla จะกินพื้นที่ไปเลย 1U ตามรูป อันนี้แสดงให้เห็นว่าเราเอาเฉพาะเครื่อง dx360 M3 มาติดตั้งในตู้ Rack ธรรมดาได้เหมือนกัน
ภายในเครื่องก็จะมี Gigabit Ethernet 2 พอร์ต CPU Memory เป็นแบบปกติ จะเห็นว่า (น่าจะ) หาหน่วยความจำเพิ่มเติมมาใส่เองได้อยู่ ตามสเปคบอกว่าใช้ DDR3 Lowe Profile DIMM with ECC และด้านในก็จะมี Slot PCIe มาให้ ซึ่งในระบบนี้จะใช้สำหรับการ์ดเครือข่าย Infiniband
ด้านหน้าเครื่องมีช่องใส่ฮาร์ดดิสก์ พอร์ต USB และพอร์ตจอก็อยู่ด้านหน้าหมด และนอกจาก Gigabit Ethernet 2 พอร์ต แล้วยังมีแยกพอร์ต System Management มาให้ด้วย แต่สามารถปรับแต่งในไบออสได้ให้ใช้งาน Gigabit Ethernet พอร์ตแรกแทนไป จะได้ไม่ต้องเดินสายเพิ่มเอง
นอกจากประกอบและเดินสายแล้ว ยังมีการแปะ Label มาให้ด้วย อย่างในรูปนี้คือเครื่องที่ 70 ครับ
ในเรื่องของความร้อน อันนี้ผมไม่สามารถทดสอบได้ตรงๆ เพราะไม่รู้จะทดสอบยังไงครับ แต่ห้องที่ติดตั้งก็ไม่ใช่ Data Center เต็มรูปแบบ และแอร์ส่วนใหญ่เป็นแอร์บ้าน ก็เรียกว่าพอได้อยู่ (เครื่องชุดนี้ไม่มี Rear Door Heat eXchanger นะครับ) ส่วนการกินไฟก็ไม่รู้จะทดสอบยังไงเช่นกันครับ
เนื่องจากระบบใช้หน่วยประมวลผล Intel Xeon อยู่แล้วประสิทธิภาพของเซิร์ฟเวอร์แต่ละเครื่องจึงไม่น่ามีประเด็นอะไรมากนัก ในส่วนของประสิทธิภาพรวมของระบบเมื่อวัดจริง (Rmax) ด้วย HPC Benchmark มาตรฐาน High Performance Linpack ของ PHOENIX วัดได้อยู่ที่ 5.175 เทราฟลอป (Floating Point Operation Per Second: FLOPS) คิดเป็น 88% ของประสิทธิภาพที่ได้จากการคำนวณ (Rpeak) ซึ่งตามประสบการณ์ของผมถือว่าสูงมาก และ(น่าจะ)ติดอันดับแรกๆของประเทศไทยเลยทีเดียว ก็นับได้ว่า iDataPlex สามารถให้ประสิทธิภาพโดยภาพรวมได้สูงในระดับน่าพอใจครับ
ปิดท้ายด้วยรูปเครื่องเต็มๆ กับภาพจาก Ganglia Monitoring ให้เห็นว่าทำงานกันหนักจริงๆ รูปนี้แสดง 656 CPU เพราะมี 2 เครื่องไม่ได้ปิด Hyperthread ครับ เลยมี CPU เพิ่มขึ้นไปอีก 16 CPU จากที่ควรจะมี 640
จุดเด่นของ iDataPlex มีดังนี้
ข้อจำกัด
ชักจะยาวแล้ว ขอจบในส่วน iDataPlex เพียงเท่านี้ครับ ในส่วนของซอฟต์แวร์และการติดตั้งระบบ หากมีโอกาสอาจจะมาเขียนถึงครับ