Learn 104

  • 104: Best practices

    • Going into IaC

      • Use git to track your tree

      • D.R.Y.

        • Things are quite easily moving

    • Code structure

      • Profile and Class

        • Role and profiles key lookup

      • Hierarchies

        • Foreman

      • Use environnements, site, locatation …

      • Common keys vs dedicated keys

        • The profile key, default placeholder

      • The resource modele

        • It’s like a puppet resource, a catalog of items to apply

        • It’s possible to use this model with ansible, and it change radically the way Ansible can be used then. See integration.

    • Debugging

      • Use the explain mode

        • And trace mode

      • Use GNU tools

        • tree

        • grep -Rw .

        • git status -sb

    • With ansible.

      • Use a strict naming scheme, apply your Ansible usual name schema into Kheops

      • You can put some jinja variable into Kheops, Ansible will be able to replace and understand them during the runtime

      • Dynamic inventories and ENC

      • Apply products

      • Apply roles/profiles pattern

      • Use resource based roles => See my collection, it just works