Docker and OpenShift 3+ work in different security contexts. This means that many images written specifically for docker will not work in OpenShift.
Specifically, the Kafka framwork written by wurstmeister (wurstmeister/kafka-docker), spotify and flozano all have the same problem.
Since these modules were built to run as root they would not allow for connecting to the UNIX sockets. This error will come up.
cannot open an http server: socket.error reported errno.eacces (13)
The solution was the build the docker modules for Kafka and Zookeeper from scratch. Using this set of instructions:
https://github.com/jim-minter/kafkanetes
This allows creating containers in Open Shift with the necessary permissions.
We also needed to change the name of the container from the silly kafkanetes name to just
kafka
This was easily found in the kafkanetes-deploy-kafka-1.yaml file.
The volume mount definition in the kafkanetes was well defined, but carefully consider where the data is going. It is recommended to create the Volume name ahead of time then use the template to modify the name of the Volume mount. This will allow complete control over the location of the volume. Both the kafka and kubernetes definitions will need to be modified.
The next phase will be installing a kafka cluser and allowing for scaling the cluster through zookeeper. Also, zookeeper can be used with other services to form a network of services.