Cause: The Elasticsearch, Kibana, and Curator roles were using a variable for setting the replica count in their DC spec that was used elsewhere in the Ansible playbook. So when that was set to '2' it was updating the value for the logging components.
Consequence: When that variable was a value other than 1, logging would also end up with multiple replicas.
Fix: Changed the logging variables to be unique to prevent variable scope creep.
Result: The logging components are not affected by the previous variable and correctly deploy with the given number of replicas.