Linux Web Clustering
- ระยะเวลา: 18 ชั่วโมง (3 วัน)
- ราคา: 10,700 บาท (รวมภาษีมูลค่าเพิ่มแล้ว)
- รายละเอียดหลักสูตรรูปแบบ PDF
รายละเอียดของหลักสูตร
หลักสูตรนี้ กล่าวถึงหลักการทำงานของระบบเว็บคลัสเตอร์ ที่ใช้ในงานให้บริการเว็บไซต์สำหรับเว็บขนาดใหญ่เพื่อรองรับผู้ใช้งานจำนวนมาก เป็นหลักสูตรที่เน้นการปฎิบัติใช้งานจริง โดยเนื้อหาครอบคลุมตั้งแต่กระบวนการออกแบบ การติดตั้ง การสร้างระบบคงอยู่สูง (High Availability - HA) ทฤษฎีกระจายภาระงาน (Load balancing) ด้วย Linux Virtual Server (LVS) และ HAProxy การใช้ memcache ในการจัดการ session ข้ามเครื่อง การติดตั้งระบบไฟล์แบบกระจาย GlustreFS เพื่อให้ปรับปรุงไฟล์ทีเดียวแล้วกระจายสำเนาไปยังเว็บเซิร์ฟเวอร์ทุกเครื่อง การปรับแต่งความปลอดภัยของระบบ และมีการปรับพื้นฐานทฤษฎีระบบเครือข่ายในส่วนที่เกี่ยวข้องกับเว็บคลัสเตอร์ เช่น Mac Address, ARP Protocol, Public และ Private Network เป็นต้น
หลักสูตรนี้เหมาะสำหรับ
ผู้ดูแลระบบเว็บ องค์กรที่ให้บริการเว็บ และผู้ที่สนใจ
วัตถุประสงค์
- เพื่อให้ผู้เข้าอบรมมีความรู้ความเข้าใจในหลักการออกแบบเว็บคลัสเตอร์
- เพื่อให้ผู้เข้าอบรมทราบถึงความแตกต่างของวิธีการกระจายภาระงานในแบบต่าง ๆ
- เพื่อให้ผู้เข้าอบรมสามารถนำไปประยุกต์ใช้งานได้จริง
ความรู้พื้นฐาน
ผู้เข้าอบรมต้องมีความรู้ความสามารถในการติดตั้ง Linux Server หรือผ่านหลักสูตร Linux Administration มาก่อน และควรมีความเข้าใจเรื่องระบบเครือข่ายพื้นฐาน
รูปแบบการสอน
บรรยายและปฏิบัติการ โดยใช้ระบบคอมพิวเตอร์แบบเสมือน (Virtual Machine) เพื่อต่อเป็นระบบคลัสเตอร์
ซอฟต์แวร์ที่ใช้สอน
- ระบบปฏิบัติการลีนุกซ์ CentOS-7
เนื้อหาหลักสูตร
วันที่ 1
เช้า
- รู้จักกับระบบเว็บคลัสเตอร์
- เว็บคลัสเตอร์คืออะไร
- รูปแบบการกระจายภาระงานของเว็บ (Web Load Balancing)
- DNS Round Robin
- Scale out
- Hardware Load Balancing
- Software Load Balancing
- สถาปัตยกรรมและหลักการออกแบบเว็บคลัสเตอร์
- ขั้นตอนการติดตั้งระบบปฏิบัติการ Linux
- Workshop 1: ประกอบคลัสเตอร์และติดตั้งระบบปฏิบัติการ Linux
- การตั้งค่า SSH ให้ทำงานแบบ Single Sign On with Public key Infrastructure (PKI)
- Workshop 2: ปรับแต่งการเชื่อมต่อภายในระบบคลัสเตอร์และทบทวนคำสั่งที่เกี่ยวข้อง
บ่าย
- ทบทวนความรู้ทฤษฎีระบบเครือข่ายในส่วนที่เกี่ยวข้องกับระบบเว็บคลัสเตอร์
- MAC Address
- ARP Protocol
- Public และ Private Network
- ทบทวนเรื่อง Web Server
- การทำงานของ Web Server
- Configuration ที่สำคัญของ Web Server
- การกระจายภาระงานด้วย Linux Virtual Server (LVS)
- รู้จักกับ Linux Virtual Server
- รู้จักกับ LVS Scheduling Algorithm ประเภทต่าง ๆ
- ทฤษฎีการกระจายภาระงาน (Load Balancing) เบื้องต้น
- การปรับแต่งเว็บคลัสเตอร์แบบ NAT
- การปรับแต่งเว็บคลัสเตอร์แบบ Direct Route
- หลักการของ Virtual IP
- MAC Spoofing
- การติดตั้งและใช้งาน arptable_jf เพื่อจัดการกับปัญหา MAC Address ในการทำงานของระบบเว็บคลัสเตอร์
- Piranha configuration tool
- Workshop 3: สร้างเว็บคลัสเตอร์แบบ NAT ด้วย Piranha GUI พร้อมทดสอบวิธีการกระจายแบบต่าง ๆ
- Workshop 4: สร้างเว็บคลัสเตอร์แบบ Direct Route ด้วย Piranha GUI พร้อมทดสอบวิธีการกระจายแบบต่าง ๆ
วันที่ 2
เช้า
- การกระจายภาระงานด้วยซอฟต์แวร์ HAProxy
- Workshop 5: การติดตั้งใช้งาน HAProxy
- เปรียบเทียบการทำงานระหว่า HAProxy และ LVS
- การทำระบบภาวะทนต่อความผิดพร่องสูง
- หลักการทำงานแบบ High Availability (HA) ของ Load Balancer
- การสร้างระบบ High Availability สำหรับระบบ Web Cluster
- Workshop 6: สร้างระบบ High Availability สำหรับระบบเว็บคลัสเตอร์ พร้อมทดสอบการทำงาน
บ่าย
- วิธีการจัดการไฟล์เว็บในรูปแบบต่าง ๆ เพื่อความสะดวกในการ Update ข้อมูลที่เดียว
- ความแตกต่างระหว่าง Share Disk และ Share Storage
- Network File System (NFS), ISCSI, GlusterFS (60 min)
- ISCSI รูปแบบใช้ เพื่อให้ทุกเครื่องเห็นที่เดียวกัน
- Workshop 7: การสร้าง Share Directory บน NFS และการทำ Auto mount
- รู้จักกับ GlusterFS
- การทำงานของ GlusterFS ในรูปแบบต่าง ๆ
- องค์ประกอบของเครื่องในระบบ
- Workshop 8: การติดตั้งและใช้งาน GlusterFS แบบ Replication (3 เครื่อง)การรักษาความปลอดภัยของระบบ (100 min)
วันที่ 3
เช้า
- รู้จักกับ Memcache
- Workshop 9: การใช้งาน Memcache ในการจัดการ session ภายในคลัสเตอร์
- แนะนำ Ganglia ระบบ Web Monitoring tools
- Workshop 10: ติดตั้งระบบ Web Monitoring
- การปรับแต่งประสิทธิภาพ
- การทดลองยิงโหลดด้วย awk
- วางแผนการรับโหลด
บ่าย
- การปรับแต่งประสิทธิภาพ(ต่อ)
- การปรับแต่ระบบปฏิบัติการเพื่อรองรับภาระงานที่เพิ่มขึ้น
- การใช้งาน MySQLTuner เพื่อปรับแต่งประสิทธิภาพให้ MySQL
- แนะนำระบบฐานข้อมูลแบบกระจายในแบบต่าง ๆ เช่น MarieDB Galera Cluster, MySQL Cluster