1.Tổng quan
Bài viết này sẽ hướng dẫn các bạn cách migrate máy ảo từ host ESXi này sang host ESXi khác nhưng cùng datastore bằng tính năng vSphere vMotion Migration khi các bạn sử dụng hạ tầng VMware Esxi và Vcenter.
Trước khi đi vào phần cấu hình chúng ta cùng nhau xem vMotion là gì và vMotion có các dạng nào.
2.vMotion là gì?
VMotion hay còn được gọi là live migration, là một tính năng của ESX / ESXi và vCenter Server cho phép một máy ảo đang chạy có thể được di chuyển từ một máy chủ vật lý này đến một máy chủ vật lý khác mà không cần phải tắt nguồn máy ảo.
Sự di chuyển giữa hai máy chủ vật lý xảy ra không có thời gian chết và không làm mất kết nối mạng đến máy ảo. VMotion đáp ứng cho nhu cầu của một tổ chức nhằm duy trì SLA để đảm bảo tính sẵn sàng cho server.
Quản trị viên có thể dễ dàng dùng VMotion để loại bỏ tất cả các máy ảo từ một máy chủ ESX /ESXi để thực hiện bảo trì. Sau khi bảo trì hoàn tất và máy chủ được đưa trở lại trực tuyến, VMotion một lần nữa có thể được sử dụng để trả các máy ảo đó về với máy chủ ban đầu.
Ngay cả trong các hoạt động bình thường hàng ngày, VMotion có thể được sử dụng khi nhiều máy ảo trên cùng một máy chủ đang cạnh tranh tài nguyên. VMotion có thể giải quyết vấn đề bằng cách cho phép người quản trị di chuyển bất kì máy ảo đang chạy nào đang bị tranh chấp tài nguyên nhưng có nhu cầu sử dụng tài nguyên lớn hơn đến một máy chủ ESX/ESXi khác.
3.Có bao nhiêu loại vMotion
vMotion được chia làm 3 loại khác nhau tùy theo nhu cầu sử dụng của người dung như sau:
- vSphere vMotion Migration: đây là dạng vMotion được sử dụng trong trường hợp người dùng cần migration một hoặc nhiều máy ảo từ một host Esxi sang host Esxi khác và lưu ý rằng cả 2 host Esxi đều phải có chung datastore.
- vSphere Storage vMotion: đây là dạng vMotion được sử dụng trong trường hợp người dung cần migration một hoặc nhiều máy ảo từ một datastore này sang một datastore khác và lưu ý rằng các máy ảo khi được migrate bằng tính năng này vẫn sẽ nằm trên host Esxi ban đầu và chỉ thay đổi datastore lưu trữ.
- Both: đây là dạng vMotion được sử dụng trong trường hợp người dùng cần migration một hoặc nhiều máy ảo từ một host esxi với datastore riêng biệt sang một host esxi khác độc lập hoàn toàn.
Sau khi đã tìm hiểu lý thuyết về vMotion chúng ta sẽ vào phần chính của bài viết đó là phần cấu hình.
4.Sơ đồ mạng
Chi tiết sơ đồ mạng:
Chúng ta sẽ có đường truyền internet được cấu hình tại Port 2 của thiết bị tường lửa Sophos Firewall.
Lớp mạng LAN sẽ được cấu hình tại Port 1 của tường lửa Sophos Firewall với IP 172.20.10.10, đã được cấu hình DHCP để cấp phát IP và được kết nối xuống một switch access để kết nối các thiết bị.
Chúng ta có 2 máy chủ vật lý chạy hệ thống ảo hóa VMware:
Esxi01:
- Có IP là 172.20.10.51/24.
- Đang chạy 3 máy ảo là Nghia01-2, Nghia01-3, Nghia01-4 và các folder nơi mà chứa các tệp tin chạy ảo hóa của 3 máy ảo này đang được lưu tại Local-ESXi01 datastore.
- Ngoài ra Vcenter cũng được cài đặt trên đây với IP 172.20.10.94/24 để quản trị cả 2 host Esxi01 và Esxi02.
- Đang kết nối với 2 Datastore là Local-ESXi01 và một datastore theo dạng sharing là iSCSI Datastore với tên là VMFS-01 và có IP 172.20.10.14/24.
- Có một VMkernel port được cấu hình riêng để chạy dịch vụ vMotion với IP 172.20.10.151/24.
Esxi02:
- Có IP là 172.20.10.52/24.
- Đang kết nối với 2 Datastore là Local-ESXi02 và một datastore theo dạng sharing là iSCSI Datastore với tên là VMFS-01 và có IP 172.20.10.14/24.
- Có một VMkernel port được cấu hình riêng để chạy dịch vụ vMotion với IP 172.20.10.152/24.
5.Tình huống cấu hình
Như có để cập ở phần chi tiết sơ đồ mạng thì cả 3 máy ảo Nghia01-2, Nghia01-3, Nghia01-4 đều đang chạy trên host Esxi01 và các folder nơi mà chứa các tệp tin chạy ảo hóa của 3 máy ảo này đang được lưu tại Local-ESXi01 datastore.
Trong bài viết này chúng ta sẽ sử dụng tính năng Vsphere vMotion Migration để chuyển hạ tầng ảo hóa mà các máy ảo đang chạy từ host Esxi01 sang host Esxi02 mà vẫn giữ nguyên datastore nơi mà các máy ảo này đang lưu trữ.
Chúng ta có 2 điều cần chú ý điều đầu tiên là các máy ảo hiện tại đang lưu tại Local-ESXi01 datastore, đây là local datastore của host Esxi01 vì vậy chúng ta không thể migrate các máy ảo sang host Esxi02 được vì nếu muốn migrate chúng ta sẽ cần 2 host Esxi01 và Esxi02 đều phải sử dụng chung một datastore.
Do cả 2 host Esxi01 và Esxi02 đều đang sử dụng chung datastore VMFS-01 nên chúng ta sẽ cần phải chuyển các folder chứa các tệp tin chạy ảo hóa của các máy ảo từ Local-ESXi01 datastore sang VMFS-01 datastore bằng tính năng vSphere Storage vMotion trước.
Điều thứ 2 chúng ta cần chú ý là việc chuyển máy ảo từ host ESXi này sang host ESXi khác sẽ ảnh hưởng tới performance của kết nối mạng trong hệ thống vì vậy chúng ta cần phải thiết kế 1 kết nối mạng riêng biệt giữa hai host ESXi để chạy dịch vụ vMotion.
Lưu ý: Để sử dụng tính năng này chúng ta cần có license ít nhất là Essential Plus cho host ESXi và bắt buộc phải có vCenter.
6.Các bước thực hiện
- Tạo kết nối mạng chạy dịch vụ vMotion.
- Migrate các máy ảo sang VMFS-01 datastore bằng vSphere Storage vMotion.
- Migrate các máy ảo từ Esxi01 host sang Esxi02 host
7.Hướng dẫn cấu hình
7.1.Tạo kết nối mạng chạy dịch vụ vMotion
Chúng ta cần sử dụng cáp kết nối 2 port vật lý của 2 máy chủ chạy 2 host Esxi01 và Esxi02.
Sau đó chúng ta sẽ tạo 2 Vmkernel port để kết nối chúng lại.
Để thực hiện chúng ta cần đăng nhập vào trang quản trị của vCenter bằng tài khoản với quyền admin.
Tiếp theo vào biểu tượng Hosts and Clusters > esxi01 > Configure > Networking > Virtual Switches > nhấn Add Networking…
Bảng Add Networking hiện ra chúng ta sẽ cấu hình như sau.
Tại 1.Select connection type: chọn VMkernel Network Adapter và nhấn Next.
Tại 2.Select target device chọn New standard switch và nhấn Next.
Tại bước này chúng ta sẽ chọn card mạng vật lý trong vmware tương ứng port mà chúng ta đã cắm vào máy chủ ở bước đầu tiên.
Nhấn vào dấu + để thêm.
Bảng Add Physical Adapter to the Swtich hiện ra, chúng ta sẽ chọn card vmnic3 và nhấn OK.
Quay trở lại 3.Create a Standard Switch cần đảm bảo rằng card vmnic3 đã xuất hiện tại Active adapters.
Nhấn Next để tiếp tục.
Tại 4.Port propertise chúng ta khai báo các thông số sau:
- Network label: vMotion
- Enabled services: tích chọn vMotion, tùy chọn này có nghĩa là port này chỉ dùng để chạy dịch vụ vMotion.
- Nhấn Next.
Tại 5.IPv4 settings chọn Use static IPv4 settings và cấu hình các thông số sau:
- IPv4 address: 172.20.10.151
- Subnet mask: 255.255.255.0
- Default gateway: 172.20.10.152 đây là IP của card vMotion trên host Esxi02.
- Nhấn Next.
Tại 6.Ready to complete chúng ta sẽ review lại các tùy chọn và nếu không có thay đổi nhấn Finish.
Để kiểm tra card vMotion đã được tạo thành công chưa chúng ta vào biểu tượng Hosts and Clusters > esxi01 > Configure > Networking > Virtual Switches.
Nhấn vào biểu tượng expand tại vSwitch2 và thấy rằng card vMotion đã được tạo và các traffic sẽ đi ra ngoài bằng card vật lý là card vmnic3 mà chúng ta đã khai báo.
7.2. Migrate các máy ảo sang VMFS-01 datastore bằng vSphere Storage vMotion
Chúng ta sẽ chỉ thực hiện bước này nếu các folder chứa các tệp tin chạy ảo hóa của các máy ảo đang được lưu trên datastore local thứ mà host Esxi nơi chúng ta muốn chuyển đến không thể thấy được.
Trong bài lab này do các folder chứa các tệp tin chạy ảo hóa của các máy ảo Nghia01-2, Nghia01-3, Nghia01-4 đang được lưu trên Local-ESXi01 datastore một datastore local mà host Esxi02 không thấy được nên chúng ta sẽ cần chuyển chúng sang một datastore mà cả hai host Esxi01 và Esxi02 đều có thể thấy đó là VMFS-01 datastore.
Việc chuyển datastore cho các máy ảo đã được thực hiện thành công bằng tính năng vSphere Storage vMotion.
Các bạn có thể xem hướng dẫn migrate máy ảo từ datastore này sang datastore khác tại đây.
7.3.Migrate các máy ảo từ Esxi01 host sang Esxi02 host
Sau khi đã thỏa 2 điều kiện là các folder chứa tệp tin chạy ảo hóa của các máy ảo đã được lưu tại VMFS-01 datastore một datastore mà cả 2 host Esxi01 và Esxi02 đều sử dụng được và cũng đã có kết nối vMotion riêng biệt chúng ta thực hiện migrate các máy từ host Esxi01 sang Esxi02.
Để migrate chúng ta nhấn chuột phải vào máy Nghia01-2 và nhấn Migrate.
Bảng Migrate | Nghia01-2 hiện ra chúng ta sẽ cấu hình các thông số như sau.
Tại bước 1.Select a migration type: chọn Change compute resource only và nhấn Next.
Tại 2.Select a compute resour… chọn host esxi02 và đảm bảo rằng thông báo Compatibility checks succeeded xuất hiện đều này đảm bảo quá trình migrate sẽ không xảy ra lỗi, nếu thông báo lỗi xuất hiện tại đây chúng ta cần troubleshoot theo nó.
Tại 3.Select networks, nếu hạ tầng mạng và các virtual switch, port group tại 2 host là như nhau chúng ta chỉ cần chọn card mạng tương tự cho máy ảo sẽ được migrate.
Ví dụ trong bài lab này hạ tầng mạng, virtual switch, port group của 2 host Esxi01 và Esxi02 là giống nhau hoàn toàn thì nếu tại host Esxi01 máy ảo Nghia01-2 đang chạy card mạng Production (cột Source Network) thì tại host Esxi02 chúng ta cũng chỉ cần khai báo card mạng Production tại Destination Network lúc đó khi migrate qua vMotion sẽ tự động gán card Production vào máy ảo này.
Nếu hạ tầng mạng, virtual switch, port group trên host Esxi02 khác với Esxi01 chúng ta cần chọn card mạng tương ứng cho máy ảo mà chúng ta sẽ migrate.
Ví dụ nếu tại host Exsi01 máy ảo Nghia01-2 đang chạy card Production và tại host Esxi02 cũng là card Production này nhưng chúng ta đặt khác tên thì chúng ta cần phải chọn đúng card tương ứng tại Destination Network.
Đảm bảo rằng thông báo Compatibility checks succeeded xuất hiện đều này đảm bảo quá trình migrate sẽ không xảy ra lỗi, nếu thông báo lỗi xuất hiện tại đây chúng ta cần troubleshoot theo nó.
Tại 4.Select vMotion priority chọn Schedule vMotion with high priority (recommended) và nhấn Next.
Tại 5.Ready to complete chúng ta sẽ review lại các tùy chọn và nếu không có thay đổi nhấn Finish.
Sau khi nhấn Finish chúng ta chú ý tại Recent Tasks chúng ta thấy task migrate chúng ta đang được thực hiện với thanh % tại cột status thể hiện quá trình migrate đã được bao nhiêu %.
Chờ một khoản thời gian chúng ta sẽ thấy xuất chữ Completed tại cột status ở task migrate trong Recent Tasks tức là quá trình migrate đã thành công.
Và chúng ta nhìn vào Hosts and Clusters chúng ta sẽ thấy rằng máy ảo Nghia01-2 đã được migrate sang host Esxi02 và khi nhấn vào máy ảo Nghia01-2 tại bảng Summary các bạn cũng thấy rằng thông tin Host của máy ảo là Esxi02.
Để chuyển 2 máy ảo còn lại chúng ta sẽ thực hiện lại phần 7.3.
Kết quả là đã chuyển thành công.