SQL Failover Cluster with AlwaysOn Availability Groups
Αυτό είναι το δεύτερο Post της τριλογίας SQL Failover Cluster with AlwaysOn Availability Groups. Είναι η ώρα της SQL.
- Windows Server 2012 R2 Failover Cluster with FreeNAS 9.3
- Microsoft SQL 2012 on Failover Cluster
- Add AlwaysOn AG to SQL Failover Cluster Instance
Microsoft SQL 2012 on Failover Cluster
Για το lab θα χρησιμοποιήσω τον Domain Administrator, αλλά δεν ενδείκνυται για παραγωγικό περιβάλλον!!!
Βάζουμε το ISO της SQL 2012 SP2 και ξεκινάμε με “new SQL server failover cluster installation”
Αφού περάσει τα checks δίνουμε key, για το lab φυσικά επέλεξα evaluation, και φτιάχνουμε στο install για να ξεκινήσουμε την εγκατάσταση.
Αγνοούμε επιδεικτικά το MSDTC error (ήδη από τον 2008) και αν δεν έχουμε errors προχωράμε. Επιλέγουμε το SQL Feature installation και μετά επιλέγουμε μόνο Database Engine Services με τις υποκατηγορίες και το management tools
Δίνουμε network name για το SQL Cluster και προχωράμε
Δίνουμε όνομα για το cluster resource group ή αφήνουμε το default (όπως έκανα κι εγώ για το lab)
Στο επόμενο βήμα μας ενημερώνει ότι δεν υπάρχει διαθέσιμος δίσκος για το SQL Cluster Disk, μιας και ο υπάρχον έγινε Cluster Quorum, οπότε πάμε να δώσουμε έναν ακόμη δίσκο στα Cluster Resources.
Προσθέτουμε έναν ακόμα δίσκο στο FreeNAS μιας και ένας θα χρειαστεί για το Cluster Quorum και ο άλλος για SQL Cluster Disk. Αφού το δώσουμε στο VM πηγαίνουμε στο web interface του FreeNAS και πάμε στο Storage/Volume manager, διαλέγουμε τον δίσκο δίνουμε όνομα, έδωσα sql, και πατάμε add volume
Μετά πάμε στο view volumes, επιλέγουμε το sql και πατάμε το create zvol κουμπί, όπως φαίνεται και στην εικόνα
Δίνουμε όνομα και size και πατάμε Add zvol
Μετά πάμε στο Sharing/ISCSI/extents και πατάμε add extent, δίνουμε όνομα, επιλέγουμε device το zvol που φτιάξαμε, διαλέγουμε Logical Block Size, για SQL DBs ενδείκνυται το 512, και πατάμε ok
Τέλος πάμε στο associated targets, πατάμε add target/extent και προσθέτουμε τον extent που φτιάξαμε.
Τώρα αν πάμε στους servers στο disk management και κάνουμε refresh τους δίσκους βλέπουμε τον νέο δίσκο και τον κάνουμε online, initiate και format, μόνο προσοχή να δώσετε allocation unit 512 για να συμβαδίζει με του FreeNAS αλλιώς η SQL θα γκρινιάξει.
Ανοίγουμε το Failover Cluster Manager/Storage/Disks και πατάμε add Disk και προσθέτουμε τον νέο δίσκο.
Και έχουμε έναν διαθέσιμο δίσκο στο Cluster μας
Πίσω τώρα στο SQL Setup, κάνουμε refresh και αυτόματα επιλέγει τον νέο δίσκο
Στη συνέχεια δίνουμε στατική IP στο SQL Cluster Network, φυσικά από το Domain subnet
Δίνουμε service accounts, για το Lab όπως είπα χρησιμοποιώ τον Domain Admin, αλλά ποτέ σε production.
Στο Server Configuration δίνουμε ποιοι θα έχουν admin rights στην SQL
Και στο Data Directories tab βλέπουμε ότι ήδη έχει επιλέξει το SQL Cluster Disk. Σε παραγωγικό περιβάλλον φυσικά θα έχουμε περισσότερους δίσκους για κάθε βάση/log.
Μετά φτάνομε στο ready to install και πατάμε install. Περιμένουμε να γίνει η εγκατάσταση αργά και βασανιστικά μέχρι να δούμε το υπέροχο Completed successful.
Και αν πάμε στο Failover Cluster Manager στους ρόλους θα δούμε το SQL Server
Εδώ τελειώνει η εγκατάσταση του πρώτου Node. Κάνουμε Mount το ISO της SQL στο δεύτερο node και ξεκινάμε το Setup. Επιλέγουμε Add node to a SQL Server failover cluster
Για το lab επιλέγω πάλι Evaluation, κάνω accept policies κλπ και πάμε για το installation.
Στο Cluster Node Configuration ελέγχουμε ότι έχει βρει το SQL cluster που δημιουργήσαμε και πατάμε Next
Στο Cluster Network Configuration ελέγχουμε ότι έχει βρει την IP του SQL Cluster και πατάμε next
Στο Service Accounts δίνουμε το password του Account Που έχουμε ήδη δηλώσει για SQL Engine & Agent
Περνάμε τους ελέγχους και πατάμε install για να προσθέσει το Node στο Cluster και περιμένουμε μέχρι να να δούμε το Completed successful μήνυμα.
Πάμε τώρα να δοκιμάσουμε ότι το SQL Role Μπορεί να κάνει failover και στα δύο Nodes.
Ανοίγουμε το Failover Cluster Manager πηγαίνουμε στο Roles, επιλέγουμε το “SQL Server …”, δεξί click / Move και πατάμε “Select Node…”
Διαλέγουμε το δεύτερο Node και πατάμε OK
Περιμένουμε στο Status να γίνει Pending και μετά Running. Πλέον στο “Owner Node” πρέπει να αναφέρει στο δεύτερο Node, στο Lab, Win2012R202
Pantelis Apostolidis is a Sr. Specialist, Azure at Microsoft and a former Microsoft Azure MVP. For the last 20 years, Pantelis has been involved to major cloud projects in Greece and abroad, helping companies to adopt and deploy cloud technologies, driving business value. He is entitled to a lot of Microsoft Expert Certifications, demonstrating his proven experience in delivering high quality solutions. He is an author, blogger and he is acting as a spokesperson for conferences, workshops and webinars. He is also an active member of several communities as a moderator in azureheads.gr and autoexec.gr. Follow him on Twitter @papostolidis.