The following SMF features are new in this release:
enterprise-profile layer – Configuration that applies across all of the Oracle Solaris systems for an enterprise.
node-profile layer – Configuration that is specific to a particular Oracle Solaris instance.
The existing site-profile layer had been used for any configuration that was not delivered by Oracle Solaris, such as configuration delivered by sysconfig or by user profiles. In Oracle Solaris 11.4, the site-profile layer is for configuration that is common to many systems at the same location or site. Most configuration that previously belonged to the site-profile layer now belongs to the node-profile layer.
When a system is initially updated to Oracle Solaris 11.4, all profiles in the /etc/svc/profile/site/ directory and the /etc/svc/profile/site.xml profile, if it exists, are moved to the /etc/svc/profile/node/ directory. The configuration these profiles describe is then part of the node-profile layer. Moved profiles are named to indicate that they were moved and where they were previously located. For example, the /etc/svc/profile/site/sc_profile.xml profile might be moved to /etc/svc/profile/node/migrated_etc_svc_profile_site_sc_profile.xml, and /etc/svc/profile/site.xml might be moved to /etc/svc/profile/node/migrated_etc_svc_profile_site.xml.
Any file in the /etc/svc/profile/site/ directory that was delivered by an IPS package is not moved, and that configuration remains part of the site-profile layer.
sysconfig-profile layer – Configuration that is specified by using the sysconfig command interactively, and any configuration that is specified in a profile that is installed by an AI client or by the zoneadm (install, attach, or clone) command.
When a system is initially updated to Oracle Solaris 11.4, all .xml files in the /etc/svc/profile/sysconfig/ directory are backed up into the /etc/svc/profile/backup/timestamp/profiles.tar file. Some of the profiles in this directory might contain configuration performed by sysconfig or the Oracle Solaris installer and might contain active configuration at the admin layer. Profiles that contain active configuration are left in place, effectively migrating the configuration from the admin layer to the sysconfig-profile layer. Any profile in the /etc/svc/profile/sysconfig directory that is not referenced by the SMF repository is removed after being backed up into the /etc/svc/profile/backup/timestamp/profiles.tar file.
The parent of a property group can be a service or service instance or another property group. Another way to describe this feature is a property group can have properties and can have any number of child property groups. Nesting property groups enables finer definition of relationships among configuration data. To identify properties in a nested property group, name all the parent property groups as well, as shown in Inspecting Service Configuration.
The -G option can be used with the svcprop and svccfg commands to specify a property group. The -P option can be used to specify a property. The -T option can be used with the svccfg command to specify a property type. See Inspecting Service Configuration.
Property group names and property names can contain any character defined in Uniform Resource Identifier (URI) Generic Syntax RFC 3986. See Naming Property Groups and Properties in Developing System Services in Oracle Solaris 11.4.
If your application requires multiple configuration files that have the same syntax, you can use the stencil defines feature to use a single service to define all configuration files.
A goal service provides a single point of monitoring for a configurable set of dependent services. Most services that cannot reach the online state remain silently in the offline state. A goal service transitions to the maintenance state and generates an FMA alert if any of its dependencies cannot be satisfied without administrative intervention.
The svcadm goals command configures goal dependencies for a goal service. See Changing the Goals of a Goal Service. As with other subcommands of the svcadm command, the svcadm goals command can take the -s option to request synchronous behavior.