2009/371 Allow Property Modification in SMF profiles
Liane Praza
liane.praza at sun.com
Fri Jun 26 14:29:34 PDT 2009
I'm submitting this as a Closed-Approved-Automatic case on behalf of
Antonello Cruz. It has been reviewed by the SMF community and I believe
constitutes an obvious extension to an existing piece of architecture. As
always, please let me know if you disagree and wish for me to promote to a
fasttrack.
It requests patch binding, though there are no plans to backport the work.
liane
---
1. Introduction
1.1. Project/Component Working Name:
Allow Property Modification in SMF profiles
1.2. Name of Document Author/Supplier:
Author: Antonello Cruz
1.3 Date of This Document:
26 June, 2009
3. Interfaces
New svccfg apply option:
-n Committed
4. Technical Description
Summary
=======
The Service Management Facility (SMF) [1] doesn't provide
administrators with a way to apply customization to existing
services during deployment. /var/svc/profile/site.xml is available
to site administrators today to customize only the enabled
property. We intend to extend the profile syntax to allow
customization of arbitrary properties.
An example on how this project can facilitate site customization
deployment is the Secure By Default project [2]. In the SBD
project, some services should be enabled in the both of the modes
represented by generic_open.xml and generic_limited_net.xml
profiles, but with different service-specific behavior. Although
the behaviors can be controlled by SCF properties, modifying them
had to be hard-coded into the netservices(1M) command. Specifying
values for these properties in the generic_*.xml profiles would
simplify the netservices command.
Properties specified for services or instances which are not
available at profile application time will continue to be ignored.
Services and instances modified by the profile will be refreshed.
Profiles behavior during upgrade will not change.
This project extends the svccfg apply command to permit profile
files to specify values for arbitrary properties on services and
instances. This project requests a patch release binding, but we
have no current plan to backport it.
References
==========
[1] PSARC 2002/547 Greenline
[2] PSARC 2004/368 Secure By Default, Phase 1
http://arc.opensolaris.org/caselog/PSARC/2004/368/
Manpages diffs
==============
smf(5)
--- smf.man5.original Tue Jun 16 11:24:51 2009
+++ smf.man5 Fri Jun 19 16:32:22 2009
@@ -309,7 +309,10 @@
profiles Files that contain a set of service instances
and values for the enabled property (type
boolean in the general property group) on each
- instance.
+ instance. It can also contain configuration
+ values for properties in services and
+ instances. Template elements cannot be defined
+ in a profile.
Service bundles can be imported or exported from a reposi-
tory using the svccfg(1M) command. See service_bundle(4) for
svccfg(1M)
--- svccfg.man1m.original Tue Jun 16 10:47:31 2009
+++ svccfg.man1m Thu Jun 25 10:33:32 2009
@@ -101,16 +101,25 @@
Turns off verbose mode.
Service Profile Subcommands
- apply file
+ apply [-n] file
- If file is a service profile, then service instances
- specified within the file are enabled or disabled
- according to it. See smf(5) for a description of service
- profiles. This command requires privileges to modify the
- "general/enabled" property of the service instances. See
- smf_security(5) for the privileges required to modify
- properties. If file is not a service profile, the sub-
- command fails.
+ If a file is a service profile, properties, including
+ general/enabled, which are specified in the file are
+ modified in the SMF repository. Non-existing properties
+ and property groups will be created. The type of
+ pre-existing property groups will not be changed by the
+ profile. Existing properties can have their type
+ changed by the profile. Non-existing services and
+ instances are ignored. Services and instances modified
+ by the profile will be refreshed. If -n is used, the
+ profile is processed and no changes are applied to the
+ SMF repository. Any syntax error found will be reported
+ on stderr and an exit code of 1 will be returned. See
+ smf(5) for a description of service profiles. This
+ command requires privileges to modify properties in the
+ service and instance. See smf_security(5) for the
+ privileges required to modify properties. If file is not
+ a service profile, the subcommand fails.
extract [> file]
More information about the opensolaris-arc
mailing list