1. Oracle Solaris Cluster 管理简介
2. Oracle Solaris Cluster 和 RBAC
11. 修补 Oracle Solaris Cluster 软件和固件
本节包括以下过程:
执行此过程可为将在全局群集投票节点中执行的资源组分配 CPU 份额。
如果某个资源组分配有 CPU 份额,则当 Oracle Solaris Cluster 软件在全局群集投票节点中启动该资源组的资源时,将执行以下任务:
根据指定的 CPU 份额数,增加分配给该投票节点的 CPU 份额数 (zone.cpu-shares)(如果尚未这样做)。
在该投票节点中创建一个名为 SCSLM_resourcegroup_name 的项目(如果尚未这样做)。此项目特定于该资源组,并分配有指定数目的 CPU 份额 (project.cpu-shares)。
启动 SCSLM_ resourcegroup_name 项目中的资源。
有关配置 CPU 控制工具的更多信息,请参见 rg_properties(5) 手册页。
# dispadmin -d FSS
下次重新引导时,FSS 将成为默认调度程序。要使此配置立即生效,请使用 priocntl 命令。
# priocntl -s -C FSS
组合使用 priocntl 命令和 dispadmin 命令可确保 FSS 立即成为默认调度器,并在重新引导后也保持不变。有关设置调度类的更多信息,请参见 dispadmin(1M) 和 priocntl(1) 手册页。
注 - 如果 FSS 不是默认调度程序,您分配的 CPU 份额将不会生效。
设置这些参数有助于避免在投票节点中运行的进程与在非投票节点中运行的进程争用 CPU。如果没有给 globalzoneshares 和 defaultpsetmin 属性赋值,这些属性将采用各自的默认值。
# clnode set [-p globalzoneshares=integer] \ [-p defaultpsetmin=integer] \ node
设置默认处理器集中可用的最小 CPU 份额数。默认值为 1。
设置分配给投票节点的份额数。默认值为 1。
指定要设置其属性的节点。
设置这些属性即是设置投票节点的属性。如果您不设置这些属性,则无法得益于非投票节点中的 RG_SLM_PSET_TYPE 属性。
# clnode show node
对于您指定的节点,clnode 命令可显示属性集以及为这些属性设置的值。如果未使用 clnode 设置 CPU 控制属性,这些属性将采用默认值。
# clresourcegroup create -p RG_SLM_TYPE=automated \ [-p RG_SLM_CPU_SHARES=value] resource_group_name
允许您控制 CPU 使用情况,并自动执行一些步骤以在 Oracle Solaris OS 中配置系统资源管理。
指定分配给资源组特定项目的 CPU 份额数(即 project.cpu-shares),并确定分配给投票节点的 CPU 份额数(即 zone.cpu-shares)。
指定资源组的名称。
在此过程中,未设置 RG_SLM_PSET_TYPE 属性。在投票节点中,该属性采用 default 值。
这步操作将创建一个资源组。此外,您还可使用 clresourcegroup set 命令修改现有资源组。
# clresourcegroup online -M resource_group_name
指定资源组的名称。
注 - 请不要删除或修改 SCSLM_resource_group_name 项目。您可以手动将更多资源控制添加到项目中,例如,通过配置 project.max-lwps 属性。有关更多信息,请参见 projmod(1M) 手册页。
如果想要为全局群集非投票节点中的资源组分配 CPU 份额,但不需要创建专用的处理器集,请执行此过程。
如果某个资源组分配有 CPU 份额,则当 Oracle Solaris Cluster 软件在非投票节点中启动该资源组的资源时,将执行以下任务:
创建一个名为 SCSLM_resource_group_name 的池(如果尚未这样做)。
将 SCSLM_pool_zone_name 池与默认处理器集关联。
将非投票节点动态绑定到 SCSLM_pool zone_name 池。
根据指定的 CPU 份额数增加为非投票节点分配的 CPU 份额数 (zone.cpu-shares)(如果尚未这样做)。
在非投票节点中创建一个名为 SCSLM_resourcegroup_name 的项目(如果尚未这样做)。此项目特定于该资源组,并分配有指定数目的 CPU 份额 (project.cpu-shares)。
启动 SCSLM_ resourcegroup_name 项目中的资源。
有关配置 CPU 控制工具的更多信息,请参见 rg_properties(5) 手册页。
# dispadmin -d FSS
下次重新引导时,FSS 将成为默认调度程序。要使此配置立即生效,请使用 priocntl 命令:
# priocntl -s -C FSS
组合使用 priocntl 和 dispadmin 命令可确保 FSS 立即成为默认调度器,并在重新引导后也保持不变。有关设置调度类的更多信息,请参见 dispadmin(1M) 和 priocntl(1) 手册页。
注 - 如果 FSS 不是默认调度程序,您分配的 CPU 份额将不会生效。
设置这些参数有助于避免在投票节点中运行的进程与在全局群集非投票节点中运行的进程争用 CPU。如果没有给 globalzoneshares 和 defaultpsetmin 属性赋值,这些属性将采用各自的默认值。
# clnode set [-p globalzoneshares=integer] \ [-p defaultpsetmin=integer] \ node
设置分配给投票节点的份额数。默认值为 1。
设置默认处理器集中可用的最小 CPU 数。默认值为 1。
标识要设置其属性的节点。
设置这些属性即是设置投票节点的属性。
# clnode show node
对于您指定的节点,clnode 命令可显示属性集以及为这些属性设置的值。如果未使用 clnode 设置 CPU 控制属性,这些属性将采用默认值。
# clresourcegroup create -p RG_SLM_TYPE=automated \ [-p RG_SLM_CPU_SHARES=value] resource_group_name
允许您控制 CPU 使用情况,并自动执行一些步骤以在 Oracle Solaris OS 中配置系统资源管理。
指定分配给资源组特定项目的 CPU 份额数 (project.cpu-shares),并确定分配给全局群集非投票节点的 CPU 份额数 ( zone.cpu_shares)。
指定资源组的名称。
这步操作将创建一个资源组。此外,您还可使用 clresourcegroup set 命令修改现有资源组。
如果区域配置中包含默认池以外的池,或者该区域动态绑定到默认池以外的池,则您不能在非投票节点中将 RG_SLM_TYPE 设置为 automated。有关区域配置和池绑定的信息,请分别参见 zonecfg(1M) 和 poolbind(1M) 手册页。查看区域配置,如下所示:
# zonecfg -z zone_name info pool
注 - 对于已配置为在非投票节点中启动的资源(如 HAStoragePlus 或 LogicalHostname 资源),如果将 GLOBAL_ZONE 属性设置为 TRUE,它将在投票节点中启动。即使将 RG_SLM_TYPE 属性设置为 automated,该资源仍无法得益于 CPU 份额配置,并将被视为 RG_SLM_TYPE 设置为 manual 的资源组中的资源。
在此过程中,未设置 RG_SLM_PSET_TYPE 属性。Oracle Solaris Cluster 使用默认处理器集。
# clresourcegroup online -M resource_group_name
指定资源组的名称。
如果将 RG_SLM_PSET_TYPE 设置为 default,Oracle Solaris Cluster 将创建一个名为 SCSLM_pool_zone_name 的池,但不创建处理器集。在这种情况下,SCSLM_pool_zone_name 与默认处理器集关联。
如果不再为非投票节点中的 CPU 控制配置联机资源组,则非投票节点的 CPU 份额值将采用区域配置中 zone.cpu-shares 的值。该参数的默认值为 1。有关区域配置的更多信息,请参见 zonecfg(1M) 手册页。
注 - 请不要删除或修改 SCSLM_resource_group_name 项目。您可以手动将更多资源控制添加到项目中,例如,通过配置 project.max-lwps 属性。有关更多信息,请参见 projmod(1M) 手册页。
如果某个资源组配置为在专用处理器集中执行,则当 Oracle Solaris Cluster 软件在全局群集非投票节点中启动该资源组的资源时,将执行以下任务:
创建一个名为 SCSLM_pool_zone_name 的池(如果尚未这样做)。
创建一个专用处理器集。该处理器集的大小可通过 RG_SLM_CPU_SHARES 属性和 RG_SLM_PSET_MIN 属性来确定。
将 SCSLM_pool_zone_name 池与已创建的处理器集关联。
将非投票节点动态绑定到 SCSLM_pool_zone_name 池。
根据指定的 CPU 份额数增加分配给非投票节点的 CPU 份额数(如果尚未这样做)。
在非投票节点中创建一个名为 SCSLM_resourcegroup_name 的项目(如果尚未这样做)。此项目特定于该资源组,并分配有指定数目的 CPU 份额 (project.cpu-shares)。
启动 SCSLM_resourcegroup_name 项目中的资源。
# dispadmin -d FSS
下次重新引导时,FSS 将成为默认调度程序。要使此配置立即生效,请使用 priocntl 命令。
# priocntl -s -C FSS
组合使用 priocntl 和 dispadmin 命令可确保 FSS 立即成为默认调度器,并在重新引导后也保持不变。有关设置调度类的更多信息,请参见 dispadmin(1M) 和 priocntl(1) 手册页。
注 - 如果 FSS 不是默认调度程序,您分配的 CPU 份额将不会生效。
设置这些参数有助于避免在投票节点中运行的进程与在非投票节点中运行的进程争用 CPU。如果没有给 globalzoneshares 和 defaultpsetmin 属性赋值,这些属性将采用各自的默认值。
# clnode set [-p globalzoneshares=integer] \ [-p defaultpsetmin=integer] \ node
设置默认处理器集中可用的最小 CPU 数。默认值为 1。
设置分配给投票节点的份额数。默认值为 1。
标识要设置其属性的节点。
设置这些属性即是设置投票节点的属性。
# clnode show node
对于您指定的节点,clnode 命令可显示属性集以及为这些属性设置的值。如果未使用 clnode 设置 CPU 控制属性,这些属性将采用默认值。
# clresourcegroup create -p RG_SLM_TYPE=automated \ [-p RG_SLM_CPU_SHARES=value] \ -p -y RG_SLM_PSET_TYPE=value \ [-p RG_SLM_PSET_MIN=value] resource_group_name
允许您控制 CPU 使用情况,并自动执行一些步骤以在 Oracle Solaris OS 中配置系统资源管理。
指定分配给资源组特定项目的 CPU 份额数 (project.cpu-shares),并确定分配给非投票节点的 CPU 份额数 (zone.cpu-shares ) 以及处理器集中处理器的最大数目。
允许创建专用处理器集。如果有专用处理器集,可将此属性设置为 strong 或 weak。值 strong 和 weak 是互斥的。也就是说,对于在同一区域中的多个资源组,不能将一部分配置为 strong,而将另一部分配置为 weak。
确定处理器集中的最小处理器数。
指定资源组的名称。
这步操作将创建一个资源组。此外,您还可使用 clresourcegroup set 命令修改现有资源组。
如果区域配置中包含默认池以外的池,或者该区域动态绑定到默认池以外的池,则您不能在非投票节点中将 RG_SLM_TYPE 设置为 automated。有关区域配置和池绑定的信息,请分别参见 zonecfg(1M) 和 poolbind(1M) 手册页。查看区域配置,如下所示:
# zonecfg -z zone_name info pool
注 - 对于已配置为在非投票节点中启动的资源(如 HAStoragePlus 或 LogicalHostname 资源),如果将 GLOBAL_ZONE 属性设置为 TRUE,则它将在投票节点中启动。即使将 RG_SLM_TYPE 属性设置为 automated,该资源仍不能得益于 CPU 份额和专用处理器集配置,并将被视为 RG_SLM_TYPE 设置为 manual 的资源组中的资源。
指定资源组的名称。
注 - 请不要删除或修改 SCSLM_resource_group_name 项目。您可以手动将更多资源控制添加到项目中,例如,通过配置 project.max-lwps 属性。有关更多信息,请参见 projmod(1M) 手册页。
在资源组联机时对 RG_SLM_CPU_SHARES 和 RG_SLM_PSET_MIN 进行的更改将动态应用。但是,如果 RG_SLM_PSET_TYPE 设置为 strong,且现有 CPU 不足以处理所做更改,则对 RG_SLM_PSET_MIN 进行的更改将不会应用。此时,屏幕显示一条警告消息。下次切换时,如果 CPU 不足以处理您为 RG_SLM_PSET_MIN 配置的值,则会发生因 CPU 不足而导致的错误。
如果不再为非投票节点中的联机资源组配置 CPU 控制,则非投票节点的 CPU 份额值将采用 zone.cpu-shares 的值。该参数的默认值为 1。