nginx Reverse Proxy connection refused

severusx

Dabbler
Joined
Dec 17, 2015
Messages
17
Hello! I have recently upgraded from FreeNAS to TrueNAS Scale and am in the process of moving several containerized apps onto it using the native K8s service. I have installed Plex and the nginx Reverse Proxy Manager from the TrueNAS catalog. I added a second IP alias to the primary interface of the NAS and bound the cluster node to that IP while also assigning the TrueNAS UI to the first alias. DNS is provided from my pfsense (running its native unbound) and records for the custom hostnames exist and resolve correctly to the IP assigned to the k8s node. All containers start fine and the proxy UI works and will let me setup hosts without issue. However, when I attempt to access apps using the configured hostnames I get a connection refused error and a quick port check shows that TCCP 80/443 are not opened on the node IP. I don't think TrueNAS runs iptables/firewalld so I'm not entirely sure why I'm unable to connect. Using the first IP alias will allow the port to connect but the TrueNAS UI responds rather than the proxy. Moving the UI to an alternate port results in the same behavior. It's almost like the nginx deployment definition doesn't include a service that configures a clusterIP or load balancer. How do I get this proxy to answer externally from the node IP? Any advice would be greatly appreciated!
 

severusx

Dabbler
Joined
Dec 17, 2015
Messages
17
Following up on my own question, digging through the helm charts for these apps it appears that the TrueNAS maintained charts leverage only nodePort network options and lack the map to add a clusterIP or full loadbalancer option one would traditionally expect to see here. Further, I can get the proxy to work on a standard port by manually pulling the container image as a custom app and allowing that to configure a clusterIP but it appears to go into a separate namespace as the other apps from the catalog and are otherwise inaccessible on the cluster network. I guess I'm just stuck with using either a nodePort option in "easy mode" or manually deploying all my apps.

I am still interested in other's ideas here though.
 
Top