sysadm - 维护主机
sysadm maintain -s [ -m "message" ] sysadm maintain -l [-p] [-o field1,...] sysadm maintain -e sysadm evacuate [-arnvq] sysadm evacuate -l [-p] [-o field1,...]
sysadm 实用程序用于控制系统的维护模式并对系统上托管的区域执行撤离。
只有属于 "Maintenance and Repair"(维护和修复)RBAC 配置文件的用户和角色才能使用 sysadm 命令。
启动维护模式将会记录审计记录,并阻止后续在系统中对任何区域进行附加、引导或传入迁移。此功能可用于对区域主机执行管理以及停止其运行。
主机在不同引导环境之间重新引导和更改时将保持维护状态。
要使区域恢复运行,必须使用 –e 选项结束维护。
您可以选择撤离该主机,只需将所有 solaris-kz 和 solaris 标记区域从系统中迁移出来即可。必须在区域实例的 evacuation/target 属性中指定目标区域主机的非交互式 RAD URI。也可以在区域服务 svc:/system/zones/zone 上指定缺省目标主机。
支持以下子命令:
开始维护。可以选择指定自由格式的消息字符串。
启动维护将清除任何现有的撤离状态。
列出维护状态(如果有)。
要显示的输出字段的列表,这些字段不区分大小写,并且由逗号分隔。字段名称必须是下面列出的某个字段,或者是可以显示所有字段的特殊值 all。
维护的类型。目前,值始终为 admin。
设置维护模式的用户。
设置维护模式的日期。
与维护模式关联的任何消息。
使用稳定的可供计算机解析的格式显示。使用 –s 选项时必须使用 –o 选项。
结束维护模式。
列出任何撤离状态。部分撤离之后,该属性可能显示已撤离到目标系统的区域,以及无法撤离的区域和失败原因。
要显示的输出字段的列表,这些字段不区分大小写,并且由逗号分隔。字段名称必须是下面列出的某个字段,或者是可以显示所有字段的特殊值 all。
区域的名称。
区域的撤离状态。如果为 EVACUATED,则表示区域已撤离到 DEST 值所指定的位置。如果为 SKIPPED,则表示未尝试撤离,区域可能仍在运行中。如果为 FAILED,则表示撤离失败,ERROR 字段将会提供更多信息。
区域撤离到的目标 RAD URI,或在 FAILED 状态下最后一次尝试的目标。
如果状态为 SKIPPED 或 FAILED,则该属性会提供相关的错误状态。
使用稳定的可供计算机解析的格式显示。使用 –s 选项时必须使用 –o 选项。
撤离主机系统。或者,使用 –r 选项将区域返回到主机。
对于每个正在运行的区域,撤离会将区域实时迁移到在其 SMF 服务实例中配置的目标。
如果个别区域的标记不支持实时迁移,则会跳过撤离,并且该区域将变为 SKIPPED 状态。
如果指定了 –a 选项,则还可以使用冷迁移来撤离未在运行的区域。
如果个别区域无法撤离,则该区域的状态将变为 FAILED,并且 ERROR 值将被填入更多信息。
同时撤离未在运行的区域和正在运行的区域。
详细报告撤离进度。
仅报告错误。
模拟运行撤离。计划迁移,并对每个区域模拟运行到目标主机的迁移。
返回区域。每个已撤离区域均从其目标迁移而来,如果区域仍在目标中运行,则返回到源主机。如果指定了 –a 选项且区域未在运行,则冷迁移区域。
如果首次运行撤离时某些区域无法撤离,则可能会运行撤离多次。仅当整个撤离过程完成时,返回状态才为成功。这意味着,执行 sysadm 命令后相关主机上应该没有正在运行的区域。
# 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> 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
将返回以下退出值:
成功完成。
对于撤离,此退出值意味着源系统上没有仍在运行的区域。对于撤离返回,此退出值意味着所有区域均已迁回到源系统。
出现错误。
有关下列属性的说明,请参见 attributes(7):
|
zones(7)、solaris-kz(7)、solaris(7)、rad(8)、beadm(8)、svc.zones(8)