Date: มีนาคม 26, 2019
ป้ายกำกับ:SQL Server Failover Cluster
บรรลุความพร้อมใช้งานสูงของ SQL Server, การกู้คืนความเสียหายด้วยการรวมกลุ่มความพร้อมใช้งานตลอดเวลาและอินสแตนซ์คลัสเตอร์ Failover Cluster Server แบบ SANless
บทนำ
หัวข้อของการผสม SQL Server Failover Cluster Instances (FCI) กับ Always On Availability Groups (AG) นั้นมีการบันทึกไว้ค่อนข้างดี อย่างไรก็ตามการกำหนดค่าเอกสารเอกสารส่วนใหญ่ที่มีอยู่ซึ่งถือว่าส่วน FCI ของเซิร์ฟเวอร์ SQL ของโซลูชันใช้ประโยชน์จากที่เก็บข้อมูลที่ใช้ร่วมกัน ถ้าฉันต้องการสร้าง SANless SQL Server SANI โดยใช้ Storage Spaces Direct (S2D) ฉันจะยังสามารถเพิ่ม SQL Server AG ลงในมิกซ์ได้หรือไม่ น่าเสียดายที่คำตอบสำหรับคำถามนี้คือไม่ ณ วันนี้การรวมกันของ SQLI FCS ที่ใช้ S2D และ Always On AG ไม่รองรับ ก่อนหน้านี้ฉันบล็อกเรื่องข้อ จำกัด S2D นี้ที่นี่ อย่างไรก็ตามข่าวดีก็คือคุณสามารถสร้าง SANless SQL Server FCI กับ SIOS DataKeeper และยังคงใช้ประโยชน์จาก Always On AG สำหรับสิ่งต่าง ๆ เช่นผู้อ่านที่สอง คุณยังคงต้องปฏิบัติตามกฎเดียวกันกับที่ใช้เมื่อรวม SQLI FC Server ที่ใช้ SAN แบบดั้งเดิมและ Always On AGs แต่ส่วนใหญ่เพื่อให้บรรลุความพร้อมใช้งานสูงของ SQL Server นั้นเป็นเรื่องเดียวกัน การเรพลิเคท DataKeeper Synchronous มักใช้ระหว่างโหนดในดาต้าเซ็นเตอร์เดียวกันหรือภูมิภาคคลาวด์ แต่คุณอาจต้องการเรพลิเคตแบบอะซิงโครนัสกับโหนดเพิ่มเติมในภูมิภาคอื่นสำหรับการกู้คืนระบบ ในกรณีนี้หากคุณจำเป็นต้องนำโหนด DR ออนไลน์หลังจากความล้มเหลวที่ไม่คาดคิดคุณจะต้องยกเลิกการกำหนดค่า Always On AG และกำหนดค่าใหม่ ข้อกำหนดนี้คล้ายกับสิ่งที่ Microsoft เผยแพร่ที่นี่ในส่วนที่เกี่ยวกับการเรียกคืนสแนปชอตแบบอะซิงโครนัสของ SQL Server Always AG ทุกครั้งที่ทำงานภายใน VMs
กลุ่มห้องว่าง
โดยพื้นฐานแล้ว SANLess SQL Server Failover Cluster Instance ที่มี DataKeeper นั้นดูเหมือนว่าจะเป็นอินสแตนซ์เดียวของ SQL Server ตราบใดที่ยังมีกลุ่มตัวช่วยสร้างกลุ่ม Always On Availability การกำหนดค่าของ Always On AG นั้นเหมือนกับว่าคุณกำลังสร้าง Always On AG อยู่เสมอระหว่างอินสแตนซ์ของเซิร์ฟเวอร์ SQL แบบสแตนด์อโลน (ไม่รวมคลัสเตอร์) สองอินสแตนซ์ ความสับสนที่แท้จริงเกิดขึ้นในความจริงที่ว่าในการกำหนดค่านี้เซิร์ฟเวอร์ทั้งหมดที่อยู่ในคลัสเตอร์ล้มเหลวเดียวกัน แต่ SQLI FCI ของเซิร์ฟเวอร์นั้นได้รับการกำหนดค่าให้ทำงานบนโหนดคลัสเตอร์เท่านั้นที่ติดตั้ง SQL Server ไว้เป็นอินสแตนซ์ของเซิร์ฟเวอร์ SQL แบบคลัสเตอร์ โหนดอื่นอยู่ในคลัสเตอร์เดียวกัน อย่างไรก็ตาม SQL ถูกติดตั้งบนโหนดเหล่านั้นเป็นอินสแตนซ์ของเซิร์ฟเวอร์ SQL แบบสแตนด์อโลนไม่ใช่อินสแตนซ์ของคลัสเตอร์ มันค่อนข้างสับสน สิ่งสำคัญที่เกิดขึ้นคือ Always On AG ใช้ประโยชน์จากองค์ประชุมและผู้ฟัง WSFC ดังนั้นแบบจำลอง AG ทั้งหมดจำเป็นต้องอยู่ใน WSFC เดียวกันแม้ว่าโดยทั่วไปแล้วพวกเขาจะไม่ได้เรียกใช้อินสแตนซ์ที่คลัสเตอร์ของ SQL Server หากคุณสับสนอย่างสมบูรณ์ว่าไม่เป็นไรคนส่วนใหญ่จะสับสนเมื่อพวกเขาพยายามล้อมรอบการกำหนดค่าแบบไฮบริดนี้เป็นครั้งแรก ประโยชน์ที่แท้จริงในการกำหนดค่าเช่นนี้คืออินสแตนซ์ของคลัสเตอร์เซิร์ฟเวอร์ล้มเหลวของ SQL อาจเป็นวิธีที่ดีกว่าและคุ้มค่ากว่า (มากกว่านี้ในภายหลัง *) โซลูชันความพร้อมใช้งานสูงกว่า Always On AG ในหลาย ๆ สถานการณ์ แต่ขาดความสามารถ แบบจำลองสำรองที่อ่านได้ การเพิ่มแบบจำลองรอง Always On AG ที่อ่านได้กลายเป็นตัวเลือกที่ทำงานได้เพื่อตอบสนองความต้องการนี้ และการใช้ SIOS DataKeeper ไม่จำเป็นต้องใช้ SAN สำหรับ SQL Server FCI ซึ่งเปิดความเป็นไปได้ในการกำหนดค่า FCIs ของเซิร์ฟเวอร์ SQL โดยที่โหนดอยู่ในศูนย์ข้อมูลที่แตกต่างกัน AWS โปรดทราบว่าภาพด้านล่างเป็นเพียงหนึ่งการกำหนดค่าที่เป็นไปได้ สนับสนุนโหนดคลัสเตอร์ FCI หลายโหนด AG และหลายซ้ำทั้งหมด คุณถูก จำกัด ด้วยขีด จำกัด ที่กำหนดโดย SQL Server เวอร์ชันของคุณ บทความนี้ดูเหมือนจะเป็นเอกสารขั้นตอนการตั้งค่าค่อนข้างดี แน่นอนว่าแทนที่จะเป็นที่เก็บข้อมูลที่ใช้ร่วมกันสำหรับ SQL FCI คุณจะใช้ SIOS DataKeeper เพื่อสร้าง FCI ตามเอกสารที่นี่
กลุ่มห้องว่างพื้นฐาน
ตั้งแต่ SQL Server 2016 มีการลดขนาด“ กลุ่มความพร้อมใช้งานพื้นฐาน” ใน SQL Server Standard Edition ทำให้การกำหนดค่านี้เป็นไปได้แม้ใน SQL Server Standard Edition AG พื้นฐานถูก จำกัด ไว้ที่ฐานข้อมูลเดียวต่อกลุ่มความพร้อมใช้งานซึ่งเป็นแบบจำลองเดี่ยว (2 โหนด) อย่างไรก็ตามพวกเขาไม่สนับสนุนแบบจำลองรองที่อ่านได้ดังนั้นกรณีใช้งานในการกำหนดค่าแบบไฮบริดนี้มี จำกัด มาก
กลุ่มความพร้อมใช้งานแบบกระจาย
AGs แบบกระจายได้รับการแนะนำใน SQL Server 2016 นอกจากนี้ยังรองรับการกำหนดค่าแบบไฮบริดนี้ AGs แบบกระจายนั้นคล้ายกับ AGs ทั่วไป แต่แบบจำลองไม่จำเป็นต้องอยู่ในคลัสเตอร์เดียวกันหรือแม้แต่ในโดเมน Windows เดียวกัน Microsoft บันทึกกรณีการใช้งานหลักของกลุ่มความพร้อมใช้งานแบบกระจายดังนี้:
- การกู้คืนความเสียหายและการกำหนดค่าหลายไซต์ที่ง่ายขึ้น
- การโยกย้ายไปยังฮาร์ดแวร์ใหม่หรือการกำหนดค่าซึ่งอาจรวมถึงการใช้ฮาร์ดแวร์ใหม่หรือเปลี่ยนระบบปฏิบัติการพื้นฐาน
- การเพิ่มจำนวนของเรพลิคาที่อ่านได้เกินแปดในกลุ่มความพร้อมใช้งานเดียวโดยการขยายกลุ่มความพร้อมใช้งานหลายกลุ่ม
สรุป
หากคุณชอบแนวคิดของ SQL Server FCIs สำหรับความพร้อมใช้งานสูงของ SQL Server แต่ต้องการความยืดหยุ่นของแบบจำลองรองแบบอ่านอย่างเดียวโซลูชันไฮบริดนี้อาจเป็นสิ่งที่คุณกำลังมองหา FCIs ที่ใช้ SAN เซิร์ฟเวอร์ SQL แบบดั้งเดิมและ FCIs ที่ใช้พื้นที่เก็บข้อมูล Direct Spaces (S2D) แบบดั้งเดิม จำกัด คุณไว้ที่ศูนย์ข้อมูลเดียว SIOS DataKeeper ช่วยให้คุณเป็นอิสระจากข้อ จำกัด ของ SAN และเปิดใช้งานการกำหนดค่าเช่น SQL Server FCI ที่ครอบคลุมโซนความพร้อมใช้งานหรือพื้นที่คลาวด์ นอกจากนี้ยังกำจัดการพึ่งพา SAN ช่วยให้คุณสามารถใช้ประโยชน์จากอุปกรณ์เก็บข้อมูลความเร็วสูงที่เชื่อมต่อแบบโลคัลโดยไม่ต้องล้มเลิก SQL Server Failover Cluster Instance
* วิธีการประหยัดเงิน
ก่อนหน้านี้ฉันสัญญาฉันจะบอกวิธีประหยัดเงินด้วยการทำสิ่งนี้ทั้งหมดกับ SQL Server Standard Edition หากคุณสามารถใช้ชีวิตอยู่กับแบบจำลองที่อ่านได้ซึ่งเป็นจุดภาพรวมตามเวลาคุณสามารถข้าม Always On AGs ได้อย่างสมบูรณ์และใช้ฟีเจอร์ snapshot ด้านเป้าหมายของ SIOS DataKeeper เพื่อใช้แอปพลิเคชันสแน็ปช็อตที่สอดคล้องกัน หรือความพร้อม นี่คือวิธี …
สร้าง FCI เซิร์ฟเวอร์ SQL แบบ 2 โหนดพร้อม SQL Server Standard Edition และบันทึกจำนวนเงินบนใบอนุญาต SQL และยังคงทำซ้ำข้อมูลไปยังโหนดที่ 3 ภายนอกคลัสเตอร์สำหรับการรายงานหรือวัตถุประสงค์ DR หากคุณใช้สแน็ปช็อตของไดรฟ์ข้อมูลบนเซิร์ฟเวอร์ที่สามนี้สแน็ปช็อตเหล่านี้จะสามารถอ่านได้ทางด้านขวา ด้วยวิธีนี้คุณสามารถติดตั้งฐานข้อมูลเหล่านั้นจากอินสแตนซ์แบบสแตนด์อโลนของ SQL Server เพื่อเรียกใช้รายงานสิ้นเดือนคัดลอกไปยังที่เก็บถาวรหรือคุณอาจต้องการใช้สแน็ปช็อตเหล่านั้นเพื่อปรับปรุงสภาพแวดล้อม QA และ Test / Dev ข้อมูล. ฉันหวังว่าคุณจะพบแนวทางในการสร้างเพื่อให้บรรลุความพร้อมใช้งานสูงของ SQL Server, การกู้คืนจากความเสียหายด้วยการผสมผสานของกลุ่ม Always On Availability และ SANless SQL Server Failover Cluster Instance ที่มีประโยชน์