Tuesday, September 24, 2013

CẤU HÌNH HIGH AVAILABITITY CHO MÁY ẢO - PHẦN 2: CẤU HÌNH FAILOVER CLUSTER CHO HYPER-V TRÊN WINDOWS SERVER 2012

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
Dong Phuong Nam

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
Dong Phuong Nam

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
Dong Phuong Nam

Đặt tên cho iSCSI Virtual Disk là Disk1 - Nhấn Next
Dong Phuong Nam

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
Dong Phuong Nam

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
Dong Phuong Nam

Đặt tên cho iSCSI Target là Target1 - Nhấn Next
Dong Phuong Nam

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)
Dong Phuong Nam

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
Dong Phuong Nam

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
Dong Phuong Nam

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
Dong Phuong Nam

Nhấn nút Create
Dong Phuong Nam

Nhấn nút Close khi hoàn tất
Dong Phuong Nam

Kiểm tra iSCSI Virtual Disk và iSCSI Target đã được tạo như hình bên dưới
Dong Phuong Nam

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)
Dong Phuong Nam

Kiểm tra 3 iSCSI Virtual Disk đã được tạo nằm trong một iSCSI Target tên là Target1
Dong Phuong Nam

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
Dong Phuong Nam

Nhấn Yes để xác nhận khởi động service Microsoft iSCSI service
Dong Phuong Nam

Trong khung Target: Nhập IP của iSCSI Target Server (DC2012) là 172.16.0.10 - Nhấn Quick Connect
Dong Phuong Nam

Kiểm tra trạng thái kết nối cột Status hiển thị Connected - Nhấn Done
Dong Phuong Nam

Nhấn OK
Dong Phuong Nam

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
Dong Phuong Nam

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
Dong Phuong Nam


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
Dong Phuong Nam

Bấm phải chuột lên đĩa mới thứ nhất - Chọn Initialize Disk
Dong Phuong Nam

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
Dong Phuong Nam

Nhấn Next
Dong Phuong Nam

Chỉ định dung lượng volume là toan bộ dung lượng đĩa - Nhấn Next
Dong Phuong Nam

Sử dụng ký tự đĩa mặc định cho volume - Nhấn Next
Dong Phuong Nam

Định dạng volume kiểu NTFS, đặt volume label là ClusterDisk1, đánh dấu chọn Perform quick format - Nhấn Next
Dong Phuong Nam

Nhấn nút Finish khi hoàn tất.
Dong Phuong Nam

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
Dong Phuong Nam

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
Dong Phuong Nam

Chuyển sang HOST2, mở Disk Managerment,  chọn menu Action - Refresh
Dong Phuong Nam

Lần lượt chuyển các đĩa cứng mới sang trạng thái Online
Dong Phuong Nam

Kiểm tra HOST2 cũng đã nhận diện 3 đĩa cứng mới như hình dưới
Dong Phuong Nam

5- Tạo Failover Cluster
Chuyển sang HOST1, Mở Failover Cluster từ Server Manager và tạo một Failover Cluster mới
Dong Phuong Nam

Nhấn Next
Dong Phuong Nam

Lần lượt Add HOST1 và HOST2 vào Cluster  - Nhấn Next
Dong Phuong Nam

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
Dong Phuong Nam

Đặt tên tùy ý cho Cluster và chỉ định một địa chỉ IP ảo tùy ý cho Cluster - Nhấn Next
Dong Phuong Nam

Bỏ dấu check Add all eligible stotage to the cluster để đưa đĩa vào Cluster sau - Nhấn Next
Dong Phuong Nam

Chờ đợi quá trình tạo Cluster
Dong Phuong Nam

Nhấn nút Finish khi hoàn tất
Dong Phuong Nam

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
Dong Phuong Nam

Chọn cả 3 đĩa - Nhấn OK
Dong Phuong Nam

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)
Dong Phuong Nam

Chuyển ClusterDisk1 thành Cluster Shared Volume. Nhấn chuột phải lên ClusterDisk1 - Chọn Add to Cluster Shared Volume
Dong Phuong Nam

Thực hiện tương tự cho ClusterDisk2
Dong Phuong Nam

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)
Dong Phuong Nam

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
Dong Phuong Nam

Nhấn Next
Dong Phuong Nam

Chọn Use typical settings - Nhấn Next
Dong Phuong Nam

Nhấn Next
Dong Phuong Nam

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
Dong Phuong Nam

Kiểm tra ClusterDisk3, ở cột Assign To hiển thị là Disk Witness Quorum
Dong Phuong Nam

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
Dong Phuong Nam

Nhấn Next
Dong Phuong Nam

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
Dong Phuong Nam

Chọn cả 3 đĩa - Nhấn Next
Dong Phuong Nam

Nhấn Next
Dong Phuong Nam

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
Dong Phuong Nam

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
Dong Phuong Nam

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.
Dong Phuong Nam

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
Dong Phuong Nam

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
Dong Phuong Nam

Nhấn nút Finish
Dong Phuong Nam

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
Dong Phuong Nam

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)
Dong Phuong Nam

Sau đó paste file VHD vào thư mục SERVERCORE đã tạo
Dong Phuong Nam

Chờ đợi và kiểm tra file VHD trong thư mục SERVERCORE
Dong Phuong Nam

Tạo một máy ảo mới trong Cluster
Dong Phuong Nam

Chọn node chứa máy ảo là HOST2 - Nhấn OK
Dong Phuong Nam

Nhấn Next
Dong Phuong Nam

Đặ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
Dong Phuong Nam

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
Dong Phuong Nam

Chọn virtual switch cho máy ảo - Nhấn Next
Dong Phuong Nam

Chọn Use an existing virtual hard disk - Nhấn Browse và chọn file VHD đã copy ở trên - Nhấn Next
Dong Phuong Nam

Nhấn Finish
Dong Phuong Nam

Nhấn Finish
Dong Phuong Nam

Bật máy ảo. Bấm phải chuột lên máy ảo - Chọn Start
Dong Phuong Nam

Kết nối đến máy ảo.  Bấm phải chuột lên máy ảo - Chọn Connect
Dong Phuong Nam

Chờ máy ảo khởi động hoàn tất
Dong Phuong Nam

Logon vào máy ảo
Dong Phuong Nam


Dong Phuong Nam


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
Dong Phuong Nam

Chuyển sang HOST2, disbale card mạng giả lập máy này bị sự cố
Dong Phuong Nam

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
Dong Phuong Nam

10- Live Migration (Planned Failover)
Sang HOST2, Enable card mạng
Dong Phuong Nam

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
Dong Phuong Nam
Quan sát máy ảo SERVERCORE đang có Owner Node là HOST1
Dong Phuong Nam

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
Dong Phuong Nam

Chọn HOST2 - Nhấn OK
Dong Phuong Nam

Quan sát và chờ đợi quá trình Live Migration
Dong Phuong Nam

Khi hoàn tất, máy ảo SERVERCORE sẽ có Owner Node là HOST2
Dong Phuong Nam

Kết nối đến máy ảo
Dong Phuong Nam

Logon vào máy ảo, dùng lệnh IPCONFIG kiểm tra IP của máy ảo
Dong Phuong Nam

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
Dong Phuong Nam

Sang HOST1 stop dịch vụ Cluster
Dong Phuong Nam

Nhấn Yes
Dong Phuong Nam

Kiểm tra lệnh Ping -t vẫn không bị ngắt kết nối
Dong Phuong Nam

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
Dong Phuong Nam

Dong Phuong Nam
 (Theo MCTHub)

No comments:

Post a Comment