Introduzione a
WMI e WMIC
per la gestione di sistemi
PierGiorgio Malusardi
Evengelist – IT Professional
Microsoft
WMI Overview




Obbiettivi di WMI
Cos’è Windows Management
Instrumentation?
Operazioni di gestioni tipiche
Architettura di WMI
Obiettivi WMI


Gestione dell’Enterprise
Controllo e configurazione di sistemi e
applicazioni


Implementazione consistente
Unico punto di accesso
Cos’è WMI?




Strumento per facilitare la gestione
attraverso l’uso di uno schema
estensibile
Ricco insieme di eventi di gestione e
di interrogazione
Gestione da remoto
Gestibile via script
Architettura WMI
Ogni applicazione che comprende automation
Es. C/C++, VB, VBScript, Jscript, VBA, Perl
Applicazioni
Consumers
Applicazioni
COM
CIM
MOF
Providers
Windows Management Service
CIM.REP
%SystemRoot%\System32\WBEM\WinMgmt.exe
Win32 API
SQL Server
Registry
WDM
NT event
MSI
Active
Directory
.NET
Exchange
SNMP
PerfMon
Gestione di Windows con WMI
Applicazione di Gestione
Es. script
CIM
Providers
Oggetto
gestito
Oggetto
gestito
Oggetto
gestito
System
System
System
System
System
System
System
Il Common Information Model






Il modello ad oggetti
Gli schema CIM
Gli spazi dei nomi
I Provider WMI
Provider Standard WMI
MOF
Modello ad Oggetti

Classi



Propietà





Tipi di oggetti gestiti
Sotto classi
Chiave
Referenze
Qualificatori
Instanze
Metodi
Schema CIM
Core
schema
CIM_ManagedSystemElement
CIM_LogicalElement
Common
schema
CIM_LogicalDevice
CIM_MediaAccessDevice
Extensible
schema
CIM_DiskDrive
WIN32_DiskDrive
CIM_CDRomDrive
WIN32_CDRomDrive
Spazio dei nomi
\\Server1\Root\Cimv2:Win32_LogicalDisk.DeviceId='C:'
Provider WMI


Ruoli dei Provider
Tipi di Provider



Provider specifici per applicazioni
Provider Built-in
Quali provider sono installati?
Provider Standard WMI
Provider
Win32
MOF
DLL
Namespace
cimwin32.mof cimwin32.dll
root\cimv2
SNMP
snmpreg.mof
snmpincl.dll
root\snmp
Performance
counter
Registry
perf*.mof
wbemperf.dll root\cimv2
*.mof
regevent.mof
stdprov.dll
root\default
WDM
wmi.mof
wmiprov.dll
root\wmi
Provider Standard WMI
Provider
Directory
Services
Event Log
MOF
DLL
Namespace
dsprov.mof
dsprov.dll
root\directory\ldap
ntevt.mof
ntevt.dll
root\cimv2
View
Windows
Installer
Sicurezza
*.mof
viewprov.dll
root\*
msi.mof
msiprov.dll
root\cimv2
secrcw32.mof secrcw32.dll
root\cimv2
MOF

Management Object Format Language





Dichiara i namespace
Dichiara le classes
Dichiara le istanze
Mofcomp.exe
Auto Recovery
WMI e i Prodotti Microsoft

Microsoft SQL Server 2000/2005


Microsoft Exchange Server 2000/2003



Qualsiasi cosa si può fare con Enterprise
Manager
2000: monitoring dei server
2003: gestione del sistema
Microsoft System Management Server
2003

Operations Manager tool
WMI in Windows XP/2003

Group Policy Filtering


Nuovi Event Consumer WMI


Text log, NT Event log, command-line
Nuovi Provider WMI


Applicazione di filtri WMI
Disk Quota, DFS, Stampanti, Chkdsk,
DNS, Repliche AD
Funzioni Addizionali

DateTime, SWbemServices.Put,
Refresher object
L’importanza di .NET

Il Framework .NET fornisce tecniche di
scripting semplificate

Nuove interfaccie .NET

system.management
disk = New ManagementObject("Win32_LogicalDisk.DeviceId='C:'")
disk.Get()


Ancora compatibile con le esistenti
interfaccie di script
Tool IDE integrati
Come accedere a WMI



Sistemi di Management
Scripting (oggetto di un prossimo Live
Meeting)
WMIC (oggetto di questo evento)
WMIC
Windows Management Instrumentation Console


WMIC fornisce un’interfaccia command-line a WMI
WMIC consente:








Navigare lo schema WMI e interrogare lo schema e le
istanze, normalmente usando degli alias.
Lavorare con il computer locale, con computer remoti
singoli o multipli con un singolo comando.
Personalizzazione degli alias e dell’aoutput dei comandi.
Creare ed eseguire script basati su WMIC.
WMI Providers sono disponibili per gestire una
grande varietà di componenti HW, sistemi operativi
e applicazioni.
WMIC può essere usato con tutti gli schema
implementati da questi Provider WMI.
WMIC può essere usato da ogni computer su cui è
abilitato per gestire remotamente computer con
WMI.
WMIC non deve essere presente sui computer
remoti.
Usare WMIC

Due modi d’uso:



C:\> wmic process (scripting/batch)
wmic:root\cli> process (interattivo)
Esempi del modo interattivo:



OS get name, locale, bootdevice
OS where name=‘sun’ call shutdown
/node:@MyOrg os get /all /format:htable
WMIC Esempi








PRODUCTS
path win32_<namespace>
path win32_processor get MaxClockSpeed
process where (processID>300) list brief
/node:"computer1","computer2“ Process
Where Description="WinLogon.exe" Get
VirtualSize /EVERY:5
SERVICE WHERE CAPTION='TELNET' CALL
STARTSERVICE
NICCONFIG WHERE index=1 CALL
EnableStatic ("10.0.0.2"),("255.0.0.0")
NICCONFIG WHERE index=1 CALL
SetGateways ("10.0.0.8","10.0.0.9"),(1,2)
WMIC: un esempio complesso
NTEVENT WHERE "eventtype<3 AND
logfile='Application'" GET Logfile,
SourceName, Eventtype, Message,
TimeGenerated /FORMAT:"htablesortby.xsl":"datatype=number":"sortby=E
ventType" > c:\applicationlogs.htm
Automatizzazione di WMIC
WMIC /NODE:@"c:\MyServerList.txt" SERVICE
WHERE caption= “telnet" CALL
ChangeStartMode "Disabled"
Server1
Server2
Server3
Server4
Server5
Server6
Server7
Server8
Server9
……….
MyServerList.txt
Scarica

Provider Standard WMI