mostly built to manage system users, so it is lacking some features useful for managing normal users. Parameters ---------- ensure, expiry, gid, groups, home, keys, managehome, membership, name, password, password_max_age, password_min_age, salt, shell,system, uid Providers --------- aix, directoryservice, hpuxuseradd, ldap, pw, user_role_add, useradd, windows_adsi RAL: Resource types (III)
Purpose of the language: ◦ Describe desired state of the system by declaring resources ◦ Every other part of the language exists to add flexibility and convenience to the way resources are declared • Programs are called manifests • A manifest is compiled into a catalog
> hello-world.pp root@chamber:~# puppet apply hello-world.pp Notice: Compiled catalog for chamber.faita.net in environment production in 0.02 seconds Notice: hello world Notice: /Stage[main]/Main/Notify[hello world]/message: defined 'message' as 'hello world' Notice: Finished catalog run in 3.15 seconds
Hierarchical • Avoid repetition ◦ Write common data for most nodes ◦ Override some values for nodes with a specific role ◦ Override some of those values for one or two unique nodes • Ref: http://docs.puppetlabs.com/hiera/1/