Hi,
I am new to Ansible
From the examples (https://github.com/ansible/ansible-examples/tree/master/lamp_simple/roles) sound like you encourage organize playbook by application type, but why not by server features?
e.g.
Instead of
lamp/roles/db
lamp/roles/web
why not separate into multiple playbook so to encourage reuse?
e.g.
mysql
nginx
apache2