SA-355-S10
Solaris Containers Administration

Menu

Introduction

Virtualization Trends in the Datacenter

Describing Solaris Zones and Containers

Creating Installing and Booting Zones

Connecting Storage to Zones

Managing Packages and Patches Within Zones

Configuring Presistant Resource Pools

Configuring Resource Management With Zones

Performing Zone Advanced Network Management

Renaming, Moving, Cloning, and Migrating Solaris Zones

Performing Zone Backups and Restores

Configuring lx Branded Zones

Configuring Resource Pools
Configuring Resource Management With Zones

 

The Solaris Resource Manager (SRM) was a unbundled, separately licensed product for Solaris 2.6, Solaris 7 and Solaris 8. This product was integrated into the Solaris Operating System with the release of Solaris 9.

The Solaris 10 release adds a new container for Resource Management in the form of Zones and new resource controls, additionally parts of the Resource Management Framework are now started as Solaris 10 services.

Some of the resources sited on this page refernece Solaris 9 Resource Management, however the content will apply to Solaris 10 Resource Management with very few exceptions.


From Oracle Documentation

Resource Management

Resource Pools

Physical Memory Control Using the Resource Capping Daemon

Fair Share Scheduler


From www.oracle.com:

White paper, Solaris Containers: Server Virtualization and Managebility

A Solaris Resource Manager quickstart guide.

How to Get Started with IBM WebSphere Application Server on Solaris 10 and Zones.


Bloggers:

John Levon's Sun Blog, Resource management of services

Saurabh Mishra's Weblog, Small demo of Resource Management, Contracts and Service Management Framework

Virtuality: It's like reality, but not as substantial, Using poolbind to execute jobs in different pools

Eric Saxe Weblog, OpenSolaris Scheduling and CPU Management

Amol Chiplunkar's Weblog CPU Caps: Control those CPU Pigs

Infinite Probability: Menno Lageman's Weblog, Resource control observability using kstats

Blog O'Matty, Implementing shared memory resource controls on Solaris hosts

Mandalika's scratchpad Solaris: Resource Controls - Physical Memory

The Mysteries Of Consciousness,Random Thoughts About Random Things CPU capping now available with Solaris 5/08

Halis way, Using Solaris projects with Oracle.

Touch Me! Weblog, Correct way to configure Solaris 10 [kernel parameters] resource controls for Oracle installation

Jeff Victor's Blog,From My Brain to Your Browser, Zonestat 1.4 Now Available.

Blog O. Matty, Resource controls against fork bombs executed inside Solaris Zones

The grey blog, Setting up Solaris 10 projects to control resource usage

The Trouble with Tribbles... Solaris Containers and Shared Memory


From OpenSolaris.org

OpenSolaris Project: Resource Management

OpenSolaris Project: Resource Management, System V IPC resource controls

OpenSolaris Project: Resource Management, CPU caps

OpenSolaris Project: Resource Management, Memory Sets

OpenSolaris Project: Resource Management, Resource Management for Zones

Improved Resource Management and Zones Integration


Other:

Princeton University's Unix Systems, Solaris 10+ Resource Management

Solaris Internals, Zones Resource Controls

Solaris Internals, Solaris Resource Management

andunix.net, Memory Usage of a Solaris Container (Zone)


Solaris 10 Update 5 (5/08) introduces CPU caps. CPU caps provide absolute fine-grained limits on the amount of CPU resources that can be consumed by a project or a zone.

Two new controls are added, project.cpu-cap and zone.cpu-cap. The control is represented as 1% of a cpu. 100 represents 1 full cpu when configured for a project, the control is represented as integer where 1 represents a full cpu and .5 represents 50% of a cpu for zones. the controls are a absolute cap on the cpu resource.

Project CPU cap example:

user.akolb:1234::::project.cpu-cap=(privileged,600,deny)

Sets a 6 cpu limit for the project user.akolb.

Zone CPU cap example:

# zonecfg -z myzone
zonecfg:myzone> add rctl
zonecfg:myzone:rctl> set name=zone.cpu-cap
zonecfg:myzone:rctl> add value (priv=privileged,limit=150,action=deny)
zonecfg:myzone:rctl> end

zonecfg:myzone> info
...
capped-cpu:
        [ncpus: 1.50]
rctl:
        name: zone.cpu-cap
        value: (priv=privileged,limit=150,action=deny)

Sets a one and one half cpu limit for the zone myzone.

# zonecfg -z myzone set capped-cpu=1.25

Sets a one and one quarter cap on the zone myzone.

Dynamically changes a CPU cap for a project:

$ prctl -r -t privileged -n project.cpu-cap -v 80 -i project group.staff

Replaces a cpu cap on the project group.staff, making the new cap 80% of one cpu, reguardless of the number of cpus to which the project has access.