Pillar files can be very simple and convenient, and having the ability to template data is very powerful, but sometimes going that route is like trying to fit a square peg into a round hole. There are a number of situations where going outside of
pillar_roots and using an external pillar fits the bill much better.
External pillars are their own type of Salt module, written in Python. You can create your own, but that falls outside the scope of this book. If you would like more information, check out Extending SaltStack, Packt Publishing.
Fortunately, a number of valuable external pillar modules already ship with Salt. For instance, a number of users have begun integrating the
etcd configuration database into their infrastructures. When you use the
etcd pillar, it might feel as if Salt and
etcd were designed for each other!
etcd pillar does require that you create a configuration block in your
master configuration that specifies how...