Apache NiFi source code is version controlled using Git version control (browse|checkout).
The code is also mirrored to Github
Track issues on the "NIFI" Project on the Apache Jira (browse).
To check out the code:
git clone http://git-wip-us.apache.org/repos/asf/incubator-nifi.git
Then checkout the 'develop' branch
git checkout develop
MAVEN_OPTS="-Xms1024m -Xmx3076m -XX:MaxPermSize=256m"
nifi-parent
.
Run mvn clean install
nifi-nar-maven-plugin
.
Run mvn clean install
nifi
and run mvn -T C2.0 clean install
You can tweak the maven build settings as you like but the previous command will execute with 2 threads per core.Now you should have a fully functioning build off the latest code in the develop branch.
Without any configuration, the application will run on port 8080 and does not require any credentials to modify the flow. This means of running Apache NiFi should be used only for development/testing and in an environment where only connections from trusted computers and users can connect to port 8080. Using iptables to allow only localhost connections to 8080 is a good start, but on systems with multiple (potentially untrusted) users, also not a sufficient protection.
Running the above build will create a tar.gz (and zip) file in nifi/nifi-assembly/target
. This tar.gz should
contain the full application. Decompressing the tar.gz should make a directory for you containing several other
directories. conf
contains application configuration, bin
contains scripts
for launching the application. On linux and OSX, NiFi can be run using bin/nifi.sh <command>
where
<command>
is one of:
service nifi start
, service nifi stop
, service nifi status
.For Windows users, there exist several scripts in the bin
directory that are analogous to those above:
start-nifi.bat
, stop-nifi.bat
, nifi-status.bat
, and run-nifi.bat
.
The configuration that is to be used when launching NiFi, such as Java heap size, the user
to run as, which Java command to use, etc. are configurable via the conf/bootstrap.conf
file.
The entire concept of how the application will integrate to a given OS and run as an enduring service is something we're working hard on and would appreciate ideas for. The user experience needs to be excellent.
With the default settings you can point a web browser at http://localhost:8080/nifi/
Logging is configured by default to log to ./logs/nifi-app.log
. The following log message should indicate the web ui
is ready for use:
2014-12-09 00:42:03,540 INFO [main] org.apache.nifi.web.server.JettyServer NiFi has started. The UI is available at the following URLs: