系统管理指南:Oracle Solaris Containers-资源管理和 Oracle Solaris Zones

使用 rcapadm 管理资源上限设置守护进程

本节介绍了有关使用 rcapadm 命令配置资源上限设置守护进程的过程。有关更多信息,请参见rcapd 配置rcapadm(1M) 手册页。此外,还介绍了使用 rcapadm 为区域指定临时资源上限的过程。

如果使用时不带参数,rcapadm 将显示资源上限设置守护进程(如果已配置)的当前状态。

Procedure如何设置内存上限执行阈值

可以对上限进行配置,以便在可用于进程的物理内存很低时执行。有关更多信息,请参见内存上限执行阈值

最小(和缺省)值为 0,这意味着将始终执行内存上限。要设置不同的最小值,请遵照以下过程执行操作。

  1. 成为超级用户,或者承担包括进程管理配置文件的角色。

    系统管理员角色包括进程管理配置文件。有关如何创建该角色并将其指定给用户的信息,请参见《系统管理指南:安全性服务》中的“管理 RBAC(任务列表)”。

  2. 使用 rcapadm-c 选项为内存上限执行设置不同的物理内存使用率值。


    # rcapadm -c percent
    

    percent 的范围为 0 至 100。值越高,限制就越小。较高的值表示在系统的内存使用率超过此阈值之前,可以在不执行上限的情况下执行具有上限的项目的工作负荷。

另请参见

要显示当前物理内存使用率和上限执行阈值,请参见报告内存使用率和内存上限执行阈值

Procedure如何设置操作间隔

rcapd 操作间隔介绍了有关由 rcapd 执行的定期操作的间隔的信息。要使用 rcapadm 设置操作间隔,请遵照以下过程执行操作。

  1. 成为超级用户,或者承担包括进程管理配置文件的角色。

    系统管理员角色包括进程管理配置文件。有关如何创建该角色并将其指定给用户的信息,请参见《系统管理指南:安全性服务》中的“管理 RBAC(任务列表)”。

  2. 使用 -i 选项设置间隔值。


    # rcapadm -i interval=value,...,interval=value 
    

    注 –

    所有间隔值都以秒为单位指定。


Procedure如何启用资源上限设置

可以通过三种方法在系统上启用资源上限设置。启用资源上限设置还可以使用缺省值设置 /etc/rcap.conf 文件。

  1. 成为超级用户,或者承担包括进程管理配置文件的角色。

    系统管理员角色包括进程管理配置文件。有关如何创建该角色并将其指定给用户的信息,请参见《系统管理指南:安全性服务》中的“管理 RBAC(任务列表)”。

  2. 通过以下方法之一启用资源上限设置守护进程:

    • 使用 svcadm 命令启用资源上限设置。


      # svcadm enable rcap
      
    • 要启用资源上限设置守护进程,以使其现在启动并且也在每次引导系统时启动,请键入:


      # rcapadm -E
      
    • 如果不是现在启用资源上限设置守护进程,而是在引导时启用它,则还应指定 -n 选项:


      # rcapadm -n -E
      

Procedure如何禁用资源上限设置

可以通过三种方法在系统上禁用资源上限设置。

  1. 成为超级用户,或者承担包括进程管理配置文件的角色。

    系统管理员角色包括进程管理配置文件。有关如何创建该角色并将其指定给用户的信息,请参见《系统管理指南:安全性服务》中的“管理 RBAC(任务列表)”。

  2. 通过以下方法之一禁用资源上限设置守护进程:

    • 使用 svcadm 命令禁用资源上限设置。


      # svcadm disable rcap
      
    • 要禁用资源上限设置守护进程,以使其现在停止并且不会在引导系统时启动,请键入:


      # rcapadm -D
      
    • 要在不停止资源上限设置守护进程的情况下禁用它,还应指定 -n 选项:


      # rcapadm -n -D
      

    提示 –

    安全禁用资源上限设置守护进程


    使用 svcadm 命令或带有 D-rcapadm 命令可以安全地禁用 rcapd。如果中止该守护进程(请参见 kill(1) 手册页),则进程可能处于停止状态,并且需要手动重新启动。要使进程恢复运行,请使用 prun 命令。有关更多信息,请参见 prun(1) 手册页。

Procedure如何为区域指定临时资源上限

此过程用于分配指定区域可占用的最大内存量。此值只会持续到下次重新引导。要设置持久性上限,请使用 zonecfg 命令。

  1. 成为超级用户,或者承担包括进程管理配置文件的角色。

    系统管理员角色包括进程管理配置文件。

  2. 为区域 my-zone 设置 512 MB 的最大内存值。


    # rcapadm -z testzone -m 512M