These files are in /usr/share/auto_install/sc_profiles on any Oracle Solaris system. Each of the files also contains instructions on settings that you must manually specify to make the files applicable during installation.
Caution - The contents displayed in this appendix are extracts to show only the important property settings. They do not constitute valid XML files. |
The following profiles are covered:
The profile creates a user account, root password, keyboard mapping and timezone settings, and an IPv4 DHCP configuration.
<service_bundle type="profile" name="system configuration">
<service name="system/config-user" version="1">
<instance name="default" enabled="true">
<property_group name="user_account">
<propval name="login" value="jack"/>
<propval name="password" value="9Nd/cwBcNWFZg"/>
<propval name="description" value="default_user"/>
<propval name="shell" value="/usr/bin/bash"/>
<propval name="gid" value="10"/>
<propval name="uid" value="101"/>
<propval name="type" value="normal"/>
<propval name="roles" value="root"/>
<propval name="profiles" value="System Administrator"/>
</property_group>
<property_group name="root_account">
<propval name="password"
value="$5$dnRfcZse$Hx4aBQ161Uvn9ZxJFKMdRiy8tCf4gMT2s2rtkFba2y4"/>
<propval name="type" value="role"/>
</property_group>
</instance>
</service>
<service version="1" name="system/identity">
<instance enabled="true" name="node">
<property_group name="config">
<propval name="nodename" value="solaris"/>
</property_group>
</instance>
</service>
<service name="system/console-login" version="1">
<instance name="default" enabled="true">
<property_group name="ttymon">
<propval name="terminal_type" value="sun"/>
</property_group>
</instance>
</service>
<service name="system/keymap" version="1">
<instance name="default" enabled="true">
<property_group name="keymap">
<propval name="layout" value="US-English"/>
</property_group>
</instance>
</service>
<service name="system/timezone" version="1">
<instance name="default" enabled="true">
<property_group name="timezone">
<propval name="localtime" value="UTC"/>
</property_group>
</instance>
</service>
<service name="system/environment" version="1">
<instance name="init" enabled="true">
<property_group name="environment">
<propval name="LANG" value="en_US.UTF-8"/>
</property_group>
</instance>
</service>
<service name="network/ip-interface-management" version="1" type="service">
<instance name="default" enabled="true">
<property_group name="interfaces" type="application">
<!-- interface configuration -->
<property_group name="{{AI_NETLINK_VANITY}}" type="interface-ip">
<property name="address-family" type="astring">
<astring_list>
<value_node value="ipv4"/>
<value_node value="ipv6"/>
</astring_list>
</property>
<!-- IPv4 DHCP address -->
<property_group name="v4" type="address-dhcp"/>
</property_group>
</property_group>
</instance>
</service>
</service_bundle>
The profile customizes data link names for network configuration.
<service_bundle type="profile" name="system configuration">
<service name="network/datalink-management" type="service" version="1">
<instance name="default" enabled="true">
<property_group name="datalinks" type="application">
<!--
customize datalink names for ixgbe0/1 to "corporate0"/"lab0", set
lab0 mtu to 9000
-->
<property_group name="corporate0" type="datalink-phys">
<propval name='devname' type='astring' value='ixgbe0'/>
</property_group>
<property_group name="lab0" type="datalink-phys">
<propval name='devname' type='astring' value='ixgbe1'/>
<propval name='mtu' type='count' value='9000'/>
</property_group>
</property_group>
</instance>
</service>
</service_bundle>
The profile launches the SCI tool after first boot for an interactive configuration.
<service_bundle type="profile" name="enable_SCI_tool">
<service name="milestone/config" version="1" type="service">
<instance name="default" enabled="true">
<property_group name="sysconfig" type="sysconfig">
<propval name="configure" value="true" type="boolean"/>
<propval name="interactive_config" value="true" type="boolean"/>
<propval name="config_groups" value="system" type="astring"/>
</property_group>
</instance>
</service>
</service_bundle>
The profile creates an InfiniBand network configuration.
<service_bundle type="profile" name="system configuration">
<service name='network/datalink-management' type='service' version='0'>
<instance name='default' enabled='true'>
<property_group name='datalinks' type='application'>
<property_group name='part1' type='datalink-part'>
<propval name='linkover' type='astring' value='net1'/>
<propval name='media' type='astring' value='Infiniband'/>
<propval name='pkey' type='astring' value='0xFFFF'/>
</property_group>
</property_group>
</instance>
</service>
<service name='network/ip-interface-management' type='service' version='0'>
<instance name='default' enabled='true'>
<property_group name='interfaces' type='application'>
<property_group name='part1' type='interface-ip'>
<property_group name='v4' type='address-static'>
<propval name='ipv4-address' type='astring' value='x.x.x.x'/>
<propval name='prefixlen' type='count' value='x'/>
<propval name='up' type='astring' value='yes'/>
</property_group>
<propval name='address-family' type='astring' value='ipv4'/>
</property_group>
</property_group>
<property_group name='static-routes' type='application'>
<property_group name='route-1' type='static-route'>
<propval name='destination' type='astring' value='default'/>
<propval name='family' type='astring' value='inet'/>
<propval name='gateway' type='astring' value='x.x.x.x'/>
<propval name='isgateway' type='boolean' value='true'/>
</property_group>
</property_group>
</instance>
</service>
<service name="network/dns/client" version="1">
<property_group name="config">
<property name="nameserver">
<net_address_list>
<value_node value="x.x.x.x"/>
</net_address_list>
</property>
<property name="search">
<astring_list>
<value_node value="example.com"/>
</astring_list>
</property>
</property_group>
<instance name="default" enabled="true"/>
</service>
<service version="1" name="system/name-service/switch">
<property_group name="config">
<propval name="default" value="files"/>
<propval name="host" value="files dns mdns"/>
</property_group>
<instance enabled="true" name="default"/>
</service>
<service version="1" name="system/name-service/cache">
<instance enabled="true" name="default"/>
</service>
</service_bundle>
The profile creates an IPMP configuration over 2 IP interfaces.
<service_bundle type="profile" name="system configuration">
<service name="network/ip-interface-management" version="1" type="service">
<instance name="default" enabled="true">
<property_group name="interfaces" type="application">
<!-- net1 interface configuration -->
<property_group name="net1" type="interface-ip">
<property name="address-family" type="astring">
<astring_list>
<value_node value="ipv4"/>
<value_node value="ipv6"/>
</astring_list>
</property>
<propval name="ipmp-interface" type="astring" value="ipmp1"/>
</property_group>
<!-- net2 standby interface configuration -->
<property_group name="net2" type="interface-ip">
<property name="address-family" type="astring">
<astring_list>
<value_node value="ipv4"/>
<value_node value="ipv6"/>
</astring_list>
</property>
<propval name="ipmp-interface" type="astring" value="ipmp1"/>
<property_group name="ip" type="interface-protocol-ip">
<propval name="standby" type="astring" value="on"/>
</property_group>
</property_group>
<!-- IPMP interface configuration -->
<property_group name="ipmp1" type="interface-ipmp">
<property name="address-family" type="astring">
<astring_list>
<value_node value="ipv4"/>
<value_node value="ipv6"/>
</astring_list>
</property>
<property name="under-interfaces" type="astring">
<astring_list>
<value_node value="net1"/>
<value_node value="net2"/>
</astring_list>
</property>
<!-- IPv4 static address -->
<property_group name="data1" type="address-static">
<propval name="ipv4-address" type="astring" value="2.3.4.5"/>
<propval name="prefixlen" type="count" value="24"/>
<propval name="up" type="astring" value="yes"/>
</property_group>
</property_group>
</property_group>
</instance>
</service>
</service_bundle>
The profile configures the network with a static IPv4 address, a static route, and an addrconf address.
<service_bundle type="profile" name="system configuration">
<service name="network/ip-interface-management" version="1" type="service">
<instance name="default" enabled="true">
<property_group name="interfaces" type="application">
<!-- interface configuration -->
<property_group name="{{AI_NETLINK_VANITY}}" type="interface-ip">
<property name="address-family" type="astring">
<astring_list>
<value_node value="ipv4"/>
<value_node value="ipv6"/>
</astring_list>
</property>
<!-- IPv4 static address -->
<property_group name="v4" type="address-static">
<propval name="ipv4-address" type="astring" value="{{AI_IPV4}}"/>
<propval name="prefixlen" type="count" value="{{AI_IPV4_PREFIXLEN}}"/>
<propval name="up" type="astring" value="yes"/>
</property_group>
<!-- IPv6 addrconf address -->
<property_group name="v6" type="address-addrconf">
<propval name="interface-id" type="astring" value="::"/>
<propval name="prefixlen" type="count" value="0"/>
<propval name="stateful" type="astring" value="yes"/>
<propval name="stateless" type="astring" value="yes"/>
</property_group>
<!-- default static route through interface -->
<property_group name="route-1" type="static-route">
<propval name="destination" type="astring" value="default"/>
<propval name="family" type="astring" value="inet"/>
<propval name="gateway" type="astring" value="{{AI_ROUTER}}"/>
</property_group>
</property_group>
</property_group>
</instance>
</service>
<service name="network/dns/client" version="1">
<property_group name="config">
<property name="nameserver">
<net_address_list>
<value_node value="x.x.x.x"/>
</net_address_list>
</property>
<property name="search">
<astring_list>
<value_node value="example.com"/>
</astring_list>
</property>
</property_group>
<instance name="default" enabled="true"/>
</service>
<service version="1" name="system/name-service/switch">
<property_group name="config">
<propval name="default" value="files"/>
<propval name="host" value="files dns mdns"/>
</property_group>
<instance enabled="true" name="default"/>
</service>
<service version="1" name="system/name-service/cache">
<instance enabled="true" name="default"/>
</service>
</service_bundle>
The profile creates a virtual network configuration with a VNIC, link aggregation, and flow settings.
<service_bundle type="profile" name="system configuration">
<service name="network/datalink-management" version="1" type="service">
<instance name="default" enabled="true">
<property_group name="datalinks" type="application">
<!-- vnic configured over net0 -->
<property_group name="vnic0" type="datalink-vnic">
<propval name="linkover" type="astring" value="net0"/>
<propval name="mac-address-type" type="astring" value="random"/>
<propval name="media" type="astring" value="Ethernet"/>
<propval name="vid" type="astring" value="0"/>
</property_group>
<!-- aggregation of net1 and net2 -->
<property_group name="aggr1" type="datalink-aggr">
<propval name="aggr-mode" type="astring" value="trunk"/>
<propval name="force" type="boolean" value="false"/>
<propval name="key" type="count" value="0"/>
<propval name="lacp-mode" type="astring" value="off"/>
<propval name="lacp-timer" type="astring" value="short"/>
<propval name="media" type="astring" value="Ethernet"/>
<propval name="num-ports" type="count" value="2"/>
<propval name="policy" type="astring" value="L4"/>
<property name="ports" type="astring">
<astring_list>
<value_node value="net1"/>
<value_node value="net2"/>
</astring_list>
</property>
</property_group>
</property_group>
<property_group name="flows" type="application">
<!-- https flow over vnic0 for port 443 -->
<property_group name="https1" type="flow">
<propval name="linkover" type="astring" value="vnic0"/>
<propval name="local-port" type="count" value="443"/>
<propval name="max-bw" type="astring" value="500M"/>
<propval name="transport" type="astring" value="tcp"/>
</property_group>
</property_group>
</instance>
</service>
<service name="network/ip-interface-management" version="1"
type="service">
<instance name="default" enabled="true">
<property_group name="interfaces" type="application">
<!-- configuration for vnic0 -->
<property_group name="vnic0" type="interface-ip">
<property name="address-family" type="astring">
<astring_list>
<value_node value="ipv4"/>
<value_node value="ipv6"/>
</astring_list>
</property>
<!-- IPv4 DHCP address -->
<property_group name="v4" type="address-dhcp"/>
<!-- IPv6 addrconf address -->
<property_group name="v6" type="address-addrconf">
<propval name="interface-id" type="astring" value="::"/>
<propval name="prefixlen" type="count" value="0"/>
<propval name="stateful" type="astring" value="yes"/>
<propval name="stateless" type="astring" value="yes"/>
</property_group>
</property_group>
</property_group>
</instance>
</service>
</service_bundle>
The profile creates a network/dns/client configuration.
<service_bundle type="profile" name="dns configuration">
<service name="network/dns/client" version="1">
<property_group name="config">
<property name="nameserver">
<net_address_list>
<value_node value="x.x.x.x"/>
<value_node value="x.x.x.x"/>
</net_address_list>
</property>
<property name="search">
<astring_list>
<value_node value="example.com"/>
</astring_list>
</property>
</property_group>
<instance name="default" enabled="true"/>
</service>
<service version="1" name="system/name-service/switch">
<instance enabled="true" name="default"/>
<property_group name="config">
<propval name="default" value="files"/>
<propval name="host" value="files dns mdns"/>
</property_group>
</service>
<service version="1" name="system/name-service/cache">
<instance enabled="true" name="default"/>
</service>
</service_bundle>
The activates an unconfigure scenario.
<service_bundle type="profile" name="unconfig_profile">
<service name="milestone/unconfig" version="1" type="service">
<property_group name="sysconfig" type="application">
<propval name="shutdown" type="boolean" value="false"/>
<propval name="destructive_unconfig" type="boolean" value="false"/>
<propval name="unconfig_groups" type="astring" value="system "/>
<propval name="unconfigure" type="boolean" value="true"/>
</property_group>
</service>
</service_bundle>