- Overview
- Module Description - What the module does and why it is useful
- Setup - The basics of getting started with solaris_providers
- Usage - Configuration options and additional functionality
- Limitations - OS compatibility, etc.
- Development - Guide for contributing to the module
The Oracle Solaris Providers module includes Solaris-specific implementations of types and providers. These include some common features as well as features found exclusively on Oracle Solaris.
The Oracle Solaris Providers module currently enables configuration of the following:
- Boot Environments via beadm
- Naming Services via svccfg, svcprop
- Image Pacakging System (IPS) configuration via pkg
- Solaris Integrated Load Balancer (ILB) via ilbadm
- Solaris Elastic Virtual Switch (EVS) via evsadm
- Service Management Facility (SMF) Properties via svccfg, svcprop
- IP Interface Configuration via ipadm
- Datalink Management via dladm
- ZFS ACLs and file Attributes via chmod
Oracle Solaris Providers override the core Puppet providers for:
- Zones via zoneadm, zonecfg
See documentation index for details
For Solaris 11.x pkg install puppet
No additional setup or configuration is required.
Common activities include modifying service properties
Two ways to change the domain configuration:
- Via svccfg
# Service is provided by Core Puppet
# Make sure dns/client:default is running
# Required for notification of property change
service { 'svc:/network/dns/client:default':
ensure => 'running'
}
# Set domain to oracle.lab, dns/client:default must be refreshed to
# write the config to /etc/resolv.conf
svccfg { 'svc:/network/dns/client:default/:properties/config/domain':
ensure => 'present',
type => 'astring',
value => 'oracle.lab',
notify => Service['svc:/network/dns/client:default'];
}
- Via the DNS provider
# Set the domain to oracle.lab
dns { 'current':
domain => 'oracle.lab'
}
Set the server for puppet/agent
# enable puppet:agent
service { 'svc:/application/puppet:agent':
ensure => 'running'
}
# configure puppet:agent, refresh the service to write puppet.conf
svccfg { 'svc:/application/puppet:agent/:properties/config/server':
ensure => 'present',
type => 'astring',
value => 'puppet',
notify => Service['svc:/application/puppet:agent'],
}
See links to extracted documents listed above.
These modules were created for use on Oracle Solaris 11 and 11.4.
Contributors should issue pull requests via Github see contributing and testing.
Package installation is via Puppet Core package provider
Solaris providers are shipped with Solaris in the oracle-solaris_providers IPS package and installed automatically with puppet. Use of the module from this repo is possible but not addressed in this document.