Windows Management Instrumentation là gì? Tổng quan về WMI
WMI là cách Microsoft triển khai kiến trúc WBEM để quản lý mạng cấp doanh nghiệp. Quản trị viên có thể sử dụng WMI để theo dõi, giám sát và điều khiển máy tính, thiết bị mạng và ứng dụng thuộc mạng doanh nghiệp qua Internet bằng trình duyệt Web tiêu chuẩn như Microsoft Internet Explorer. Hãy cùng tìm hiểu về WMI qua bài viết dưới đây!
WMI là gì?
WMI (Windows Management Instrumentation) là một phát minh công nghệ của Microsoft, nó chứa một bộ công cụ và tiện ích mở rộng cung cấp thông tin về desktop và server nằm trong mạng.
Bộ công cụ quản lý Windows (WMI) bao gồm một tập hợp các phần mở rộng của Windows Driver Model, cung cấp giao diện hệ điều hành để các thành phần của nó cung cấp cho chúng ta thông tin và các loại thông báo khác nhau.
WMI cho phép các ngôn ngữ script (chẳng hạn như VBScript hoặc Windows PowerShell) quản lý máy tính cá nhân và máy chủ Microsoft Windows, cả cục bộ và từ xa. WMI được cài đặt sẵn trên Windows 2000 và các hệ điều hành mới nhất của Microsoft. Nó cũng có sẵn dưới dạng tải xuống cho Windows NT, Windows 95 và Windows 98.
Microsoft cũng cung cấp một giao diện dòng lệnh cho WMI được gọi là Windows Management Instrumentation Command-line (WMIC).
WMI rất hữu ích trong mạng doanh nghiệp Windows, nơi nó làm giảm chi phí bảo trì và quản lý các thành phần mạng doanh nghiệp. WMI cung cấp:
- Một mô hình nhất quán về hoạt động, cấu hình và trạng thái của Windows.
- Một API COM để cho phép truy cập vào thông tin quản lý.
- Khả năng hoạt động với các dịch vụ quản lý Windows khác.
- Một kiến trúc linh hoạt và có thể mở rộng cho phép các nhà cung cấp có thể viết các nhà cung cấp WMI khác để hỗ trợ các thiết bị, ứng dụng mới và các cải tiến khác.
- Ngôn ngữ truy vấn WMI (WQL) để tạo các truy vấn chi tiết về thông tin.
- Một API dành cho các nhà phát triển ứng dụng quản lý để viết các tập lệnh Visual Basic hoặc Windows Scripting Host (WSH).
Kiến trúc WMI
1. WMI service
là sự triển khai của hệ thống WMI trong Windows. Đây là một quá trình chạy với tên hiển thị là “Windows Management Instrumentation” và hoạt động như một trung gian giữa các WMI provider, WMI repository và quản lý các ứng dụng. Nó chạy tự động khi khởi động.
2. Managed objects (Đối tượng được quản lý)
là bất kỳ thành phần hoặc dịch vụ logic hoặc vật lý nào có thể được quản lý thông qua WMI. Điều này bao gồm một loạt các thành phần vì về cơ bản bất kỳ tham số hoặc đối tượng nào có thể được truy cập bằng các công cụ Windows khác - chẳng hạn như màn hình hiệu suất - cũng có thể được truy cập bằng WMI.
3. WMI provider
là các đối tượng giám sát các sự kiện và dữ liệu từ một đối tượng cụ thể. Có nhiều loại WMI provider khác nhau. Trong đó một số thiết bị và Windows đi kèm với nhiều WMI provider tích hợp sẵn.
4. Classes (Các lớp)
được sử dụng bởi các nhà cung cấp WMI để truyền dữ liệu đến các dịch vụ WMI. Chúng chứa các sự kiện và thuộc tính cho phép thu thập và thiết lập dữ liệu thực tế. Các lớp hệ thống WMI được xác định trước và bắt đầu bằng dấu gạch dưới kép.
5. Method (phương thức) được gắn với các lớp cụ thể và cho phép các hành động được thực hiện dựa trên dữ liệu có trong chúng: ví dụ: các phương thức có thể được sử dụng để bắt đầu và dừng các quy trình trên các máy từ xa. Các phương thức có thể được truy cập thông qua ứng dụng kịch bản hoặc thông qua ứng dụng quản lý mạng.
6. WMI repository
là một cơ sở dữ liệu lưu trữ tất cả các dữ liệu tĩnh có liên quan đến WMI. Dữ liệu động không được lưu trữ ở đây mà được lưu trữ và ghi lại thông qua một lớp WMI provider.
7. CIM Object Manager
là một hệ thống nằm giữa một ứng dụng quản lý và các nhà cung cấp WMI. Nó yêu cầu dữ liệu từ các nhà cung cấp này và sau đó trả nó trở lại ứng dụng yêu cầu.
8. WMI API
cung cấp một cách để các ứng dụng truy cập vào cơ sở hạ tầng WMI độc lập với thiết bị.
9. WMI Consumer
là thực thể gửi truy vấn đến các đối tượng thông qua Object Manager. Thông thường, WMI Consumer là một ứng dụng giám sát, chẳng hạn như PRTG Network Monitor, một ứng dụng quản lý hoặc một tập lệnh, chẳng hạn như tập lệnh PowerShell.
WMI hoạt động như thế nào?
Khi các thiết bị trên mạng hoạt động, các cài đặt, thông số và trạng thái khác nhau có thể được đo và tạo tại bất kỳ thời điểm nào. Ví dụ: ổ đĩa cứng có tổng dung lượng lưu trữ, dung lượng lưu trữ đã sử dụng, dung lượng lưu trữ trống hoặc nhiệt độ bên trong. Các giá trị này là động và thay đổi theo cách sử dụng hệ thống. Tại bất kỳ thời điểm nào, các bài đọc vẫn tồn tại cho dù có ai để ý đến chúng hay không.
Nền tảng WMI cung cấp một cách thống nhất để tạo và thực thi các tập lệnh đọc và trong một số trường hợp, có thể thay đổi các cài đặt như vậy mà không cần cài đặt thêm tác nhân phần mềm hoặc màn hình. Trong trường hợp của ổ cứng, WMI provider sẽ có thể trả lời yêu cầu về nhiệt độ của ổ cứng cũng như gửi cảnh báo đến WMI Object Manager nếu nhiệt độ vượt quá mức đặt trước.
Ngoài ra, đối với các ứng dụng quản lý, nền tảng WMI cung cấp Giao diện lập trình ứng dụng (API) ở cấp WMI Object Manager để không cần phải hiểu chi tiết cụ thể của từng WMI provider. Ví dụ, ứng dụng quản lý chỉ cần gọi Object Manager chứ không cần truy vấn trực tiếp ổ cứng.
Khi một thiết bị được truy vấn hoặc một sự kiện được kích hoạt, dữ liệu sẽ truyền qua kiến trúc tiêu chuẩn của thiết bị được quản lý thông qua WMI provider của nó đến WMI Object Manager và tới WMI consumer. Toàn bộ cơ sở hạ tầng này được chuẩn hóa trên các thiết bị và nền tảng để bất kỳ phần mềm quản lý doanh nghiệp hỗ trợ WMI nào cũng có thể truy cập dữ liệu được thu thập trên bất kỳ thiết bị hỗ trợ WMI nào mà không cần biết bất kỳ điều gì về các thiết bị hoặc cấu trúc mạng giữa chúng. WMI có sẵn trên bất kỳ máy tính Windows hiện tại nào và do đó có thể được quản lý thông qua WMI.
Nếu bạn yêu cầu các tùy chọn cấu hình và dữ liệu phức tạp hơn và bạn vận hành một môi trường hệ điều hành Windows lớn, thì WMI là lựa chọn phù hợp. Nó sẽ cung cấp cho bạn một khuôn khổ mạnh mẽ để hợp lý hóa việc giám sát và quản lý môi trường hệ điều hành Windows của bạn. Nhược điểm là phức tạp hơn và tăng chi phí hoạt động.