You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "Phu-Thien Tran (Jira)" <ji...@apache.org> on 2021/06/01 19:50:00 UTC
[jira] [Resolved] (NIFI-8619) Allow direct access to individual
cluster nodes' UI behind proxy and ensure writing & loading of valid
flow.xml.gz
[ https://issues.apache.org/jira/browse/NIFI-8619?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Phu-Thien Tran resolved NIFI-8619.
----------------------------------
Resolution: Fixed
> Allow direct access to individual cluster nodes' UI behind proxy and ensure writing & loading of valid flow.xml.gz
> -------------------------------------------------------------------------------------------------------------------
>
> Key: NIFI-8619
> URL: https://issues.apache.org/jira/browse/NIFI-8619
> Project: Apache NiFi
> Issue Type: Improvement
> Components: Core Framework
> Affects Versions: 1.13.3
> Reporter: Phu-Thien Tran
> Assignee: Phu-Thien Tran
> Priority: Major
> Labels: pull-request-available
> Fix For: 1.13.3
>
>
> Enable direct access to individual cluster nodes' UI when they are behind a proxy. New property "nifi.web.context.root" is added to nifi.properties and is set to be the web context root to which all NiFi webapps should be deployed.
> For example, for a cluster with two nodes should have "nifi.web.context.root" set to "/node1" for node 1 and "/node2" for node 2. Consequently, the URL to the UI of node 1 and 2 are http://<hostname>:<port>/node1/nifi and http://<hostname>:<port>/node2/nifi respectively, where hostname and port are those of a proxy and the same for both nodes. And so are all NiFi framework webapps and extension UIs, e.g. /node1/nifi-api, /node1/nifi-docs.
> This functionality requires reverse proxy in Apache's mod_proxy config file. Each node has a separate {{<Location>}} entry like this:
> <Location "/node1/nifi">
> RequestHeader add X-ProxyScheme "http"
> RequestHeader add X-ProxyHost "proxy-host"
> RequestHeader add X-ProxyPort "proxy-port"
> ProxyPass http://node1-host[:port]/node1/nifi
> ProxyPassReverse http://node1-host[:port]/node1/nifi
> </Location>
> <Location "/node1/nifi-api">
> RequestHeader add X-ProxyScheme "http"
> RequestHeader add X-ProxyHost "proxy-host"
> RequestHeader add X-ProxyPort "proxy-port"
> ProxyPass http://node1-host[:port]/node1/nifi-api
> ProxyPassReverse http://node1-host[:port]/node1/nifi-api
> </Location>
> <Location "/node2/nifi">
> RequestHeader add X-ProxyScheme "http"
> RequestHeader add X-ProxyHost "proxy-host"
> RequestHeader add X-ProxyPort "proxy-port"
> ProxyPass http://node2-host[:port]/node2/nifi
> ProxyPassReverse http://node2-host[:port]/node2/nifi
> </Location>
> <Location "/node2/nifi-api">
> RequestHeader add X-ProxyScheme "http"
> RequestHeader add X-ProxyHost "proxy-host"
> RequestHeader add X-ProxyPort "proxy-port"
> ProxyPass http://node2-host[:port]/node2/nifi-api
> ProxyPassReverse http://node2-host[:port]/node2/nifi-api
> </Location>
> Where proxy-host and proxy-port are those of the proxy server.
> In addition, this issue also looks at minor improvement in writing and reading of flow.xml.gz to prevent it from being corrupt or invalid when running in a cluster environment in version 1.11.4.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)