The presentation at http://www.slideshare.net/ConfluentInc/when-it-absolutely-positively-has-to-be-there-reliability-guarantees-in-kafka-gwen-shapira-jeff-holoman makes a set of recommendations for Kafka use cases that require reliable delivery. A summary is available on the last slide:
We are currently running with two brokers, which is less than the recommended minimum of three. As a result, we can't set min.insync.replicas = 2 without losing redundancy.
Should we consider adding a third broker? If we set Acks = all, does this mean that we'll block for acks from both replicas if they are considered in-sync?
Another article that goes in depth in the topic: http://126kr.com/article/5443qzxtcfn