Hi Adam, On Wed, Oct 24, 2018 at 8:29 PM a.toy <[email protected]> wrote:
> Trying to get NiFi working in Openshift (as Docker containers) but > struggling > with the networking. For those who don't know Openshift well, the hostname > of the container is NOT routable from other containers. The 'proper' way to > route traffic is to create an "Openshift Service", which is a load-balancer > across the nodes in the cluster. It provides a FQDN that will port-forward > to the containers themselves. For instance, if I have a 3-node cluster > (nifi-0, nifi-1, nifi-2) and an Openshift service > (nifi.infrastructure.svc), > the 3 nodes are routable from other nodes via the FQDNs: > > - nifi-0.nifi.infrastructure.svc > - nifi-1.nifi.infrastructure.svc > - nifi-2.nifi.infrastructure.svc > what is your service yaml exactly? how do you create the pods is it a statefulset? > > The IPs of the containers ARE routable from other containers, but it's not > the recommended approach and will NOT work when using secure comms since > the > IPs change and can't be packaged into the certs/keystores. > > With all that, I can get NiFi working fine in Openshift if I use the > container IPs in the configs, for instance, the relevant parts of the > configs: > > nifi.remote.input.secure=false > nifi.remote.input.socket.port=8081 > nifi.remote.input.http.enabled=true > nifi.remote.input.host=10.131.5.15 > > nifi.web.http.port=8080 > nifi.web.http.host=10.131.5.15 > nifi.web.http.network.interface.default=eth0 > > nifi.cluster.node.address=10.131.5.15 > nifi.cluster.node.protocol.port=8082 > > This works fine. I can create objects in the UI, no problems. > > However, when I try to use the routable Openshift services (aka, this > example config), I have issues: > > nifi.remote.input.secure=false > nifi.remote.input.socket.port=8081 > nifi.remote.input.http.enabled=true > nifi.remote.input.host=nifi-0.nifi.infrastructure.svc > > nifi.web.http.port=8080 > nifi.web.http.host=nifi-0.nifi.infrastructure.svc > nifi.web.http.network.interface.default=eth0 > > nifi.cluster.node.address=nifi-0.nifi.infrastructure.svc > nifi.cluster.node.protocol.port=8082 > > The UI will load just fine, but when I try to make a modification (update > how do you access the UI? does it have a separate service? > user, create process group, etc), I get a 'Transaction in Progress' > exception 90% of the time. Occasionally, the modification WILL take place, > but the other 2 nodes will immediately disconnect from the cluster because > the flow file is out of sync and will not rejoin. > > On my Openshift service, I have the following ports open and forwarding > into > the containers: 8080, 8081, 8082 > > It SEEMS that for whatever reason, even though the above service > hostname:ports are routable for each node, Openshift is having connectivity > problems with the other nodes, but I have no idea why. There are no errors > showing in the logs besides the flow file getting out of sync after I try > to > make a modification. > > Any ideas what could be going on here? > what Zookeeper setup do you use? > > > > -- > Sent from: http://apache-nifi-users-list.2361937.n4.nabble.com/ >
