Go to main content

手册页部分 8:系统管理命令

退出打印视图

更新时间: 2022年7月27日 星期三
 
 

sysadm(8)

名称

sysadm - maintain host

用法概要

sysadm maintain -s [ -m "message" ]

sysadm maintain -l [-p] [-o field1,...]

sysadm maintain -e

sysadm evacuate [-arnvqw]

sysadm evacuate -l [-p] [-o field1,...]

描述

sysadm 实用程序用于控制系统的维护模式并对系统上托管的区域执行撤离。

只有属于 "Maintenance and Repair"(维护和修复)RBAC 配置文件的用户和角色才能使用 sysadm 命令。

启动维护模式将会记录审计记录,并阻止后续在系统中对任何区域进行附加、引导或传入迁移。此功能可用于对区域主机执行管理以及停止其运行。

主机在不同引导环境之间重新引导和更改时将保持维护状态。

要使区域恢复运行,必须使用 –e 选项结束维护。

Optionally, the host may be evacuated by migrating all solaris-kz, solaris and solaris10 brand zones away from the system.必须在区域实例的 evacuation/target 属性中指定目标区域主机的非交互式 RAD URI。也可以在区域服务 svc:/system/zones/zone 上指定缺省目标主机。

子命令

支持以下子命令:

sysadm maintain –s [ –m "message" ]

Starts maintenance.可以选择指定自由格式的消息字符串。

启动维护将清除任何现有的撤离状态。

sysadm maintain –l [–p] [–o field1,...]

列出维护状态(如果有)。

–o field[,...]、–-output=field[,...]

要显示的输出字段的列表,这些字段不区分大小写,并且由逗号分隔。字段名称必须是下面列出的某个字段,或者是可以显示所有字段的特殊值 all

TYPE

维护的类型。目前,值始终为 admin

USER

设置维护模式的用户。

DATE

设置维护模式的日期。

MESSAGE

与维护模式关联的任何消息。

–p

使用稳定的可供计算机解析的格式显示。使用 –s 选项时必须使用 –o 选项。

sysadm maintain –e

结束维护模式。

sysadm evacuate –l [–p] [–o field1,...]

列出任何撤离状态。部分撤离之后,该属性可能显示已撤离到目标系统的区域,以及无法撤离的区域和失败原因。

–o field[,...]、–-output=field[,...]

要显示的输出字段的列表,这些字段不区分大小写,并且由逗号分隔。字段名称必须是下面列出的某个字段,或者是可以显示所有字段的特殊值 all

ZONENAME

区域的名称。

STATE

区域的撤离状态。如果为 EVACUATED,则表示区域已撤离到 DEST 值所指定的位置。如果为 SKIPPED,则表示未尝试撤离,区域可能仍在运行中。如果为 FAILED,则表示撤离失败,ERROR 字段将会提供更多信息。

DEST

区域撤离到的目标 RAD URI,或在 FAILED 状态下最后一次尝试的目标。

错误

如果状态为 SKIPPEDFAILED,则该属性会提供相关的错误状态。

–p

使用稳定的可供计算机解析的格式显示。使用 –s 选项时必须使用 –o 选项。

sysadm evacuate [–arnvq]

撤离主机系统。或者,使用 –r 选项将区域返回到主机。

对于每个正在运行的区域,撤离会将区域实时迁移到在其 SMF 服务实例中配置的目标。

如果个别区域的标记不支持实时迁移,则会跳过撤离,并且该区域将变为 SKIPPED 状态。

如果指定了 –a 选项,则还可以使用冷迁移来撤离未在运行的区域。

如果个别区域无法撤离,则该区域的状态将变为 FAILED,并且 ERROR 值将被填入更多信息。

–a

同时撤离未在运行的区域和正在运行的区域。

–v [–v]

Reports evacuation progress verbosely to the standard output.Each output line has a timestamp.

When the –v option is doubled, the detailed per zone migration progress is reported too.

–q

Only reports errors.

–n

Dry-run evacuation.计划迁移,并对每个区域模拟运行到目标主机的迁移。

–r

Returns zones.每个已撤离区域均从其目标迁移而来,如果区域仍在目标中运行,则返回到源主机。如果指定了 –a 选项且区域未在运行,则冷迁移区域。

–w

Overwrite zone configuration for each evacuated zone on the destination host with the respective configurations from the source host.This is mutually exclusive with the –n option.

如果首次运行撤离时某些区域无法撤离,则可能会运行撤离多次。仅当整个撤离过程完成时,返回状态才为成功。这意味着,执行 sysadm 命令后相关主机上应该没有正在运行的区域。

示例

示例 1 Starting Maintenance
# sysadm maintain -s -m "doing a pkg update"
# sysadm maintain -l
TYPE  USER       DATE             MESSAGE
admin root       2016-01-25 06:01 doing a pkg update
示例 2 将系统撤离到单个缺省目标
# svccfg -s svc:/system/zones/zone        
svc:/system/zones/zone> setprop evacuation/target = astring: "ssh://desthost/"
svc:/system/zones/zone> refresh
svc:/system/zones/zone> exit

# sysadm evacuate -nv
sysadm: preparing 2 zone(s) for evacuation ...
       sysadm: initializing migration of kzone1 to desthost ...
       sysadm: initializing migration of kzone2 to desthost ...
sysadm: kzone1: planned evacuation to ssh://desthost/
sysadm: kzone2: planned evacuation to ssh://desthost/
sysadm: dry-run succeeded

# sysadm evacuate    
sysadm: preparing zones for evacuation ... 2/2
sysadm: evacuating zones ... 2/2
sysadm: evacuation completed successfully.
		
# sysadm evacuate -l -o all
ZONENAME         STATE     DEST                                     ERROR
kzone1          EVACUATED ssh://desthost/                            -
kzone2          EVACUATED ssh://desthost/                            -
示例 3 清除维护状态并返回撤离
# sysadm maintain -e
# sysadm evacuate -r
sysadm: preparing zones for return ... 2/2
sysadm: returning zones ... 2/2
sysadm: return completed successfully.

# sysadm evacuate -l
sysadm: no active evacuation

# zoneadm list -civ
  ID NAME             STATUS      PATH                         BRAND      IP    
   0 global           running     /                            solaris    shared
   3 kzone2           running     -                            solaris-kz excl  
   4 kzone1           running     -                            solaris-kz excl  
示例 4 Getting the detailed evacuation progress messages.
# sysadm evacuate -vv
2021-09-09 10:38:26.844 sysadm: preparing 2 zone(s) for evacuation ...
2021-09-09 10:38:27.555 sysadm: initializing migration of kzone1 to desthost ...
2021-09-09 10:38:28.209 sysadm: initializing migration of kzone2 to desthost ...
2021-09-09 10:38:44.773 sysadm: evacuating 2 zone(s) ...
2021-09-09 10:38:44.773 sysadm: migrating kzone2 to desthost ...
2021-09-09 10:38:44.774 sysadm: migrating kzone1 to desthost ...
2021-09-09 10:38:44.792 sysadm: kzone2: Performing initial copy (total 4096MB).
2021-09-09 10:38:44.792 sysadm: kzone1: Performing initial copy (total 4096MB).
2021-09-09 10:38:44.847 sysadm: kzone2: 0.00% done: 0MB copied @ 0.0MB/s, skipped 0MB
2021-09-09 10:38:44.861 sysadm: kzone1: 0.00% done: 0MB copied @ 0.0MB/s, skipped 0MB
2021-09-09 10:38:49.848 sysadm: kzone2: 37.30% done: 768MB copied @ 153.6MB/s, skipped 759MB
2021-09-09 10:38:49.862 sysadm: kzone1: 49.11% done: 704MB copied @ 140.8MB/s, skipped 1307MB
2021-09-09 10:38:54.848 sysadm: kzone2: 63.48% done: 1600MB copied @ 166.4MB/s, skipped 1000MB
2021-09-09 10:38:54.863 sysadm: kzone1: 97.53% done: 1415MB copied @ 142.2MB/s, skipped 2578MB
2021-09-09 10:38:59.849 sysadm: kzone2: 96.73% done: 2342MB copied @ 148.4MB/s, skipped 1619MB
2021-09-09 10:38:59.864 sysadm: kzone1: 100.00% done: 1508MB copied @ 18.4MB/s, skipped 2587MB
2021-09-09 10:38:59.867 sysadm: kzone1: Performing copy of recently modified memory.
2021-09-09 10:38:59.883 sysadm: kzone1: Suspending zone on source host.
2021-09-09 10:39:00.509 sysadm: kzone1: Waiting for migration to complete.
2021-09-09 10:39:00.510 sysadm: kzone1: Halting and detaching zone on source host.
2021-09-09 10:39:00.512 sysadm: kzone1: Migration successful.
2021-09-09 10:39:04.850 sysadm: kzone2: 100.00% done: 2465MB copied @ 24.6MB/s, skipped 1630MB
2021-09-09 10:39:04.852 sysadm: kzone2: Performing copy of recently modified memory.
2021-09-09 10:39:04.862 sysadm: kzone2: Suspending zone on source host.
2021-09-09 10:39:05.284 sysadm: kzone2: Waiting for migration to complete.
2021-09-09 10:39:06.286 sysadm: kzone2: Migration successful.
2021-09-09 10:39:06.287 sysadm: kzone2: Halting and detaching zone on source host.
2021-09-09 10:39:07.124 sysadm: kzone1: evacuated to ssh://desthost/
2021-09-09 10:39:07.124 sysadm: kzone2: evacuated to ssh://desthost/
2021-09-09 10:39:07.124 sysadm: evacuation completed successfully.
      

退出状态

将返回以下退出值:

0

成功完成。

对于撤离,此退出值意味着源系统上没有仍在运行的区域。对于撤离返回,此退出值意味着所有区域均已迁回到源系统。

1

出现错误。

CAVEATS

When SSH transport is used, the sysadm utility requires the SSH keys to have empty passphrase to ensure non-interactive evacuation of the zones and their eventual returning.Unlike zoneadm(8), the sysadm utility ignores the SSH_AUTH_SOCK environment variable.

属性

有关下列属性的说明,请参见 attributes(7)

属性类型
属性值
接口稳定性
请参见下文。
- CLI options
Committed(已确定)
- Parsable output of sysadm evacuate -l
Committed(已确定)
- Human readable and verbose output
Not-an-Interface(不是接口)
可用性
system/zones

另请参见

zones(7), solaris-kz(7), solaris(7), rad(8), beadm(8), svc.zones(8)