Windows Azure เพิ่มฟีเจอร์ด้าน High Availability ให้กับ VM และ SQL Server

Windows Azure

ไมโครซอฟท์ประกาศเพิ่มฟีเจอร์ใหม่ของ Windows Azure อีกหลายอย่าง สำหรับฟีเจอร์ใหญ่ๆ แบ่งได้เป็น 4 อย่างตามนี้ครับ

  1. SQL Server AlwaysOn Support
  2. Notification Hubs
  3. AutoScale
  4. Virtual Machines Load Balancer

SQL Server AlwaysOn Support

มันคือการใช้ฟีเจอร์ด้าน AlwaysOn Availability Group ของ SQL Server 2012 ขึ้นไป ที่ไมโครซอฟท์นำมาใช้กับแพลตฟอร์ม Windows Azure ด้วย

SQL Server AlwaysOn Availability Group คือโซลูชันของไมโครซอฟท์ในการทำ high availability กับฐานข้อมูล (ต่อคลัสเตอร์เพื่อป้องกันระบบล่ม โดยตัวไหนล่มไป ตัวอื่นยังทำงานแทนได้) หลักการทำงานของมันคือสร้าง replica หรือเซิร์ฟเวอร์สำรองขึ้นมาเตรียมรอทำงานแทนอยู่ตลอดเวลา (SQL Server 2012 สร้างได้ 5 ตัว, 2014 สร้างได้ 9 ตัว)

พอเอาฟีเจอร์นี้ขึ้นมาอยู่บน Windows Azure แปลว่าเราสามารถนำ VM ของ Azure มาทำเป็น replica ได้ และสามารถใช้ตัว Network Load Balancer ของ Azure มาใช้กระจายโหลดได้ด้วย

นอกจากการสำรองเซิร์ฟเวอร์เสมือนเพื่อรอทำงานแทนแล้ว ไมโครซอฟท์ยังเปิดให้ทำ failover (การย้ายระบบให้ไปรันที่อื่นเมื่อระบบหลักล่ม) จาก SQL Server ที่ติดตั้งในองค์กร (on premise) ไปรันบนกลุ่มเมฆที่เป็น Azure แทนได้ด้วย ช่วยให้องค์กรที่รัน SQL Server มีระบบสำรองหลายชั้นให้อุ่นใจมากขึ้น (เช่น มีระบบสำรองข้างใน ถ้าไม่พอก็สำรองบนกลุ่มเมฆอีกทอดหนึ่ง)

Notification Hubs

บริการใต้แบรนด์ Windows Azure มีหลากหลายมาก บริการลูกตัวหนึ่งที่ออกแบบมาสำหรับผู้พัฒนาแอพมือถือโดยเฉพาะคือ Windows Azure Mobile Services (WAMS) ซึ่งมีฟีเจอร์หนึ่งคือช่วยจัดการ notification ให้กับนักพัฒนาแอพด้วย (ยิง notification ผ่านเซิร์ฟเวอร์ของไมโครซอฟท์อีกที)

ฟีเจอร์ด้าน notification ตอนหลังพัฒนาจนเป็น Notification Hubs รองรับการแจ้งเตือนไปยัง Windows Phone, Windows 8, iOS, Android ซึ่งตอนนี้ก็พ้นสถานะเบต้า เข้าสู่สถานะการใช้งานจริงแล้ว (general availability) ตัวอย่างแอพของไมโครซอฟท์เองที่รันระบบแจ้งเตือนผ่าน Notification Hubs คือ Bing News บน Windows 8 และ Windows Phone 8 ครับ

AutoScale

ฟีเจอร์ที่สามเกี่ยวกับการขยายขีดจำกัดในการทำงาน (scalability) ของบริการบน Azure โดยฟีเจอร์ AutoScale ก็ทำงานตามชื่อคือเราสามารถตั้งให้ระบบที่รันบน Azure ขยายตัวเองได้อัตโนมัติตามเงื่อนไขที่กำหนดไว้ ทำให้แอดมินระบบไม่จำเป็นต้องมานั่งขยายเองอีกต่อไป

เงื่อนไขที่ตั้งได้ก็มีทั้งตามช่วงเวลา หรือตามโหลดของ CPU ที่ต้องการ และผู้ใช้งานสามารถดูกราฟย้อนหลังเพื่อวิเคราะห์การทำงานของระบบ AutoScale ได้ด้วย

Virtual Machines: Support for Configuring Load Balancer Probes

ฟีเจอร์อย่างที่สี่เกี่ยวกับ load balancer หรือตัวกระจายโหลดของเซิร์ฟเวอร์เสมือน โดยเพิ่มเรื่องของ probe เข้ามา

หลักการทำงานของ load balancer จะมีตัวตรวจสอบ (probe) คอยเช็คว่า VM ตัวไหนยังทำงานอยู่บ้างเป็นระยะ (ค่าตั้งต้นคือทุก 15 วินาที) และถ้า probe พบปัญหากับ VM ตัวใดตัวหนึ่ง ก็จะแจ้งให้ load balancer เลี่ยงการจ่ายงานให้กับ VM ตัวนั้นๆ

การมี probe ช่วยให้ load balancer ทำงานได้ดีขึ้น หลีกเลี่ยงปัญหา VM ตายได้มากขึ้น ซึ่ง probe ของ Azure ก็มีฟีเจอร์ทั้งการตั้งเงื่อนไขระยะเวลาตามต้องการ, การกำหนดจำนวน probe, รวมถึงการระบุหมายเลขพอร์ตที่ให้ probe คอยเช็คกับ VM นอกเหนือจากพอร์ต 80 ตามปกติด้วย

ฟีเจอร์เล็กอื่นๆ ของ Windows Azure ที่ประกาศในวันนี้คือการย้ายตำแหน่งของ Operation Logs/Alerts ให้มาอยู่ในส่วนของ Management Services ช่วยให้แอดมินสามารถตรวจสอบไฟล์ล็อกได้ง่ายขึ้น

ที่มา – Blognone ScottGu’s Blog

Leave a Reply