Chapter 13
Creating and Administering Resource Pools (Tasks)
This chapter describes how to set up and administer resource pools on your system.
For background information about resource pools, see Chapter 12, Resource Pools (Overview).
Administering Resource Pools (Task Map)
Task | Description | For Instructions |
---|---|---|
Enable or disable resource pools. | Activate or disable resource pools on your system. | |
Enable or disable dynamic resource pools. | Activate or disable dynamic resource pools facilities on your system. | |
Create a static resource pools configuration. | Create a static configuration file that matches the current dynamic configuration. For more information, see Resource Pools Framework. | |
Modify a resource pools configuration. | Revise a pools configuration on your system, for example, by creating additional pools. | |
Associate a resource pool with a scheduling class. | Associate a pool with a scheduling class so that all processes bound to the pool use the specified scheduler. | |
Set configuration constraints and define configuration objectives. | Specify objectives for poold to consider when taking corrective action. For more information on configuration objectives, see poold Overview. | How to Set Configuration Constraints and How to Define Configuration Objectives |
Set the logging level. | Specify the level of logging information that poold generates. | |
Use a text file with the poolcfg command. | The poolcfg command can take input from a text file. | |
Transfer resources in the kernel. | Transfer resources in the kernel. For example, transfer resources with specific IDs to a target set. | |
Activate a pools configuration. | Activate the configuration in the default configuration file. | |
Validate a pools configuration before you commit the configuration. | Validate a pools configuration to test what will happen when the validation occurs. | How to Validate a Configuration Before Committing the Configuration |
Remove a pools configuration from your system. | All associated resources, such as processor sets, are returned to their default status. | |
Bind processes to a pool. | Manually associate a running process on your system with a resource pool. | |
Bind tasks or projects to a pool. | Associate tasks or projects with a resource pool. | |
Bind new processes to a resource pool. | To automatically bind new processes in a project to a given pool, add an attribute to each entry in the project database. | |
Use project attributes to bind a process to a different pool. | Modify the pool binding for new processes that are started. | How to Use project Attributes to Bind a Process to a Different Pool |
Use the poolstat utility to produce reports. | Produce multiple reports at specifed intervals. | |
Report resource set statistics. | Use the poolstat utility to report statistics for a pset resource set. |
Enabling and Disabling the Pools Facility
You can enable and disable the resource pools and dynamic resource pools services on your system by using the svcadm command described in the svcadm(1M) man page.
You can also use the pooladm command described in the pooladm(1M) man page to perform the following tasks:
Enable the pools facility so that pools can be manipulated
Disable the pools facility so that pools cannot be manipulated
Note - When a system is upgraded, if the resource pools framework is enabled and an /etc/pooladm.conf file exists, the pools service is enabled and the configuration contained in the file is applied to the system.
How to Enable the Resource Pools Service Using svcadm
Become superuser, or assume a role that includes the Process Management profile.
The System Administrator role includes the Process Management profile. For more information about roles, see "Using the Solaris Management Tools With RBAC (Task Map)" in System Administration Guide: Basic Administration.
Enable the resource pools service.
# svcadm enable system/pools:default
How to Disable the Resource Pools Service Using svcadm
Become superuser, or assume a role that includes the Process Management profile.
The System Administrator role includes the Process Management profile. For more information about roles, see "Using the Solaris Management Tools With RBAC (Task Map)" in System Administration Guide: Basic Administration.
Disable the resource pools service.
# svcadm disable system/pools:default
How to Enable the Dynamic Resource Pools Service Using svcadm
Become superuser, or assume a role that includes the Service Management rights profile.
Roles contain authorizations and privileged commands. For more information about roles, see "Using the Solaris Management Tools With RBAC (Task Map)" in System Administration Guide: Basic Administration.
Enable the dynamic resource pools service.
# svcadm enable system/pools/dynamic:default
Example 13-1 Dependency of the Dynamic Resource Pools Service on the Resource Pools Service
This example shows that you must first enable resource pools if you want to run DRP.
There is a dependency between resource pools and dynamic resource pools. DRP is now a dependent service of resource pools. DRP can be independently enabled and disabled apart from resource pools.
The following display shows that both resource pools and dynamic resource pools are currently disabled:
# svcs *pool* STATE STIME FMRI disabled 10:32:26 svc:/system/pools/dynamic:default disabled 10:32:26 svc:/system/pools:default |
Enable dynamic resource pools :
# svcadm enable svc:/system/pools/dynamic:default # svcs -a | grep pool disabled 10:39:00 svc:/system/pools:default offline 10:39:12 svc:/system/pools/dynamic:default |
Note that the DRP service is still offline.
Use the -x option of the svcs command to determine why the DRP service is offline:
# svcs -x *pool* svc:/system/pools:default (resource pools framework) State: disabled since Wed 25 Jan 2006 10:39:00 AM GMT Reason: Disabled by an administrator. See: http://sun.com/msg/SMF-8000-05 See: libpool(3LIB) See: pooladm(1M) See: poolbind(1M) See: poolcfg(1M) See: poolstat(1M) See: /var/svc/log/system-pools:default.log Impact: 1 dependent service is not running. (Use -v for list.) svc:/system/pools/dynamic:default (dynamic resource pools) State: offline since Wed 25 Jan 2006 10:39:12 AM GMT Reason: Service svc:/system/pools:default is disabled. See: http://sun.com/msg/SMF-8000-GE See: poold(1M) See: /var/svc/log/system-pools-dynamic:default.log Impact: This service is not running. |
Enable the resource pools service so that the DRP service can run:
# svcadm enable svc:/system/pools:default |
When the svcs *pool* command is used, the system displays:
# svcs *pool* STATE STIME FMRI online 10:40:27 svc:/system/pools:default online 10:40:27 svc:/system/pools/dynamic:default |
Example 13-2 Effect on Dynamic Resource Pools When the Resource Pools Service Is Disabled
If both services are online and you disable the resource pools service:
# svcadm disable svc:/system/pools:default |
When the svcs *pool* command is used, the system displays:
# svcs *pool* STATE STIME FMRI disabled 10:41:05 svc:/system/pools:default online 10:40:27 svc:/system/pools/dynamic:default # svcs *pool* STATE STIME FMRI disabled 10:41:05 svc:/system/pools:default online 10:40:27 svc:/system/pools/dynamic:default |
But eventually, the DRP service moves to offline because the resource pools service has been disabled:
# svcs *pool* STATE STIME FMRI disabled 10:41:05 svc:/system/pools:default offline 10:41:12 svc:/system/pools/dynamic:default |
Determine why the DRP service is offline:
# svcs -x *pool* svc:/system/pools:default (resource pools framework) State: disabled since Wed 25 Jan 2006 10:41:05 AM GMT Reason: Disabled by an administrator. See: http://sun.com/msg/SMF-8000-05 See: libpool(3LIB) See: pooladm(1M) See: poolbind(1M) See: poolcfg(1M) See: poolstat(1M) See: /var/svc/log/system-pools:default.log Impact: 1 dependent service is not running. (Use -v for list.) svc:/system/pools/dynamic:default (dynamic resource pools) State: offline since Wed 25 Jan 2006 10:41:12 AM GMT Reason: Service svc:/system/pools:default is disabled. See: http://sun.com/msg/SMF-8000-GE See: poold(1M) See: /var/svc/log/system-pools-dynamic:default.log Impact: This service is not running. |
Resource pools must be started for DRP to work. For example, resource pools could be started by using the pooladm command with the -e option:
# pooladm -e |
Then the svcs *pool* command displays:
# svcs *pool* STATE STIME FMRI online 10:42:23 svc:/system/pools:default online 10:42:24 svc:/system/pools/dynamic:default |