Mercurial > illumos > git > illumos-omnios
changeset 22331:7906cb63dfce
3334 zonestat missing man page
Reviewed by: Tobias Oetiker <tobi@oetiker.ch>
Reviewed by: C Fraire <cfraire@me.com>
Reviewed by: Gergő Mihály Doma <domag02@gmail.com>
Approved by: Dan McDonald <danmcd@joyent.com>
author | Andy Fiddaman <omnios@citrus-it.co.uk> |
---|---|
date | Wed, 06 Nov 2019 23:12:34 +0000 |
parents | a75be985fac7 |
children | b1e71f6437ac |
files | usr/src/man/man1/Makefile usr/src/man/man1/zonestat.1 usr/src/man/man1m/Makefile usr/src/man/man1m/zonestatd.1m usr/src/pkg/manifests/system-zones.mf |
diffstat | 5 files changed, 583 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/usr/src/man/man1/Makefile Sun Oct 21 22:37:40 2018 +0300 +++ b/usr/src/man/man1/Makefile Wed Nov 06 23:12:34 2019 +0000 @@ -13,6 +13,7 @@ # Copyright 2011, Richard Lowe # Copyright 2018 Nexenta Systems, Inc. # Copyright 2014 Garrett D'Amore <garrett@damore.org> +# Copyright 2019 OmniOS Community Edition (OmniOSce) Association. # include $(SRC)/Makefile.master @@ -419,7 +420,8 @@ yppasswd.1 \ ypwhich.1 \ zlogin.1 \ - zonename.1 + zonename.1 \ + zonestat.1 MANLINKS= batch.1 \ bg.1 \
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/usr/src/man/man1/zonestat.1 Wed Nov 06 23:12:34 2019 +0000 @@ -0,0 +1,485 @@ +.\" +.\" This file and its contents are supplied under the terms of the +.\" Common Development and Distribution License ("CDDL"), version 1.0. +.\" You may only use this file in accordance with the terms of version +.\" 1.0 of the CDDL. +.\" +.\" A full copy of the text of the CDDL should have accompanied this +.\" source. A copy of the CDDL is also available via the Internet at +.\" http://www.illumos.org/license/CDDL. +.\" +.\" Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. +.\" Copyright 2019 OmniOS Community Edition (OmniOSce) Association. +.\" +.Dd April 04, 2019 +.Dt zonestat 1 +.Os +.Sh NAME +.Nm zonestat +.Nd report active zone statistics. +.Sh SYNOPSIS +.Nm +.Op Fl z Ar zonelist +.Op Fl r Ar reslist +.Op Fl n Ar namelist +.Op Fl T Ar u Ns | Ns Ar d Ns | Ns Ar i +.Op Fl R Ar reports +.Op Fl q +.Op Fl p Oo Fl P Ar lines Oc +.Op Fl S Ar cols +.Ar interval +.Oo Ar duration +.Oo Ar report +.Oc Oc +.Sh DESCRIPTION +The +.Nm +utility reports on the cpu, memory, and resource control utilization of the +currently running zones. +Each zone's utilization is reported both as a percentage of system resources +and the zone's configured limits. +.Pp +The +.Nm +utility prints a series of interval reports at the specified interval. +It optionally also prints one or more summary reports at a specified interval. +.Pp +The default output is a summary of cpu, physical, and virtual memory +utilization. +The -r option can be used to choose detailed output for specific resources. +.Pp +The following options are supported: +.Bl -tag -width Ds +.It Fl z Ar zonename Ns Oo Ar ,zonename Ns ... Oc +Specify a list of zones on which to report. +By default all zones are reported. +In addition to a comma-separated list, multiple +.Fl z +options can be specified to report on a set of zones. +The output will include any resources which have usage by the specified zone(s). +.It Fl r Ar resource Ns Oo Ar ,resource Ns ... Oc +Specify resource types on which to report. +The available resources are: +.Bd -ragged -offset indent +.Em physical-memory , +.Em virtual-memory , +.Em locked-memory , +.Em processor-sets , +.Em processes , +.Em lwps , +.Em shm-memory , +.Em shm-ids , +.Em sem-ids , +.Em msg-ids , +.Em lofi +.Ed +.Pp +The following nicknames can also be specified as resource names: +.Bl -tag -width indent +.It Em summary +A summary of cpu, physical-memory, and virtual memory usage. +.It Em memory +physical-memory, virtual-memory, and locked memory. +.It Em psets +processor-sets +.It Em default-pset +The default pset only. +.It Em limits +processes, lwps, lofi +.It Em sysv +shm-memory, shm-ids, sem-ids msg-ids +.It Em all +all resource types. +.El +.Pp +By default the summary resource is printed. +.Pp +In addition to a comma-separated list, multiple +.Fl r +options can be specified to report on a set of resources types. +.Pp +The system's cpus can be partitioned into processor sets +(psets) By default, all cpus are in a single pset named +.Em pset_default . +.Pp +Memory is not partition-able into sets. +The zonestat utility output for these resources will show them as named +.Em mem_default +and +.Em vm_default . +.Pp +The +.Em all +resource specifies that all resource types should be reported. +.It Fl n Ar name Ns Oo Ar ,name Oc +Specify a list resource names on which to report. +For pset resources, this is the name of the processor set. +For physical-memory, locked-memory, and virtual-memory resources, +the only names are +.Em mem_default +and +.Em vm_default . +.Pp +Dedicated-cpu processor sets can be specified by their pset +name, or by just their zonename. +.Pp +Processor sets created by psrset can be specified by their pool +pset name, or just by their psetid. +.Pp +In addition to a comma-separated list, multiple +.Fl n +options can be specified to report on a set of resources. +.It Fl T Ar u Ns | Ns Ar d Ns | Ns Ar i +Include timestamp of each report. +The following formats are supported: +.Bl -tag -width indent +.It u +A printed representation of the internal representation of time; +see +.Xr time 2 . +This is also known as unix time. +.It d +Standard date format; see +.Xr date 1 . +This option is not valid with +.Fl p . +.It i +Time formatted as the ISO 8601 compliant format: +.D1 YYYYMMDDThhmmssZ +.El +.It Fl R Ar report Ns Oo Ar ,report Oc +Print a summary report. +The supported report types are described below. +In addition to a comma-separated list, multiple +.Fl R +options may be specified for a set of summary reports. +.Bl -tag -width indent +.It total +Prints a summary report detailing the following for each resource: +.Bl -tag -width indent +.It psets +Total cpu used since start of command invocation. +The percent used for each zone includes time that a zone was not running. +For instance, if a zone used 100% of the cpu while it was running, but the zone +was halted for half of the intervals, then the summary report will show the +zone used 50% of the cpu time. +.It memory, limits, sysv +Average resource used of all intervals reported since command invocation. +This average factors in intervals in which a zone was not running. +For example if a zone used on average of 100M of physical memory while it was +running, and was only running for half the intervals, then the summary report +will show that the zone used 50M of physical memory on average. +.El +.It average +Similar to +.Em total , +but only intervals in which a zone is running are factored in. +For example, if a zone was only running for a single interval, and during that +interval, the zone used 200M of virtual memory, then its average +virtual-memory will be 200M, regardless of the number of intervals reported +before the summary report. +.It high +Print a summary report detailing the highest usage of each resource and zone +during any interval of the zonestat utility invocation. +.El +.It Fl S Ar col Ns Oo Ar ,col Oc +Sort zones utilizing each resource. +The following sorting columns can be specified. +.Bl -tag -width indent +.It name +Sort alphanumerically by zone name. +.It used +Sort by quantity of resource used. +.It cap +Sort by configured cap. +.It pcap +Sort by percent of cap used. +.It shr +Sort by allocated share. +.It pshru +Sort by percent of share used. +.El +.Pp +By default, output is sorted by quantity of resource used. +.It Fl q +Only print summary reports (requires +.Fl R ) . +All interval reports are omitted. +.It Fl p +Print output in stable, machine-parsable format. +Individual fields will be delimited with :. +The line format is: +.Pp +.D1 <report type>:<resource>:<field>[:<field>]* +.Pp +If +.Fl T +is specified each line is prefixed with a timestamp: +.Pp +.D1 <timestamp>:<report type>:<resource>:<field>[:<field>]* +.Pp +The report types are: +.Bd -ragged -offset indent +.Em report-total , +.Em report-average , +.Em report-high , +.Em interval +.Ed +.Pp +The resource types are: +.Bd -ragged -offset indent +.Em header , +.Em footer , +.Em summary , +.Em physical-memory , +.Em virtual-memory , +.Em locked-memory , +.Em processor-set , +.Em processes , +.Em lwps , +.Em sysv-shared-memory , +.Em sysv-shmids , +.Em sysv-semids , +.Em sysv-msgids , +.Em lofi +.Ed +.Pp +The +.Em header +resource is a special resource used to state the beginning of an interval or +summary report. +All output lines between header resources belong to the same report. +Each header has a matching footer. +.Pp +The remaining fields are resource type specific. +See the zonestat utility output for details. +.Pp +All existing output fields are stable. +Future versions may introduce new report and resource types. +Future versions may also add additional new fields to the end of existing +output lines. +.It Fl P Ar line Ns Oo Ar ,line Oc +For parsable output, specify lines to output in parsable output. +One or more of the following line types can be chosen: +.Bl -tag -width indent +.It resource +The lines describing each resource. +.It total +The total utilization of each resource. +.It system +The utilization of each resource by the system. +This includes the kernel, and any resource consumption not contributable to a +specific zone. +When zonestat is run from within a non-global-zone, this value will be the +aggregate resource consumed by the system and all other zones. +.It zones +Lines detailing the per-zone utilization of each resource. +.It header, footer +Each interval and summary report has a header, which prints details such +as the interval and count information. +After each report, any footer is also printed +.El +.El +.Ss OPERANDS +.Bl -tag -width indent +.It interval +Specifies the length in seconds to pause between each interval report. +An interval of +.Em default +will use the configured interval of the zones +monitoring service - see +.Xr zonestatd 1m . +.Pp +Interval is required. +An interval of zero is not permitted. +The interval can be specified as [nh][nm][ns], such as 10s or 1m. +.It duration +Specifies the number of intervals to report. +Defaults to infinity if not specified. +The command duration is (interval * duration). +A duration of zero is invalid. +A value of +.Em inf +can also be specified to explicitly choose infinity. +.Pp +Duration can also be specified as [nh][nm][ns]. +In this case, duration will be interpreted as the duration of execution time. +The actual duration will be rounded up to the nearest multiple of the interval. +.It report +Specify the summary report period. +For instance, a report of 4 would produce reports every 4 intervals. +If the command duration is not a multiple of report, then the last report will +be of any remaining intervals. +.Pp +Report can also be specified as [nh][nm][ns]. +In this case, reports will be output at the specified time period, rounded up +to the nearest interval. +If the command duration is not a multiple of report, then the last report will +be of any remaining intervals. +.Pp +Requires +.Fl R . +If +.Fl R +is specified and report is not, the report period will be the entire command +duration, producing the specified reports at the end of execution. +.El +.Ss OUTPUT +The following list defines the column heading of the command output: +.Bl -tag -width indent +.It SYSTEM-MEMORY +The total amount of memory available on the physical host. +.It SYSTEM-LIMIT +The maximum amount of resource available on the physical host. +.It CPUS +The number of cpus allocated to a processor set. +.It ONLINE +Of the cpus allocated to a processor set, the number of cpus +which can execute processes. +.It MIN/MAX +The minimum and maximum number of cpus which may be allocated +to the processor set by the system. +.It ZONE +The zone using the resource. +In addition to zone names, this column may also contain: +.Bl -tag -width indent +.It [total] +The total quantity of resource used system-wide. +.It [system] +The quantity of resource used by the kernel or in a manner not associated with +any particular zone. +.Pp +When zonestat is used within a non-global zone, [system] designates the +aggregate resource used by the system and by all other zones. +.El +.It USED +The amount of resource used. +.It PCT +The amount of resource used as a percent of the total resource. +.It %PART +The amount of cpu uses as a percentage of the total cpu in a processor-set to +which the zone is bound. +A zone can only have processes bound to multiple processor sets if it is the +global zone, or if psrset(1m) psets are used. +If multiple binding are found for a zone, its %PART will be the fraction used +of all bound psets. +For [total] and [system], %PART is the percent used of all cpus on the system. +.It CAP +If a zone is configured to have a cap on the given resource, the cap will be +displayed in this column. +.It %CAP +The amount of resource used as a percent of zone's configured cap. +.It SHRS +The number of shares allocated to the zone. +For the [total] row, this will be the total number of shares allocated to all +zones sharing the resource. +.Pp +If a zone is not configured to use shares, and is sharing a +resource with other zones that are configured to use shares, +this column will contain +.Em no-fss +for the zone. +.It %SHR +The fraction of the total shares allocated to the zone. +For instance, if 2 zones share a processor set, each with 10 shares, then each +zone will have a %SHR of 50%. +.It %SHRU +Of the share allocated to the zone, the fraction of resource +used. +Zones using all of their share will have a %SHRU of 100%. +Because shares are only enforced when there is resource contention, it is +possible for a zone to have a %SHRU in excess of 100%. +.El +.Sh IMPLEMENTATION NOTES +The zonestat utility depends on the zones monitoring service: +.Pp +.D1 svc/system/zonestat:default +.Pp +If the zonestat service is stopped while the zonestat utility is running, the +zonestat command invocation will quit without printing additional reports. +.Pp +The reports will be printed if zonestat is interrupted (by ctrl-c, +.Dv SIGINT ) +before reaching the next report period. +.Sh EXIT STATUS +.Ex -std +.Bl -tag -width indent +.It 0 +Successful completion. +.It 1 +An error occurred. +.It 2 +Invalid usage. +.It 3 +svc:system/zones_monitoring:default not running or not responding. +.El +.Sh EXAMPLES +Example 1: Summary of cpu and memory utilization every 5 seconds. +.Bd -literal + # zonestat 5 1 + SUMMARY + -----CPU------------- ----PHYSICAL--- ----VIRTUAL---- + ZONE USED %PART %CAP %SHRU USED PCT %CAP USED PCT %CAP + [total] 9.74 30% - - 7140M 21% - 10.6G 22% - + [system] 0.28 0.8% - - 6535M 19% - 10.4G 21% - + global 9.10 28% - - 272M 0.8% - 366M 0.7% - + zoneA 0.32 1.0% - - 256M 0.7% - 265M 0.5% - + zoneB 0.00 0.0% - - 77.6M 0.2% - 71.1M 0.1% - +.Ed +.Pp +Example 2: Using parsable output, fetching only zone usages. +.Pp +The following command will produce parsable output, printing one +line per zone using each pset resource for a 5 second interval. +.Bd -literal + + # zonestat -p -P zones -r psets 5 1 + +.Ed +.Pp +Example 3: Report on the default pset. +.Pp +The following command will report on the default pset once a second +for one minute. +.Bd -literal + + # zonestat -r default-pset 1 1m + +.Ed +.Pp +Example 4: Report total and high utilization. +.Pp +The following command monitors silently at a 10 second interval +for 24 hours, producing a total and high report every 1 hour. +.Bd -literal + + # zonestat -q -R total,high 10s 24h 1h + +.Ed +.Sh INTERFACE STABILITY +Command invocation and parsable output is Committed. +Human readable output (default output) is uncommitted. +.Sh SECURITY +When run from within a non-global zone (NGZ), only processor sets +visible to the NGZ are reported. +The NGZ output will include all of other system resources, such as memory and +limits. +.Pp +For all reported resources, the NGZ's usage will be output. +Usage of each resource by the system, global zone, and all other +zones, will be reported as used by +.Em system . +.Sh SEE ALSO +.Xr date 1 , +.Xr pooladm 1m , +.Xr poolcfg 1m , +.Xr prctl 1m , +.Xr rcapadm 1m , +.Xr zoneadm 1m , +.Xr zonecfg 1m , +.Xr zonestatd 1m , +.Xr libzonestat 3lib , +.Xr timezone 4 , +.Xr privileges 5 , +.Xr resource_controls 5 , +.Xr zones 5
--- a/usr/src/man/man1m/Makefile Sun Oct 21 22:37:40 2018 +0300 +++ b/usr/src/man/man1m/Makefile Wed Nov 06 23:12:34 2019 +0000 @@ -18,6 +18,7 @@ # Copyright 2018 Nexenta Systems, Inc. # Copyright (c) 2017, Chris Fraire <cfraire@me.com>. # Copyright 2019 Peter Tribble +# Copyright 2019 OmniOS Community Edition (OmniOSce) Association. # include $(SRC)/Makefile.master @@ -536,6 +537,7 @@ zoneadm.1m \ zoneadmd.1m \ zonecfg.1m \ + zonestatd.1m \ zpool.1m \ zstreamdump.1m \ ztest.1m
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/usr/src/man/man1m/zonestatd.1m Wed Nov 06 23:12:34 2019 +0000 @@ -0,0 +1,90 @@ +.\" +.\" This file and its contents are supplied under the terms of the +.\" Common Development and Distribution License ("CDDL"), version 1.0. +.\" You may only use this file in accordance with the terms of version +.\" 1.0 of the CDDL. +.\" +.\" A full copy of the text of the CDDL should have accompanied this +.\" source. A copy of the CDDL is also available via the Internet at +.\" http://www.illumos.org/license/CDDL. +.\" +.\" Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. +.\" Copyright 2019 OmniOS Community Edition (OmniOSce) Association. +.\" +.Dd April 04, 2019 +.Dt zonestatd 1M +.Os +.Sh NAME +.Nm zonestatd +.Nd zones monitoring daemon +.Sh SYNOPSIS +.Nm /usr/lib/zones/zonestatd +.Sh DESCRIPTION +.Nm +is a system daemon that is started during system boot. +It monitors the utilization of system resources by zones, as well +as zone and system configuration information such as psrset psets, +pool psets, and resource control settings. +.Pp +This daemon is started automatically by the zone management +software and should not be invoked directly. +It does not constitute a programming interface, but is classified as a +private interface. +.Sh IMPLEMENTATION NOTES +The zonestat service is managed by the service management +facility, +.Xr smf 5 , +under the service identifier: +.Pp +.D1 svc:/system/zones-monitoring:default +.Pp +Administrative actions on this service, such as enabling, disabling, or +requesting restart, can be performed using +.Xr svcadm 1m . +The service's status can be queried using the +.Xr svcs 1 +command. +.Pp +The zonestat service has the following SMF configuration property: +.Bd -ragged -offset indent +config/sample_interval +.Pp +This property sets the +.Nm +sample interval. +This is the interval used by the zones monitoring daemon, +.Nm +to sample resource utilization. +This is also the interval used to determine configuration changes such as +processor set changes, resource control changes, and zone state changes. +.Pp +The default interval is 5 seconds. +.Ed +.Pp +The zonestat service makes use of extended accounting facility. +If not already enabled, it enables the tracking of process accounting +resources, and configures a process accounting file. +The zonestat service will roll the process accounting log at its configured +interval. +.Pp +If extended process accounting is enabled externally, the zonestat +service will use the process accounting log as configured. +It will not roll the accounting log, but will operate correctly if +the accounting log is rolled externally. +.Sh INTERFACE STABILITY +.Sy Private +.Sh SECURITY +The zonestat service in the global zone must be online for the zonestat +service in each non-global zone (NGZ) to function properly. +The zonestat service in each NGZ does not directly read system configuration +and utilization data, but rather reads from the zonestat service on the +global zone. +.Sh SEE ALSO +.Xr zonestat 1 , +.Xr acctadm 1m , +.Xr pooladm 1m , +.Xr poolcfg 1m , +.Xr prctl 1m , +.Xr rcapadm 1m , +.Xr smf 5 , +.Xr zones 5
--- a/usr/src/pkg/manifests/system-zones.mf Sun Oct 21 22:37:40 2018 +0300 +++ b/usr/src/pkg/manifests/system-zones.mf Wed Nov 06 23:12:34 2019 +0000 @@ -21,6 +21,7 @@ # # Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. +# Copyright 2019 OmniOS Community Edition (OmniOSce) Association. # set name=pkg.fmri value=pkg:/system/zones@$(PKGVERS) @@ -96,9 +97,11 @@ file path=usr/share/lib/xml/dtd/zone_platform.dtd.1 mode=0644 file path=usr/share/lib/xml/dtd/zonecfg.dtd.1 file path=usr/share/man/man1/zlogin.1 +file path=usr/share/man/man1/zonestat.1 file path=usr/share/man/man1m/zoneadm.1m file path=usr/share/man/man1m/zoneadmd.1m file path=usr/share/man/man1m/zonecfg.1m +file path=usr/share/man/man1m/zonestatd.1m file path=usr/share/man/man5/brands.5 file path=usr/share/man/man5/zones.5 file path=usr/share/man/man7d/zcons.7d