I- GIỚI THIỆU
Failover Cluster là chức năng cho phép cấu hình một nhóm server hoạt động song song cùng đảm nhận một dịch vụ nào đó (File Server, DHCP, WINS, Hyper-V, SQL …) nhằm tăng khả năng sẵn sàng và tính chịu lỗi cho dịch vụ. Trong Failover Cluster sẽ luôn có 1 server (node) đảm nhận dịch vụ để bảo đảm người dùng luôn có thể truy cập được dịch vụ trên Failover Cluster cho dù có server gặp sự cố. Trên Windows Server 2012, chức năng Failover Cluster cho phép tối đa 64 node và 4000 máy ảo trong một Cluster (so với 16 node và 1000 máy ảo của Windows Server 2008 R2).
Trong bài viết này tôi sẽ hướng dẫn thao tác cấu hình Failover Cluster cho dịch vụ Hyper-V nhằm tăng nhằm tăng khả năng sẵn sàng và tính chịu lỗi cho các máy ảo Hyper-V trên Windows Server 2012
II- TRIỂN KHAI CHI TIẾT
Bài LAB sử dụng 3 server
- DC2012: Domain Controller (IP address 172.16.0.10) (domain mcthub.local) chạy Windows Serrer 2012 đóng vai trò iSCSI Target Server cung cấp nơi lưu trữ (Storage) cho Failover Cluster.
- HOST1 (IP address 17216.0.31/16): Hyper-V server (Node 1) đã join domain và cài đặt Hyper-V role
- HOST2 (IP address 17216.0.32/16): Hyper-V server (Node 2) đã join domain và cài đặt Hyper-V role
Cả hai Hyper-V host là HOST1 và HOST2 cần tạo sẵn một virtual switch external ánh xạ vào card mạng vật lý trên server
Bài LAB gồm các bước chính sau đây
1- Cấu hình Storage cho Cluster
2- Kết nối đến storage
3- Cài đặt Failover Cluster
4- Tạo các volume cần thiết cho Failover Cluster
5- Tạo Failover Cluster
6- Add disk cho Failover Cluster
7- Kiểm tra tính tương thích của Failover Cluster
8- Tạo máy ảo trong Cluster
9- Kiểm tra tính chịu lỗi (Unplanned Failover)
10- Live Migration (Planned Failover)
1- Cấu hình hệ thống lưu trữ (Storage) cho Cluster
Do một Failover Cluster cần một hệ thống lưu trữ (Storage) chung để hoạt động nên trước khi cấu hình Failover Cluster bạn cần cấu hình hệ thống storage phù hợp. Trên Windows Server 2012 đã tích hợp sẵn dịch vụ storage iSCSI SAN (Bạn có thể tham khảo bào viết này).
Trên DC2012, để đảm nhận vai trò iSCSI Target Server, bạn cần kiểm tra và cài đặt iSCSI Targer server
Tiếp theo tôi sẽ tạo 3 iSCSI Virtual Disk để phục vụ cho việc lưu trữ dữ liệu của Failover Cluster. Mở Server Manager - Chọn File and Storage Services - Chọn iSCSI - Trong khung iSCSI VIRTUAL DISK - Chọn Task - New iSCSI Virtual Disk
Chọn một đĩa cứng còn nhiều dung lượng trống trên server này, tôi chọn đĩa E: - Nhấn Next
Đặt tên cho iSCSI Virtual Disk là Disk1 - Nhấn Next
Chỉ định dung lượng tùy ý tùy vào khả năng lưu trữ mà bạn muốn, tôi qui định dung lượng cho Disk1 là 30B - Nhấn Next
Do chưa tạo iSCSI Target nên tôi chọn New iSCSI taget để tạo iSCSI Target mới để chứa iSCSI Virtual Disk - Nhấn Next
Đặt tên cho iSCSI Target là Target1 - Nhấn Next
Nhấn nút Add để chỉ định iSCSI Initiator (iSCSI Initiator là các server được phép kết nối đến iSCSI Target để sử dụng các đĩa của dịch vụ storagre)
Trong khung Enter a value for the selected type: Chọn IP Address và nhập IP của Node 1 là 172.16.0.31 - Nhấn OK
Thực hiện tương tự để Add IP của Node 2 là 172.16.0.32 vào danh sách các IP được phép kết nối đến iSCSI Target - Nhấn Next
Hộp thoại Enable Authentication: Do không cần thiết cấu hình các phương pháp chứng thực khi kết nới đến iSCSI Target nên tôi bỏ qua hộp thoại này - Nhấn Next
Nhấn nút Create
Nhấn nút Close khi hoàn tất
Kiểm tra iSCSI Virtual Disk và iSCSI Target đã được tạo như hình bên dưới
Thực hiện tương tự, bạn tạo thêm 2 iSCSI Virtual Disk là Disk2 và Disk3 có cùng dung lượng nhưng gia nhập vào iSCSI Target đã tạo ở bước trước là Target1 (hộp thoại ở hình dưới)
Kiểm tra 3 iSCSI Virtual Disk đã được tạo nằm trong một iSCSI Target tên là Target1
2- Kết nối đến storage
Để sử dụng các iSCSI Virtual Disk đã tạo ở bước 1, các Hyper-V host cần kết nối đến iSCSI Target. Trên cả 2 máy HOST1 và HOST2 bạn thực hiện kết nối đến iSCSI Target bằng cách thực hiện các bước sau
Mở iSCSI Initiator
Nhấn Yes để xác nhận khởi động service Microsoft iSCSI service
Trong khung Target: Nhập IP của iSCSI Target Server (DC2012) là 172.16.0.10 - Nhấn Quick Connect
Kiểm tra trạng thái kết nối cột Status hiển thị Connected - Nhấn Done
Nhấn OK
3- Cài đặt Failover Cluster
Trên cả hai Hyper-V server là HOST1 và HOST2 bạn cần cài đặt chức năng Failover Cluster. Mở Server Manager - Chọn Manage - Add Roles and Features
Chấp nhận giá trị mặc định ở các hộp thoại trước, đến hộp thoại Select Features: Chọn Failover Clustering sau đó cài đặt thao các lựa chọn mặc định
4- Tạo các volume cần thiết cho Failover Cluster
Để Failover Cluster có thể tối ưu hoạt động, bạn cần chuẩn bị sẵn các volume để lưu trữ dữ liệu bao gồm
- Cluster Shared Volume (CSV): là một volume mà tất cả các Node trong một Cluster có thể truy xuất dùng để chứa các file VHD/VHDX cho máy ảo. Sử dụng CSV bạn có thể giảm bớt các các LUN (Logocal Unit Number) để chứa thông tin cho các máy ảo trong Failover Cluster
- Quorum Winess: Lưu trự các thông tin cấu hình trong Cluster để gia tăng tính chịu lỗi cho Cluster. Quorum bảo đảm tại một thời điểm chỉ một Node trong Cluster đảm nhận dịch vụ, và khi Node này gặp sự cố thì các node khác sẽ đảm nhận dịch vụ và cập nhật cấu hình trong Quorum. Khi cấu hình Quorum bạn có thể dành riêng một đĩa trong hệ thống Storage hoặc sử dụng một Shared Folder (trên một máy tính không thuộc Cluster). Trong bài viết này tôi sẽ sử dụng một đĩa (Disk3) để cấu hình Quorum witness
Trên HOST1, mở Disk Management (DISKMGMT.MSC) bạn sẽ thấy xuất hiện 3 đĩa mới (lưu ý tên đĩa có thể khác trên các máy tính khác nhau). 3 đĩa cứng này xuất hiện là do HOST1 đã kết nối (bước 2) vào iSCSI Target đã tạo ở bước 1. Bấm phải chuột lên đĩa mới thứ nhất - Chọn Online
Bấm phải chuột lên đĩa mới thứ nhất - Chọn Initialize Disk
Tạo volume trên đĩa thứ nhất: Bấm phải chuột lên vùng trống của đĩa mới thứ nhất - Chọn New Simple Volume
Nhấn Next
Chỉ định dung lượng volume là toan bộ dung lượng đĩa - Nhấn Next
Sử dụng ký tự đĩa mặc định cho volume - Nhấn Next
Định dạng volume kiểu NTFS, đặt volume label là ClusterDisk1, đánh dấu chọn Perform quick format - Nhấn Next
Nhấn nút Finish khi hoàn tất.
Nếu hộp thoại yêu cầu Format volume xuất hiện thì nhấn Cancel. Bạn kiểm tra Volume thứ nhất đã được tạo và định dạng hoàn tất
Thực hiện tương tự, bạn tạo 2 simple volume trên 2 đĩa cứng mới còn lại (đặt tên là ClusterDisk2 và ClusterDisk3) và định dạng chúng. Sau khi thực hiện kết quả sẽ như hình dưới
Chuyển sang HOST2, mở Disk Managerment, chọn menu Action - Refresh
Lần lượt chuyển các đĩa cứng mới sang trạng thái Online
Kiểm tra HOST2 cũng đã nhận diện 3 đĩa cứng mới như hình dưới
5- Tạo Failover Cluster
Chuyển sang HOST1, Mở Failover Cluster từ Server Manager và tạo một Failover Cluster mới
Nhấn Next
Lần lượt Add HOST1 và HOST2 vào Cluster - Nhấn Next
Hệ thống yêu cầu thực hiện quá trình kiểm tra tính tương thích của Cluster - Chọn No… (tôi sẽ kiểm tra tính tương thích sau) - Nhấn Next
Đặt tên tùy ý cho Cluster và chỉ định một địa chỉ IP ảo tùy ý cho Cluster - Nhấn Next
Bỏ dấu check Add all eligible stotage to the cluster để đưa đĩa vào Cluster sau - Nhấn Next
Chờ đợi quá trình tạo Cluster
Nhấn nút Finish khi hoàn tất
6- Cấu hình đĩa cho Failover Cluster
Trên HOST1, đưa các đĩa cứng đã kết nối từ hệ thống storage vào Failover Cluster
Chọn cả 3 đĩa - Nhấn OK
Kiểm tra 3 đĩa đã được đưa vào Cluster và cột Assign to hiển thị Availabale Storage (đĩa chưa được sử dụng)
Chuyển ClusterDisk1 thành Cluster Shared Volume. Nhấn chuột phải lên ClusterDisk1 - Chọn Add to Cluster Shared Volume
Thực hiện tương tự cho ClusterDisk2
Kiểm tra 2 đĩa ClusterDisk1 và ClusterDisk2 đã được chuyển thành Cluster Shared Volume (Cột Assign to hiển thị là Clusterd Shared Volume)
Tiếp theo bạn cần cấu hình Quorum Withness. Bấm chuột phải lên tên Cluster - Chọn More Action - Configure Cluster Quorum Settings
Nhấn Next
Chọn Use typical settings - Nhấn Next
Nhấn Next
Quan sát chương trình sẽ lấy đĩa cứng còn lại (ClusterDisk3) làm Quorum Witness - Nhấn Finish
Kiểm tra ClusterDisk3, ở cột Assign To hiển thị là Disk Witness Quorum
7- Kiểm tra tính tương thích của Failover Cluster
Chuyển sang HOST2, bạn có thể kiểm tra tính tương tính của Failover Cluster bằng cách bấm chuột phải lên tên của Failover Cluster - ChọnValidate Cluster
Nhấn Next
Chọn Run all test để kiểm tra tất cả các tiêu chí cần thỏa mãn- Nhấn Next
Chọn cả 3 đĩa - Nhấn Next
Nhấn Next
Chờ đợi quá trình kiểm tra, quá trình này có thể mất nhiều thời gian, bạn hãy kiên nhẫn và chờ đợi
Trong quá trình kiểm tra, trên HOST1 có thể thấy các đĩa bị chuyển trạng thái thành Offline, điều này không sao cả, bạn đừng nên lo lắng
Chờ đợi một lúc thì trên HOST1 bạn sẽ thấy các đĩa này được chuyển trạng thái thành Online.
Trên HOST2, khi quá trình kiểm tra hoàn tất, nhấn nút View Report để xem báo cáo
Bạn có thể xem qua báo cáo này và bảo đảm không có tiêu chí nào cho kết quả Failed là được - Đóng báo cáo lại và tiếp tục
Nhấn nút Finish
8- Tạo máy ảo trong Cluster
Chuyển sang HOST1, copy một đĩa cứng ảo (File VHD) tùy ý đã có chứa hệ điều hành
Mở thư mục C:\ClusterStorge\Volume1 (đây chính là ỗ đĩa thứ nhất trong hệ thống Storage), tạo một folder chứa máy ảo (tôi tạo FolderSERVERCORE)
Sau đó paste file VHD vào thư mục SERVERCORE đã tạo
Chờ đợi và kiểm tra file VHD trong thư mục SERVERCORE
Tạo một máy ảo mới trong Cluster
Chọn node chứa máy ảo là HOST2 - Nhấn OK
Nhấn Next
Đặt tên máy ảo là SERVERCORE, chỉ định thư mục chứa máy ảo là thư mục đã tạo ở trên - Nhấn Next
Qui định lượng bộ nhớ tùy ý cho máy ảo phụ thuộc vào phần bộ nhớ còn trống trên Hyper-V host của bạn - Nhấn Next
Chọn virtual switch cho máy ảo - Nhấn Next
Chọn Use an existing virtual hard disk - Nhấn Browse và chọn file VHD đã copy ở trên - Nhấn Next
Nhấn Finish
Nhấn Finish
Bật máy ảo. Bấm phải chuột lên máy ảo - Chọn Start
Kết nối đến máy ảo. Bấm phải chuột lên máy ảo - Chọn Connect
Chờ máy ảo khởi động hoàn tất
Logon vào máy ảo
Kiểm tra: Để kiểm tra tính chịu lỗi của Failover Cluster, có 2 cách là Unplanned Failover và Planned Failover
- Unplanned Faiolver có nghĩa là node đang đảm nhận dịch vụ máy ảo đột ngột gặp sự cố và khi đó node khác sẽ đảm nhận dịch vụ quản lý máy ảo
- Planned Failover có nghĩa là người quản trị chủ động tắt node đang quản lý máy ảo vì một lý do nào đó (sửa chữa phần cứng, bảo trì …) và chủ động chuyển (live migration) sang node khác mà không làm gián đoạn hoạt động của máy ảo
9- Kiểm tra tính chịu lỗi (Unplanned Failover)
Sang HOST1, bạn quan sát máy ảo SERVERCORE đang có Owner Node là HOST2
Chuyển sang HOST2, disbale card mạng giả lập máy này bị sự cố
Chuyển sang HOST1, bạn sẽ thấy trạng thái của HOST2 là Down, đợi một lúc bạn sẽ thấy máy ảo SERVERCORE tự động chuyển Owner Node thành HOST1 và tất nhiên, bạn có thể kết nối đến máy ảo và sử dụng bình thường, các dịch vụ trên máy ảo có thể bị gián đoạn trong thời gian ngắn thì thực hiện quá trình chuyển sang Node khác
10- Live Migration (Planned Failover)
Sang HOST2, Enable card mạng
Sang HOST1, Mở Failover Cluster, Chọn Nodes kiểm tra trạng thái của cả hai node HOST1 và HOST2 là Up
Quan sát máy ảo SERVERCORE đang có Owner Node là HOST1
Giả sử tôi có nhu cầu tắt HOST1 vì lý do nào đó như nâng cấp phần cứng hay bảo trì, để không làm gián đoạn hoạt động của máy ảo, tôi sẽ thực hiện di dời sống (live migration) máy ảo từ HOST1sang HOST2. Bấm chuột phải lên máy ảo SERVERCORE, chọn Move - Live Migration - Select Node
Chọn HOST2 - Nhấn OK
Quan sát và chờ đợi quá trình Live Migration
Khi hoàn tất, máy ảo SERVERCORE sẽ có Owner Node là HOST2
Kết nối đến máy ảo
Logon vào máy ảo, dùng lệnh IPCONFIG kiểm tra IP của máy ảo
Chuyển vể HOST2 thực hiện kiểm tra kết nối liên tục đến máy ảo bằng lệnh Ping -t
Sang HOST1 stop dịch vụ Cluster
Nhấn Yes
Kiểm tra lệnh Ping -t vẫn không bị ngắt kết nối
Trên HOST2 bạn vẫ có thể kết nối đến máy ảo và sử dụng máy ảo bình thường
(Theo MCTHub)
No comments:
Post a Comment