As a fan of simple setups, this looks enjoyable to work with! It is probably good enough for 99% of services.
I think I would use Ansible to setup the servers and use it for the deployment script as well.
This would document the servers and make deployment script perhaps simpler.
I wouldn't shy away from accessing the servers manually when debugging or checking things, though.