forked from BaldMansMojo/check_vmware_esx
-
Notifications
You must be signed in to change notification settings - Fork 0
/
command_reference
1035 lines (894 loc) · 61.8 KB
/
command_reference
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
check_vmware_esx.pl,Version 1.2.5
This vmware Infrastructure monitoring plugin is free software, and comes with ABSOLUTELY NO WARRANTY.
It may be used, redistributed and/or modified under the terms of the GNU General Public Licence
(see http://www.fsf.org/licensing/licenses/gpl.txt).
Copyright (c) 2013 all modifications starting from check_vmware_api.pl Martin Fuerstenau - Oce Printing Systems <[email protected]>
Copyright (c) 2008 op5 AB Kostyantyn Hushchyn <[email protected]>
General options:
================
-?, --usage Print usage information
-h, --help Print detailed help screen
-V, --version Print version information
--ignore_unknown Sometimes 3 (unknown) is returned from a component.
But the check itself is ok.
With this option the plugin will return OK (0) instead of UNKNOWN (3).
--maintenance_mode_state Set status in case ESX host is in maintenance mode.
Possible values are:
OK or ok
CRITICAL or critical or CRIT or crit
WARNING or warning or WARN or warn
Default is UNKNOWN because you do not know the real state.
Values are case insensitive.
--ignore_warning Sometimes 2 (warning) is returned from a component.
But the check itself is ok (from an operator view).
With this option the plugin will return OK (0) instead of WARNING (1).
--statelabels=<y/n> Whether or not statelabels as described in the Nagios Plugin Developer
Guidelines (OK, CRITICAL, WARNING etc.) will printed out. Technically
these are not neccessary because the infomation is available via the colour
in the WebGui (red/green/yellow etc.)and for notifications via the macros
$SERVICESTATE$ and $SERVICESTATEID$. The default behaviour can be changed
by setting the variable $statelabels_def in the plugin from y to n.
-t, --timeout=INTEGER Seconds before plugin times out (default: 90)
--trace=<level> Set verbosity level of vSphere API request/respond trace.
Options for authentication:
===========================
To reduce amounts of login/logout events in the vShpere logfiles or a lot of
open sessions using sessionfiles the login part has been rewritten. Using session
files is now the default. Only one session file per host or vCenter is used as
default.
The sessionfile name is automatically set to the vSphere host or the vCenter
(IP or name - whatever is used in the check).
Multiple sessions are possible using different session file names. To form different
session file names the default name is enhenced by the value you set with
--sessionfile.
--sessionfile=<sessionfile> (Optional).Session file name enhancement.
--sessionfiledir=<directory> (Optional).If this option is set a path different from the path stored in
$sessionfile_dir_def, which is defined in the plugin will be used.
--nosession (Optional). Don't use a session file. This is the old behaviour. It should
not be used for production use because it can cause a lot of entries in the log
files an therefore can cause abnormal growing of the log.
IT SHOULD BE USED FOR TESTING PURPOSES ONLY!
-u, --username=<username> Username to connect with.
-p, --password=<password> Password to use with the username.
-f, --authfile=<path> Authentication file with login and password.
File syntax :
username=<login>
password=<password>
Monitoring the vmware datacenter:
=================================
-D, --datacenter=<DCname> Datacenter/Vcenter hostname.
--sslport=<port> If a SSL port different from 443 is used.
Volumes:
--------
-S, --select=volumes Shows all datastore volumes info
or with
-s, --subselect=<name> free space info for volume with name <name>
--gigabyte Output in GB instead of MB
--usedspace Output used space instead of free
--perf_free_space Perfdata for free space instead of used space. In versions prior to 0.9.18
performance data was always as freespace even if you selected --usedspace.
Now with --usedspace perf data will be also in used space.
This option is mainly to preserve existing performce data.
--alertonly List only alerting volumes
-B, --exclude=<black_list> Blacklist volumes.
-W, --include=<white_list> Whitelist volumes.
Use blacklist OR(!) whitelist. Using both in one statement
is not allowed.
--ignore_casesensitive Black-/whitlist is normally case sensitive. So for example
if check is for VM myserver and the name in ESX is MYSERVER
it would not match.
--isregexp Whether to treat name, blacklist and whitelist as regexp
-w, --warning=<threshold> Warning threshold.
-c, --critical=<threshold> Critical threshold.
Thresholds should be either a simple counter or a percentage
value in the n% (i.e. 90%). If checking more than a single
with --usedspace volume only percent is allowed as threshold or
--spaceleft must be used.
--spaceleft This has to be used in conjunction with thresholds as mentioned above.
The thresholds must be specified as the space left on device and with the
same unit (MB or GB).
Runtime Info:
-------------
-S, --select=runtime Shows all runtime info for the datacenter/Vcenter.
No thresholds are allowed here
or with
-s, --subselect=listvms List of virtual machines and their power state.
BEWARE!! In larger environments systems can cause trouble displaying
the informations needed due to the mass of data.
. Use --alertonly to avoid this.
-B, --exclude=<black_list> Blacklist VMs.
-W, --include=<white_list> Whitelist VMs.
Use blacklist OR(!) whitelist. Using both in one statement
is not allowed.
--ignore_casesensitive Black-/whitlist is normally case sensitive. So for example
if check is for VM myserver and the name in ESX is MYSERVER
it would not match.
--isregexp Whether to treat blacklist and whitelist as regexp
--multiline Multiline output in overview. This mean technically that
a multiline output uses a HTML <br> for the GUI instead of
Be aware that your messing connections (email, SMS...) must use
a filter to file out the <br>. A sed oneliner like the following
will do the job: sed 's/<[^<>]*>//g'
--alertonly List only alerting VMs. Important here to avoid masses of data.
or
-s, --subselect=listhost List of VMware ESX hosts and their power state..
Power state can be (from the docs):
- poweredOff The host was specifically powered off by the user
through VirtualCenter. This state is not a cetain state,
because after VirtualCenter issues the command to power
off the host, the host might crash, or kill all the
processes but fail to power off.
- poweredOn The host is powered on
- standBy The host was specifically put in standby mode, either
explicitly by the user, or automatically by DPM. This
state is not a cetain state, because after VirtualCenter
issues the command to put the host in stand-by state,
the host might crash, or kill all the processes but fail
to power off.
- unknown If the host is disconnected, or notResponding, we can not
possibly have knowledge of its power state. Hence, the
host is marked as unknown.
BEWARE!! In larger environments systems can cause trouble displaying
the informations needed due to the mass of data.
. Use --alertonly to avoid this.
-B, --exclude=<black_list> Blacklist VMware ESX hosts.
-W, --include=<white_list> Whitelist VMware ESX hosts.
Use blacklist OR(!) whitelist. Using both in one statement
is not allowed.
--ignore_casesensitive Black-/whitlist is normally case sensitive. So for example
if check is for VM myserver and the name in ESX is MYSERVER
it would not match.
--isregexp Whether to treat blacklist and whitelist as regexp
--multiline Multiline output in overview. This mean technically that
a multiline output uses a HTML <br> for the GUI instead of
Be aware that your messing connections (email, SMS...) must use
a filter to file out the <br>. A sed oneliner like the following
will do the job: sed 's/<[^<>]*>//g'
--alertonly List only alerting hosts. Important here to avoid masses of data.
or
-s, --subselect=listcluster List of vmware clusters and their states.
States can be (from the docs):
- gray The status is unknown.
- green The entity is OK.
- red The entity definitely has a problem.
- yellow The entity might have a problem.
-B, --exclude=<black_list> Blacklist VMware cluster.
-W, --include=<white_list> Whitelist VMware cluster.
Use blacklist OR(!) whitelist. Using both in one statement
is not allowed.
--ignore_casesensitive Black-/whitlist is normally case sensitive. So for example
if check is for VM myserver and the name in ESX is MYSERVER
it would not match.
--isregexp Whether to treat blacklist and whitelist as regexp
--multiline Multiline output in overview. This mean technically that
a multiline output uses a HTML <br> for the GUI instead of
Be aware that your messing connections (email, SMS...) must use
a filter to file out the <br>. A sed oneliner like the following
will do the job: sed 's/<[^<>]*>//g'
--alertonly List only alerting hosts. Important here to avoid masses of data.
or
-s, --subselect=issues All issues for the host.
-B, --exclude=<black_list> Blacklist issues.
-W, --include=<white_list> Whitelist issues.
Use blacklist OR(!) whitelist. Using both in one statement
is not allowed.
--ignore_casesensitive Black-/whitlist is normally case sensitive. So for example
if check is for VM myserver and the name in ESX is MYSERVER
it would not match.
--isregexp Whether to treat blacklist and whitelist as regexp
--multiline Multiline output in overview. This mean technically that
a multiline output uses a HTML <br> for the GUI instead of
Be aware that your messing connections (email, SMS...) must use
a filter to file out the <br>. A sed oneliner like the following
will do the job: sed 's/<[^<>]*>//g'
or
-s, --subselect=status Overall object status (gray/green/red/yellow).
State can be (from the docs):
- gray The status is unknown.
- green The entity is OK.
- red The entity definitely has a problem.
- yellow The entity might have a problem.
or
-s, --subselect=tools Vmware Tools status. Tool status can be:
- Installed,running and current.
- Installed,running,but the installed version is known to
have a grave bug and should be immediately upgraded.
- Installed,running,version is not current
- Installed,running,supported and newer than the
version available on the host
- Installed,running,supported, but a newer version is available
- Installed,running,but the version is known to be too new
too new to work correctly with this virtual machine
- Installed,running,but the version is too old
- Installed,running,but not managed by VMWare
--poweredonly List only VMs which are powered on.
--showall List all VMs. Otherwise only VM with problems are listed.
-B, --exclude=<black_list> Blacklist VMs.
-W, --include=<white_list> Whitelist VMs.
Use blacklist OR(!) whitelist. Using both in one statement
is not allowed.
--ignore_casesensitive Black-/whitlist is normally case sensitive. So for example
if check is for VM myserver and the name in ESX is MYSERVER
it would not match.
--isregexp Whether to treat blacklist and whitelist as regexp
--multiline Multiline output in overview. This mean technically that
a multiline output uses a HTML <br> for the GUI instead of
Be aware that your messing connections (email, SMS...) must use
a filter to file out the <br>. A sed oneliner like the following
will do the job: sed 's/<[^<>]*>//g'
--alertonly List only alerting VMs. Important here to avoid masses of data.
or
-s, --subselect=version Full version string of this vCenter installation.
SOAP API:
---------
-S, --select=soap simple check to verify a successfull connection
to VMWare SOAP API.
Snapshots
-------------
-S, --select=snapshots List vm's wich have snapshots older or bigger than a certain threshold
-w, --warning=<threshold> Warning threshold.
-c, --critical=<threshold> Critical threshold.
-B, --exclude=<black_list> Blacklist VMs.
-W, --include=<white_list> Whitelist VMs.
Use blacklist OR(!) whitelist. Using both in one statement
is not allowed.
--ignore_casesensitive Black-/whitlist is normally case sensitive. So for example
if check is for VM myserver and the name in ESX is MYSERVER
it would not match.
--isregexp Whether to treat blacklist and whitelist as regexp
--listall List all VMs with all snapshots.
--poweredonly List only VMs which are powered on.
--multiline Multiline output in overview. This mean technically that
a multiline output uses a HTML <br> for the GUI instead of
Be aware that your messing connections (email, SMS...) must use
a filter to file out the <br>. A sed oneliner like the following
will do the job: sed 's/<[^<>]*>//g'
or with
-s, --subselect=age Shows age of snapshots in days.
or
-s, --subselect=count Counts the number of snapshots of VMs.
License
-------------
-S, --select=license Checks the currently installed license. If in Evaluation Mode the
remainig evaluation time will be displayed
--hidekey Hide license key from output.
Monitoring the vmware host:
===========================
-H, --host=<hostname> ESX or ESXi hostname.
-D, --datacenter=<DCname> (Optional) Datacenter/Vcenter hostname.
Do host check through datacenter.
If omitted the host is queried directly.
--sslport=<port> If a SSL port different from 443 is used.
Uptime:
-------
-S, --select=uptime Displays uptime of the vmware host.
or with
CPU:
----
-S, --select=cpu CPU usage in percentage
-w, --warning=<threshold> Warning threshold in percent.
-c, --critical=<threshold> Critical threshold in percent.
or with
-s, --subselect=ready Percentage of time that the virtual machine was
ready, but could not get scheduled to run on the
physical CPU. CPU ready time is dependent on the
number of virtual machines on the host and their
CPU loads. High or growing ready time can be a
hint CPU bottlenecks
or
-s, --subselect=wait CPU time spent in wait state. The wait total includes
time spent the CPU idle, CPU swap wait, and CPU I/O
wait states. High or growing wait time can be a
hint I/O bottlenecks.
or
-s, --subselect=usage Actively used CPU of the host, as a percentage of
the total available CPU. Active CPU is approximately
equal to the ratio of the used CPU to the available
CPU.
Available CPU = # of physical CPUs x clock rate
100% represents all CPUs on the host. For example,
if a four-CPU host is running a virtual machine with
two CPUs, and the usage is 50%, the host is using two
CPUs completely.
or
-s, --subselect=readiness The host's CPU readiness percentage.
-w, --warning=<threshold> Warning threshold in percent.
-c, --critical=<threshold> Critical threshold in percent.
Memory:
-------
-S, --select=mem All mem info(except overall and no thresholds)
or with
-s, --subselect=usage Average mem usage in percentage
or
-s, --subselect=consumed Amount of machine memory used on the host. Consumed
memory includes Includes memory used by the Service
Console, the VMkernel vSphere services, plus the
total consumed metrics for all running virtual
machines in MB
or
-s, --subselect=swapused Amount of memory that is used by swap. Sum of memory
swapped of all powered on VMs and vSphere services
on the host in MB. In case of an error all VMs with their
swap used will be displayed. Use --multiline to have
a better formatted output.
--multiline Multiline output in overview. This mean technically that
a multiline output uses a HTML <br> for the GUI instead of
Be aware that your messing connections (email, SMS...) must use
a filter to file out the <br>. A sed oneliner like the following
will do the job: sed 's/<[^<>]*>//g'
or
-s, --subselect=overhead Additional mem used by VM Server in MB
or
-s, --subselect=memctl The sum of all vmmemctl values in MB for all powered-on
virtual machines, plus vSphere services on the host.
If the balloon target value is greater than the balloon
value, the VMkernel inflates the balloon, causing more
virtual machine memory to be reclaimed. If the balloon
target value is less than the balloon value, the VMkernel
deflates the balloon, which allows the virtual machine to
consume additional memory if needed.used by VM memory
control driver. In case of an error all VMs with their
vmmemctl values will be displayed. Use --multiline to have
a better formatted output.
--multiline Multiline output in overview. This mean technically that
a multiline output uses a HTML <br> for the GUI instead of
Be aware that your messing connections (email, SMS...) must use
a filter to file out the <br>. A sed oneliner like the following
will do the job: sed 's/<[^<>]*>//g'
Network:
-------
-S, --select=net Shows net info
-B, --exclude=<black_list> Blacklist NICs.
--isregexp Whether to treat blacklist as regexp
or with
-s, --subselect=usage Overall network usage in KBps(Kilobytes per Second).
or
-s, --subselect=receive Receive in KBps(Kilobytes per Second).
or
-s, --subselect=send Send in KBps(Kilobytes per Second).
or
-s, --subselect=nic Check all active NICs.
-B, --exclude=<black_list> Blacklist NICs.
--isregexp Whether to treat blacklist as regexp
--unplugged_nics_state Sets status for unplugged nics
Possible values are:
OK or ok
CRITICAL or critical or CRIT or crit
WARNING or warning or WARN or warn
Default is WARNING. Values are case insensitive.
Volumes:
--------
-S, --select=volumes Shows all datastore volumes info
or with
-s, --subselect=<name> Free space info for volume with name <name>
--gigabyte Output in GB instead of MB
--usedspace Output used space instead of free
--perf_free_space Perfdata for free space instead of used space. In versions prior to 0.9.18
performance data was always as freespace even if you selected --usedspace.
Now with --usedspace perf data will be also in used space.
This option is mainly to preserve existing performce data.
--alertonly List only alerting volumes
-B, --exclude=<black_list> Blacklist volumes.
-W, --include=<white_list> Whitelist volumes.
Use blacklist OR(!) whitelist. Using both in one statement
is not allowed.
--ignore_casesensitive Black-/whitlist is normally case sensitive. So for example
if check is for VM myserver and the name in ESX is MYSERVER
it would not match.
--isregexp Whether to treat name, blacklist and whitelist as regexp
-w, --warning=<threshold> Warning threshold.
-c, --critical=<threshold> Critical threshold.
Thresholds should be either a simple counter or a percentage
value in the n% (i.e. 90%). If checking more than a single
with --usedspace volume only percent is allowed as threshold or
--spaceleft must be used.
--spaceleft This has to be used in conjunction with thresholds as mentioned above.
The thresholds must be specified as the space left on device and with the
same unit (MB or GB).
Disk I/O:
---------
-S, --select=io Shows all disk io info. Without subselect no thresholds
can be given. All I/O values are aggregated from historical
intervals over the past 24 hours with a 5 minute sample rate
or with
-s, --subselect=aborted Number of aborted SCSI commands
or
-s, --subselect=resets Number of SCSI bus resets
or
-s, --subselect=read Average number of kilobytes read from the disk each second
Rate at which data is read from each LUN on the host.
read rate = # blocksRead per second x blockSize
issued from the Guest OS to the virtual machine.
or
-s, --subselect=read_latency Average amount of time (ms) to process a SCSI read command
issued from the Guest OS to the virtual machine.
or
-s, --subselect=write Average number of kilobytes written to disk each second.
Rate at which data is written to each LUN on the host.
write rate = # blocksRead per second x blockSize
or
-s, --subselect=write_latency Average amount of time (ms) taken to process a SCSI write
command issued by the Guest OS to the virtual machine.
or
-s, --subselect=usage Aggregated disk I/O rate. For hosts, this metric includes
the rates for all virtual machines running on the host
or
-s, --subselect=kernel_latency Average amount of time (ms) spent by VMkernel processing
each SCSI command.
or
-s, --subselect=device_latency Average amount of time (ms) to complete a SCSI command
from the physical device
or
-s, --subselect=queue_latency Average amount of time (ms) spent in the VMkernel queue,
or
-s, --subselect=total_latency Average amount of time (ms) taken during the collection interval
to process a SCSI command issued by the guest OS to the virtual
machine. The sum of kernelWriteLatency and deviceWriteLatency.
Host mounted media:
-------------------
-S, --select=hostmedia List vm's with attached host mounted media like cd,dvd or
floppy drives. This is important for monitoring because a
virtual machine with a mount cd or dvd drive can not be
moved to another host.
-B, --exclude=<black_list> Blacklist VMs.
-W, --include=<white_list> Whitelist VMs.
Use blacklist OR(!) whitelist. Using both in one statement
is not allowed.
--ignore_casesensitive Black-/whitlist is normally case sensitive. So for example
if check is for VM myserver and the name in ESX is MYSERVER
it would not match.
--isregexp Whether to treat blacklist and whitelist as regexp
--listall List all VMs with all mounted media.
--multiline Multiline output in overview. This mean technically that
a multiline output uses a HTML <br> for the GUI instead of
Be aware that your messing connections (email, SMS...) must use
a filter to file out the <br>. A sed oneliner like the following
will do the job: sed 's/<[^<>]*>//g'
Service info:
-------------
-S, --select=service Shows host service info.
-B, --exclude=<black_list> Blacklist services.
-W, --include=<white_list> Whitelist services.
Use blacklist OR(!) whitelist. Using both in one statement
is not allowed.
--ignore_casesensitive Black-/whitlist is normally case sensitive. So for example
if check is for VM myserver and the name in ESX is MYSERVER
it would not match.
--isregexp Whether to treat blacklist and whitelist as regexp
--multiline Multiline output in overview. This mean technically that
a multiline output uses a HTML <br> for the GUI instead of
Be aware that your messing connections (email, SMS...) must use
a filter to file out the <br>. A sed oneliner like the following
will do the job: sed 's/<[^<>]*>//g'
Runtime info:
-------------
-S, --select=runtime Shows runtime info. Used without -s show all runtime info:
VMs, overall status, connection state, health, storagehealth, temperature
and sensor are represented as one value and without thresholds.
--ignore_health ignore health issues when requesting runtime all status.
Sometimes helpful with unsupported hardware. Make sure to
monitor hardware separately!
or with
-s, --subselect=con Shows connection state.
or
-s, --subselect=listvms List of virtual machines and their power state.
--show-storage Shows storage used by the VM.
-B, --exclude=<black_list> Blacklist VMs.
-W, --include=<white_list> Whitelist VMs.
Use blacklist OR(!) whitelist. Using both in one statement
is not allowed.
--ignore_casesensitive Black-/whitlist is normally case sensitive. So for example
if check is for VM myserver and the name in ESX is MYSERVER
it would not match.
--isregexp Whether to treat blacklist and whitelist as regexp
--multiline Multiline output in overview. This mean technically that
a multiline output uses a HTML <br> for the GUI instead of
Be aware that your messing connections (email, SMS...) must use
a filter to file out the <br>. A sed oneliner like the following
will do the job: sed 's/<[^<>]*>//g'
or
-s, --subselect=status Overall object status (gray/green/red/yellow).
State can be (from the docs):
- gray The status is unknown.
- green The entity is OK.
- red The entity definitely has a problem.
- yellow The entity might have a problem.
or
-s, --subselect=health Checks cpu/storage/memory/sensor status.
--listsensors List all available sensors(use for listing purpose only)
--nostoragestatus This is to avoid a double alarm if you use -s health and
-s storagehealth.
-B, --exclude=<black_list> Blacklist storage, memory and sensors.
-W, --include=<white_list> Whitelist storage, memory and sensors.
Use blacklist OR(!) whitelist. Using both in one statement
is not allowed.
--ignore_casesensitive Black-/whitlist is normally case sensitive. So for example
if check is for VM myserver and the name in ESX is MYSERVER
it would not match.
--isregexp Whether to treat blacklist and whitelist as regexp
or
-s, --subselect=storagehealth Local(!) storage status check.
-B, --exclude=<black_list> Blacklist storage.
-W, --include=<white_list> Whitelist storage.
Use blacklist OR(!) whitelist. Using both in one statement
is not allowed.
--ignore_casesensitive Black-/whitlist is normally case sensitive. So for example
if check is for VM myserver and the name in ESX is MYSERVER
it would not match.
--isregexp Whether to treat blacklist and whitelist as regexp
--multiline Multiline output in overview. This mean technically that
a multiline output uses a HTML <br> for the GUI instead of
Be aware that your messing connections (email, SMS...) must use
a filter to file out the <br>. A sed oneliner like the following
will do the job: sed 's/<[^<>]*>//g'
or
-s, --subselect=temp Lists all temperature sensors.
-B, --exclude=<black_list> Blacklist sensors.
-W, --include=<white_list> Whitelist sensors.
Use blacklist OR(!) whitelist. Using both in one statement
is not allowed.
--ignore_casesensitive Black-/whitlist is normally case sensitive. So for example
if check is for VM myserver and the name in ESX is MYSERVER
it would not match.
--isregexp Whether to treat blacklist and whitelist as regexp
--multiline Multiline output in overview. This mean technically that
a multiline output uses a HTML <br> for the GUI instead of
Be aware that your messing connections (email, SMS...) must use
a filter to file out the <br>. A sed oneliner like the following
will do the job: sed 's/<[^<>]*>//g'
or
-s, --subselect=issues Lists all configuration issues for the host.
-B, --exclude=<black_list> Blacklist configuration issues.
-W, --include=<white_list> Whitelist configuration issues.
Use blacklist OR(!) whitelist. Using both in one statement
is not allowed.
--ignore_casesensitive Black-/whitlist is normally case sensitive. So for example
if check is for VM myserver and the name in ESX is MYSERVER
it would not match.
--isregexp Whether to treat blacklist and whitelist as regexp
--multiline Multiline output in overview. This mean technically that
a multiline output uses a HTML <br> for the GUI instead of
Be aware that your messing connections (email, SMS...) must use
a filter to file out the <br>. A sed oneliner like the following
will do the job: sed 's/<[^<>]*>//g'
or
-s, --subselect=version Full version string of this ESXi host installation.
Storage info:
-------------
-S, --select=storage Shows Host storage info.
BEWARE!! Without a subselect only a summary will be listed.
Larger environments in SAN systems can cause trouble displaying the
informations needed due to the mass of data even when used with subselects
. Use --alertonly to avoid this.
-B, --exclude=<black_list> Blacklist adapters, luns (use blacklist on canonical names for it)
and paths. All items can be in one blacklist. Beware of regexp.
A given regexp must give a destinct result.
-W, --include=<white_list> Whitelist adapters, luns (use whitelist on canonical names for it)
and paths. All items can be in one whitelist. Beware of regexp.
A given regexp must give a destinct result.
Use blacklist OR(!) whitelist. Using both in one statement
is not allowed.
--ignore_casesensitive Black-/whitlist is normally case sensitive. So for example
if check is for VM myserver and the name in ESX is MYSERVER
it would not match.
--isregexp Whether to treat blacklist and whitelist as regexp
or with
-s, --subselect=adapter List host bus adapters.
-B, --exclude=<black_list> Blacklist adapters. Blacklisted adapters will not be displayed.
-W, --include=<white_list> Whitelist adapters.
Use blacklist OR(!) whitelist. Using both in one statement
is not allowed.
--ignore_casesensitive Black-/whitlist is normally case sensitive. So for example
if check is for VM myserver and the name in ESX is MYSERVER
it would not match.
--isregexp Whether to treat blacklist and whitelist as regexp
--multiline Multiline output in overview. This mean technically that
a multiline output uses a HTML <br> for the GUI instead of
Be aware that your messing connections (email, SMS...) must use
a filter to file out the <br>. A sed oneliner like the following
will do the job: sed 's/<[^<>]*>//g'
or with
-s, --subselect=lun List SCSI logical units. The listing will include:
- LUN
- canonical name of the disc
- all of displayed name which is not part of the canonical name
- the status
-B, --exclude=<black_list> Blacklist luns (use blacklist on canonical names for it).
Blacklisted luns will not be displayed.
-W, --include=<white_list> Whitelist luns (use whitelist on canonical names for it).
Only whitelisted adapters will be displayed.
Use blacklist OR(!) whitelist. Using both in one statement
is not allowed.
--ignore_casesensitive Black-/whitlist is normally case sensitive. So for example
if check is for VM myserver and the name in ESX is MYSERVER
it would not match.
--isregexp Whether to treat blacklist and whitelist as regexp
--alertonly List only alerting units. Important here to avoid masses of data.
--multiline Multiline output in overview. This mean technically that
a multiline output uses a HTML <br> for the GUI instead of
Be aware that your messing connections (email, SMS...) must use
a filter to file out the <br>. A sed oneliner like the following
will do the job: sed 's/<[^<>]*>//g'
or with
-s, --subselect=path List multipaths and the associated paths.
--standbyok For storage systems where a standby multipath
is ok and not a warning.
-B, --exclude=<black_list> Blacklist paths.
-W, --include=<white_list> Whitelist paths.
A multipath SCSI ID is in the form:
02003c000060a98000375274315a244276694e67684c554e202020
Use blacklist OR(!) whitelist. Using both in one statement
is not allowed.
--ignore_casesensitive Black-/whitlist is normally case sensitive. So for example
if check is for VM myserver and the name in ESX is MYSERVER
it would not match.
--isregexp Whether to treat blacklist and whitelist as regexp
--alertonly List only alerting units. Important here to avoid masses of data.
--multiline Multiline output in overview. This mean technically that
a multiline output uses a HTML <br> for the GUI instead of
Be aware that your messing connections (email, SMS...) must use
a filter to file out the <br>. A sed oneliner like the following
will do the job: sed 's/<[^<>]*>//g'
SOAP API:
---------
-S, --select=soap Simple check to verify a successfull connection
to VMWare SOAP API.
Snapshots
-------------
-S, --select=snapshots List vm's wich have snapshots older or bigger than a certain threshold
-w, --warning=<threshold> Warning threshold.
-c, --critical=<threshold> Critical threshold.
-B, --exclude=<black_list> Blacklist VMs.
-W, --include=<white_list> Whitelist VMs.
Use blacklist OR(!) whitelist. Using both in one statement
is not allowed.
--ignore_casesensitive Black-/whitlist is normally case sensitive. So for example
if check is for VM myserver and the name in ESX is MYSERVER
it would not match.
--isregexp Whether to treat blacklist and whitelist as regexp
--listall List all VMs with all snapshots.
--poweredonly List only VMs which are powered on.
--multiline Multiline output in overview. This mean technically that
a multiline output uses a HTML <br> for the GUI instead of
Be aware that your messing connections (email, SMS...) must use
a filter to file out the <br>. A sed oneliner like the following
will do the job: sed 's/<[^<>]*>//g'
or with
-s, --subselect=age Shows age of snapshots in days.
or
-s, --subselect=count Counts the number of snapshots of VMs.
License
-------------
-S, --select=license Checks the currently installed license. If in Evaluation Mode the
remainig evaluation time will be displayed
--hidekey Hide license key from output.
Monitoring a virtual machine via vmware datacenter or vmware host:
==================================================================
-D, --datacenter=<DCname> Datacenter hostname.
or
-H, --host=<hostname> ESX or ESXi hostname.
-N, --name=<vmname> Virtual machine name.
--moref=<moref> Virtual machine Managed Object Reference
(optional, overrides --name parameter).
--sslport=<port> If a SSL port different from 443 is used.
CPU:
----
-S, --select=cpu CPU usage in percentage
-w, --warning=<threshold> Warning threshold in percent.
-c, --critical=<threshold> Critical threshold in percent.
or with
-s, --subselect=ready Percentage of time that the virtual machine was
ready, but could not get scheduled to run on the
physical CPU. CPU ready time is dependent on the
number of virtual machines on the host and their
CPU loads. High or growing ready time can be a
hint CPU bottlenecks
or
-s, --subselect=wait CPU time spent in wait state. The wait total includes
time spent the CPU idle, CPU swap wait, and CPU I/O
wait states. High or growing wait time can be a
hint I/O bottlenecks.
or
-s, --subselect=usage Amount of actively used virtual CPU, as a percentage
of total available CPU. This is the host's view of
the CPU usage, not the guest operating system view.
It is the average CPU utilization over all available
virtual CPUs in the virtual machine. For example, if
a virtual machine with one virtual CPU is running on
a host that has four physical CPUs and the CPU usage
is 100%, the virtual machine is using one physical CPU
completely.
-w, --warning=<threshold> Warning threshold in percent.
-c, --critical=<threshold> Critical threshold in percent.
Memory:
-------
-S, --select=mem all mem info(except overall and no thresholds)
or with
-s, --subselect=usage Average mem usage in percentage of configured virtual
machine "physical" memory.
or
-s, --subselect=consumed Amount of guest physical memory in MB consumed by the
virtual machine for guest memory. Consumed memory does
not include overhead memory. It includes shared memory
and memory that might be reserved, but not actually
used. Use this metric for charge-back purposes.
vm consumed memory = memory granted - memory saved
or
-s, --subselect=memctl Amount of guest physical memory that is currently
reclaimed from the virtual machine through ballooning.
This is the amount of guest physical memory that has been
allocated and pinned by the balloon driver.
Network:
-------
-S, --select=net Shows net info
or with
-s, --subselect=usage Overall network usage in KBps(Kilobytes per Second).
or
-s, --subselect=receive Receive in KBps(Kilobytes per Second).
or
-s, --subselect=send Send in KBps(Kilobytes per Second).
Disk I/O:
---------
-S, --select=io Shows all disk io info. Without subselect no thresholds
can be given. All I/O values are aggregated from historical
intervals over the past 24 hours with a 5 minute sample rate.
or with
-s, --subselect=read Average number of kilobytes read from the disk each second.
or
-s, --subselect=write Average number of kilobytes written to disk each second.
or
-s, --subselect=usage Aggregated disk I/O rate.
or
Runtime Info:
-------------
-S, --select=runtime Shows runtime info, When used without subselect
no thresholds can be given.
or with
-s, --subselect=con Shows the connection state. Connection state can be:
connected The server has access to the virtual machine.
disconnected When checked directly by a VMware host, then
the disconnected state is not possible. However,
when accessed through VirtualCenter, the state
of a virtual machine is set to disconnected if
the hosts that manage the virtual machine becomes
unavailable.
inaccessible One or more of the virtual machine configuration
files are inaccessible. For example, this can be
due to transient disk failures. In this case, no
configuration can be returned for a virtual machine.
invalid The virtual machine configuration format is invalid.
Thus, it is accessible on disk, but corrupted in a
way that does not allow the server to read the content
. In this case, no configuration can be returned for
a virtual machine.
orphaned The virtual machine is no longer registered on the
host it is associated with. For example, a virtual
machine that is unregistered or deleted directly on
a host managed by VirtualCenter shows up in this state.
or with
-s, --subselect=powerstate Virtual machine power state poweredOn, poweredOff, suspended)
or with
-s, --subselect=status Overall object status (gray/green/red/yellow)
State can be (from the docs):
- gray The status is unknown.
- green The entity is OK.
- red The entity definitely has a problem.
- yellow The entity might have a problem.
or with
-s, --subselect=consoleconnections Console connections to VM.
-w, --warning=<threshold> Warning threshold.
-c, --critical=<threshold> Critical threshold.
or with
-s, --subselect=gueststate Guest OS status. Needs VMware Tools installed and running.
The status can be:
running -> Guest is running normally. (Ok)
shuttingdown -> Guest has a pending shutdown command. (Warning)
resetting -> Guest has a pending reset command. (Warning)
standby -> Guest has a pending standby command. (Warning)
notrunning -> Guest is not running. (Warning)
unknown -> Guest information is not available. (Unknown)
Due to the fact that it depends on running VMware tools some of
the tools stats are checked here either:
- VMware tools are starting. (Warning)
- VMware tools are not running.
(Warning) if VM up and running.
(Ok) if VM powerd off or suspended.
or with
-s, --subselect=tools Vmware tools status. The status can be:
- VMware tools are starting. (Warning)
- VMware tools are not running.
(Warning) if VM up and running.
(Ok) if VM powerd off or suspended.
- VMware tools are running. (Ok)
- VMware tools are installed, but the installed version is known
to have a grave bug and should be immediately upgraded. (Critical)
- VMware tools are installed, but the version is not current. (Warning)
- VMware tools were never been installed. (Warning)
- VMware tools are installed, supported, and newer than the version
available on the host. (Warning)
- No information about VMware tools available. (Warning)
New since vSphere API 5.0:
- VMware tools are installed, and the version is current. (Ok)
- VMware tools are installed, supported, but a newer version is
available. (Warning)
- VMware tools are installed, and the version is known to be too new to
work correctly with this virtual machine. (Critical)
- VMware tools are installed, but the version is too old. (Warning)
- VMware tools are installed, but it is not managed by VMWare. (Warning).
The error code of this message can be switched from "warning" to "ok"
using --open_vm_tools_ok (See below).
--open_vm_tools_ok Set check to "ok" instead of "unknown" when tools are not managed by
Vmware like tools OpenVMtools.
--no_vm_tools_ok Set check to "ok" instead of "warning" when no tools are installed.
For some reasons it maybe ok to run virtual machines without tools.
or with
-s, --subselect=issues All issues for the host
--multiline Multiline output in overview. This mean technically that
a multiline output uses a HTML <br> for the GUI instead of
Be aware that your messing connections (email, SMS...) must use
a filter to file out the <br>. A sed oneliner like the following
will do the job: sed 's/<[^<>]*>//g'
Monitoring a vmware cluster via vmware datacenter or vmware host:
=================================================================
-D, --datacenter=<DCname> Datacenter hostname.
or
-H, --host=<hostname> ESX or ESXi hostname.
-C, --cluster=<clustername> ESX or ESXi clustername.
--sslport=<port> If a SSL port different from 443 is used.
-S, --select=COMMAND
Specify command type (cpu,mem,net,io,volumes,runtime, ...)
-s, --subselect=SUBCOMMAND
Specify subselect
-B, --exclude=<black_list>
Specify black list
Cluster specific :
Memory:
-------
* cluster - shows cluster services info
+ effectivecpu - total available cpu resources of all hosts within cluster
+ effectivemem - total amount of machine memory of all hosts in the cluster
+ failover - vmware HA number of failures that can be tolerated
+ cpufainess - fairness of distributed cpu resource allocation
+ memfainess - fairness of distributed mem resource allocation
^ only effectivecpu and effectivemem values for cluster services
* runtime - shows runtime info
+ listvms - list of vmware machines in cluster and their statuses
+ listhost - list of vmware esx host servers in cluster and their statuses
+ status - overall cluster status (gray/green/red/yellow)
States can be (from the docs):
- gray The status is unknown.
- green The entity is OK.
- red The entity definitely has a problem.
- yellow The entity might have a problem.
+ issues - all issues for the cluster
b - blacklist issues
^ all cluster runtime info
Volumes: