Use multiple ZooKeeper services
Only services that are not dependent can use different ZooKeeper services.
com.cloudera.cmf.command.CmdExecException:java.lang.RuntimeException: java.lang.IllegalStateException: Assumption violated: getAllDependencies returned multiple distinct services of the same type at SeqFlowCmd.java line 120 in com.cloudera.cmf.command.flow.SeqFlowCmd run()
Because of a known limitation in Cloudera Manager, Cloudera Runtime services that are depending on each other can not use different ZooKeeper services. For example, Kafka does not depend on any services other than ZooKeeper, so Kafka can use one ZooKeeper cluster and the rest of the Cloudera Runtime services can use another one. At the same time, since Ranger also depends on ZooKeeper, if Kafka gets configured to use Ranger, then both Kafka and Ranger must use the same ZooKeeper cluster.