GiámsátHyper-Vbằngdònglệnh(Phần3): Kiểm
tra trạngthái máy ảo
Các câu lệnh tìm lỗi
Các nhà quản trị thường phụ thuộc vào lệnh ping để kiểm thử kết nối của máy chủ.
Rất đơn giản. Thực hiện lệnh ping đến máy và xem có hồi đáp hay không. Mặc dù
lệnh ping hoạt động tương đối tốt, nhưng có một lệnh trong PowerShell tên là
Ping-VM cũng được thiết kế chuyên dụng để ping các máy ảo.
Trước hết, lệnh Ping-VM dường như dư thừa và cú pháp đôi chút phức tạp hơn so
với lệnh ping thông thường, nhưng câu lệnh có những ưu điểm riêng. Lệnh ping-
VM yêu cầu người dùng cung cấp tên máyảo muốn ping và tên của server chủ. Ví
dụ như, Nếu ta muốn ping một máyảo có tên Lab-DC đang hoạt động trên một
máy chủ tên là Hyper-V thì cấu trúc lệnh sẽ là:
Ping-VM “Lab-DC” –Server Hyper-V
Khi câu lệnh này được thực hiện, lệnh Ping-VM sử dụng các dịch vụ tích hợp trên
máy ảo để tìm Fully Qualified Domain Name và sau đó nó thực hiện một lệnh
ping ICMP.
Có hai lý do để sử dụng Ping-VM thay vì Ping. Đầu tiên, Ping-VM nhận diện
được máy ảo. Thứ hai, Ping-VM có thể chạy cới nhiều máyảo nhờ sử dụng các
wildcard. Để minh họa cho những khái niệm này, hãy cùng quan sát hình dưới
đây. Server chủ có một vài máyảo (Lab-). Ta sẽ thực hiện lệnh đối với những máy
ảo này. Ping-VM đã trả về thông tin trên 6 máyảo và thậm chí có thể xác định
những máyảo nào đã bị tắt.
Cũng có thể sử dụng Ping-VM để kiểm tratrạngthái máy ảo nằm trên máy host.
Để làm điều này, chỉ cần thay thế tên máyảobằng dấu hoa thị. Bạn thậm chí có
thể làm nhiều hơn và hiển thị một bản tin cảnh báo cho bất kỳ máyảo nào đang
chạy, nhưng lại không ping được. Câu lệnh là:
Get-VM –r | foreach-object {if ((Ping-VM $_).StatusCode –ne 0)
{“$($_.elementname) is inaccessible”} }
Câu lệnh không cho kết quả đầu ra nếu các máyảo được ping thành công.
Ngoài ra, lệnh Ping-VM còn được dùng để ping những máyảo trên nhiều host
Hyper-V. Chỉ cần cấp tên của mỗi máy host mà bạn muốn ping. Các tên máy phải
được ngăn cách bằng dấu phẩy. Ví dụ như, nếu bạn muốn ping tất cả những máy
ảo trên Hyper-V1, Hyper-V2 và Hyper-V 3 thì câu lệnh sử dụng là:
Ping-VM*-Server Hyper-V1,Hyper-V2,Hyper-V3
Kiểm tratrạngthái máy ảo
Không những có thể sử dụng Ping-VM để xem máyảo có hồi đáp hay không,
người dùng còn có thể sử dụng lệnh Test-VmHeartBeat. Giống như Ping-VM,
lệnh Test-VMHeartBeat phụ thuộc vào những dịch vụ tích hợp đang chạy trên
máy ảo được kiểm thử.
Cú pháp lệnh tương đối đơn giản. Người dùng phải chỉ định tên máyảo và thời
hạn. Thời hạn được tính bằng giây. Lệnh Test-VmHeartBeat sẽ kiểm tratrạngthái
mỗi 5 giây một lần cho đến khi hết thời gian qui định.Ví dụ như, Nếu bạn muốn
kiểm tratrạngthái máy ảo trong 5 phút, hãy đặt thời hạn là 300. Quan sát hình bên
dưới để thấy rõ hơn cho máyảo Lab-DC.
Giống như lệnh Ping-VM, người dùng có thể sử dụng Wildcard của tên máyảo và
chỉ định nhiều server chủ.
Do Ping-VM và Test-VMHeartBeat đều sử dụng để kiểmtra đáp ứng máyảo nên
người dùng có thể phân vân nên sử dụng lệnh nào.
Nếu muốn một báo cáo trạngthái nhanh từ toàn bộ máyảo (kể cả những máy
không hoạt động) thì tốt hơn hết nên sử dụng Ping-VM. Lý do là Test-
VMHeartBeat sẽ chặn và chờ hết thời hạn cho mỗi máyảo mà hiện bị tắt. Ví dụ
như, giả sử server chủ có 10 máy ảo, nhưng chỉ có 5 trong số đó đang hoạt động
lúc này. Ta thực hiện lệnh sau:
Test-VmHeartBeat*-Timeout 300
Câu lệnh sẽ mất tới đúng 25 phút để hoàn thành do lệnh Test-VM sẽ đợi cho đủ 5
phút trong khi kiểmtra mỗi máyảo bị tắt. Ngược lại, lệnh Ping-VM sẽ cung cấp
thông tin trạngthái cơ bản tương tự, nhưng sẽ hoàn thành gần như tức thì.
Mặc dù vậy, Test-VmHeartBeat lại đặc biệt hữu dụng khi các máyảo cần được
khởi động lần lượt. Ví dụ như, Lab-DC cần được khởi chạy trước Exchange
Server (Lab-E2K10). Sử dụng lệnh Test-VmHeartBeat để kiểmtra xem Lab-DC
có đang chạy trước Exchange Server hay không
. Giám sát Hyper-V bằng dòng lệnh (Phần 3): Kiểm tra trạng thái máy ảo Các câu lệnh tìm lỗi Các nhà quản trị thường phụ thuộc vào lệnh ping để kiểm thử kết nối của máy chủ. Rất. 6 máy ảo và thậm chí có thể xác định những máy ảo nào đã bị tắt. Cũng có thể sử dụng Ping-VM để kiểm tra trạng thái máy ảo nằm trên máy host. Để làm điều này, chỉ cần thay thế tên máy ảo bằng. cách bằng dấu phẩy. Ví dụ như, nếu bạn muốn ping tất cả những máy ảo trên Hyper-V1 , Hyper-V2 và Hyper-V 3 thì câu lệnh sử dụng là: Ping-VM*-Server Hyper-V1 ,Hyper-V2 ,Hyper-V3 Kiểm tra trạng thái