Configuration management is the process of standardizing and enforcing resource configurations across IT infrastructure in an automated way. An example is setting a policy that the SNMP service must be installed and running. This can be defined using YAML and specifying that the net-snmp package must be installed and the SNMP daemon service must be enabled and running. Jinja templating allows variables like the location and contact details to be set using pillar data and different configurations to be set based on the operating system grains. States can then be applied to nodes using Salt functions to configure systems according to the defined policies and pillars in an automated and consistent manner.