Keynote สรุปประเด็นสำคัญ NIPA Cloud “How we designed an OpenStack Public Cloud at Scale with Fabric Networking”
จบไปแล้วกับงานประชุมสุดยอด OpenInfra Summit Berlin 2022 ในวันที่ 9 มิถุนายนที่ผ่านมา อย่างที่ทราบกันดีว่า NIPA Cloud ได้เป็นตัวแทนบริษัทจากไทยและเอเชียตะวันออกเฉียงใต้เพียงบริษัทเดียวที่ได้เข้าร่วมและได้ขึ้นบรรยายในหัวข้อ “How we designed an OpenStack Public Cloud at Scale with Fabric Networking” สำหรับท่านใดที่สนใจอยากทราบว่าหัวข้อดังกล่าวเกี่ยวกับอะไร วันนี้ NIPA Cloud จะพาทุกท่านมาชมความภาคภูมิใจของเรากันแบบคร่าว ๆ เพื่อให้รู้จักกับเรามากขึ้นกัน โดย agenda จะมีทั้งหมด 5 หัวข้อ ได้แก่
- Introduction of NIPA‘s Public Cloud & Services
- Old Public Cloud Problems when scaling
- Underlay and Overlay Network Bottleneck
- Tungsten Fabric – Benefits and Features
- Multi AZs – a Complete Architecture of OpenStack & Tungsten Fabric
1. Introduction of NIPA‘s Public Cloud & Services
การบรรยายเริ่มด้วยการแนะนำตัวว่าเราเป็นใคร ทำอะไร มีผลิตภัณฑ์และบริการอะไรบ้าง โดย NIPA Cloud ก่อตั้งขึ้นเมื่อปี ค.ศ. 1996 หรือ พ.ศ. 2539 มีสำนักงานใหญ่ตั้งอยู่ที่ชั้น 4 อาคารโทรคมนาคม กรุงเทพมหานคร พันธกิจหลักของเราคือการให้บริการ public cloud, private cloud และ cloud storage อย่างไร้ขีดจำกัด โดยเรามีรางวัลต่าง ๆ ที่มาการันตีความสำเร็จ อีกทั้งยังเป็นพาร์ตเนอร์กับบริษัทระดับโลกมากมายเช่นกัน
2. Old Public Cloud Problems when scaling
ในหัวข้อที่ 2 เราได้พูดถึงว่าเราพบปัญหาอะไรใน public cloud ในชุดเก่า ซึ่งเราเจอปัญหาในส่วนของการเชื่อมต่อแบบ Layer 2 ไม่ว่าจะเป็นเรื่อง broadcast domain ที่มีขนาดใหญ่หากมีจำนวนอุปกรณ์เพิ่มขึ้น, ปัญหาเรื่อง Spanning Tree เมื่อเกิดปัญหา loop บน backbone network ที่มีผลกระทบเยอะ หาสาเหตุยาก ใช้เวลานานในการกู้ระบบกลับมาให้ทำงานปกติ และหากต้องการ scale ให้ได้ 100 racks จึงจำเป็นต้องมีการปรับการออกแบบการเชื่อมต่อ backbone network ด้วย เนื่องจากเดิมที่มีการเชื่อมต่อแบบ VSS/MLAG ที่ไม่รองรับการขยายทั้ง compute node และ storage node ให้เพิ่มเป็น 100 racks เราจึงได้ปรับการเชื่อมต่อ backbone network ให้เป็น Clos Topology (Spine-Leaf) ที่มีการใช้ BGP EVPN/VxLAN protocol ในการเชื่อมต่อระหว่างอุปกรณ์ จึงทำให้ปัญหาที่เคยเจอเหมือนกับการเชื่อมต่อในรูปแบบเดิมหมดไป ทั้งยังมีข้อดีอีกหลายข้อ เช่น Equal Cost Multi Path (ECMP), High Availability เป็นต้น
3. Underlay and Overlay Network Bottleneck
ลำดับถัดมาเราพูดถึงเรื่อง Underlay and Overlay Network Bottleneck ว่าการที่เราใช้การเชื่อมต่อ Clos Topology ที่กล่าวข้างต้นมีข้อดีและข้อเสียยังไง โดยข้อดี คือ มีความยืดหยุ่นสูง การเชื่อมต่อแบบ multihomed ระหว่างอุปกรณ์, รองรับการส่งข้อมูล (packet) แบบ ECMP (Equal Cost Multi Path), ออกแบบให้มีการใช้งานร่วมกับอุปกรณ์ยี่ห้ออื่นได้, ไม่มีปัญหาเรื่อง Layer 2 เช่น Spanning Tree, Broadcast domain และ blocking ส่วนข้อเสีย คือ มีความซับซ้อน ไม่รองรับ FCoE/FCIP และบริหารจัดการยากขึ้นหากมีจำนวนอุปกรณ์ที่เยอะ แต่ NIPA Cloud ก็ได้แก้ปัญหาเหล่านี้เป็นที่เรียบร้อย และพร้อมให้บริการคลาวด์ที่มีประสิทธิภาพกับคุณ
4. Tungsten Fabric – Benefits and Features
ในหัวข้อที่ 4 เราพูดถึงข้อดีและฟีเจอร์ของ Tungsten Fabric เริ่มจากข้อดี มีดังต่อไปนี้
- สามารถทำงานร่วมกับ OpenStack ได้เป็นอย่างดี
- รองรับการใช้งานร่วมกับ OpenStack ในรูปแบบ layer 3 (route) ซึ่งทำให้เราไม่เจอปัญหาเหมือนใน layer 2
- ง่ายต่อการใช้งานและรองรับการใช้งานหลายแพลตฟอร์ม เช่น OpenStack และ K8S และไม่มี vendor lock-in
- รองรับการติดตั้งเพื่อใช้งานที่หลากหลายทั้ง kernel, DPDK, SR-IOV และ Smart NIC
- รองรับการขยายที่ง่าย เนื่องจากเป็น container-based ส่วนในแง่ performance ก็รองรับทั้ง DPDK, SR-IOV and Smart NIC
ข้อเสียของ Tungsten Fabric นั้นมีเพียงข้อเดียว คือ ยากต่อการเรียนรู้และศึกษา ไม่ว่าจะเป็นเรื่องการติดตั้ง การดูแลรักษา และการพัฒนาต่อยอด ปัจจุบัน NIPA Cloud ได้พัฒนาและนำมาใช้งานบน NIPA Cloud Space (NCS) แล้ว และเรายังจะพัฒนาต่อยอดฟีเจอร์ต่างๆ อีกมากมาย เช่น
- Advance ACL : การรองรับการทำ security ที่มีความยืดหยุ่นมากขึ้น รองรับการสร้าง object เพื่อนำไปกำหนดใน policy rule ได้ เช่น subnet, service (TCP/UDP Port), service group (application group), action (Allow, Deny), Deployment (staging, dev, prod) และ Site (location) เป็นต้น
- Service Chains : รองรับการทำ service chains ไม่ว่าจะเป็น Layer 2 (transparent mode), Layer 3 (Route), Layer 3 (NAT)
- Elastic, Resilient VPN : รองรับการเชื่อมต่อเครือข่ายหลายแบบ ทั้ง L3VPN, Ethernet VPN (EVPN) และ Site-to-Site ด้วย
- Load Balancing (ECMP) : รองรับการทำ load balancing (ECMP) ของ compute node (vrouter) ที่ช่วยกระจายทราฟฟิกได้ดีขึ้นสำหรับการใช้งานร่วมกับ Virtual Network Fuction (NFV) เช่น virtual firewall และ virtual application load balancing อื่น ๆ ด้วย
- Support integrate with physical router : รองรับการใช้งาน BGP (Layer 3) กับอุปกรณ์ physical router เพื่อใช้งาน internet gateway (floating IPs) สำหรับ instance ได้
5. Multi AZs – a Complete Architecture of OpenStack & Tungsten Fabric
ในหัวข้อสุดท้าย เราพูดถึงการออกแบบโครงสร้าง OpenStack และ Tungsten Fabric จากเดิมที่รวมกันอยู่ที่ส่วนกลางอย่างเดียว แยกออกมาเป็น 2 โซน ได้แก่ Global Zone ที่เป็นโซนที่มีคอนโทรลเลอร์สำหรับจัดการส่วนต่าง ๆ ทั้งหมดของระบบ และ Edge Zone ที่เป็นโซนสำหรับคอนโทรลเลอร์ที่ค่อยจัดการเฉพาะระบบของในโซนดังกล่าว โดยปัจจัยหลักของการออกแบบ คือ หากเกิดปัญหาที่ Global Zone ที่ location ใด ๆ ก็จะไม่กระทบต่อการใช้งานของลูกค้า นอกจากนั้นแล้ว ยังได้ออกแบบให้ Data Center ที่อยู่ 2 ที่สามารถใช้งานเสมือนเป็น data center เดียวกัน ทำให้ลูกค้าสามารถมี VM ที่ใช้งานร่วมกันอย่างง่ายและมีการทำงานร่วมกันเพื่อรองรับการให้บริการที่ต่อเนื่อง
NIPA Cloud คลาวด์ไทยกับความภาคภูมิใจของชาติ
เป็นยังไงกันบ้างกับ 5 ประเด็นหลักจากหัวข้อบรรยาย “How we designed an OpenStack Public Cloud at Scale with Fabric Networking” ที่แสดงถึงความพยายามและความสำเร็จในวงการคลาวด์จากฝีมือคนไทย ที่นำมาซึ่งความภาคภูมิใจสู่สายตาชาวโลก NIPA Cloud หวังว่าทุกท่านจะรับรู้ถึงความเพียรพยายามนี้และเชื่อมั่นว่าคลาวด์ไทยก็เป็นคลาวด์ที่มีคุณภาพเหมือนกันกับคลาวด์ต่างชาติ เพื่อก่อให้เกิดแรงสนับสนุนในการพัฒนาและใช้บริการคลาวด์ไทย ต่อยอดให้วงการเทคโนโลยีในชาติเฟื่องฟูสู่สากลในอนาคต