mirror of https://github.com/apache/nifi.git
updating properties to support multiple nar libraries
This commit is contained in:
parent
2c352267af
commit
b1970ecc10
|
@ -16,9 +16,6 @@
|
||||||
*/
|
*/
|
||||||
package org.apache.nifi.util;
|
package org.apache.nifi.util;
|
||||||
|
|
||||||
import org.slf4j.Logger;
|
|
||||||
import org.slf4j.LoggerFactory;
|
|
||||||
|
|
||||||
import java.io.BufferedInputStream;
|
import java.io.BufferedInputStream;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.FileInputStream;
|
import java.io.FileInputStream;
|
||||||
|
@ -27,10 +24,15 @@ import java.net.InetSocketAddress;
|
||||||
import java.nio.file.InvalidPathException;
|
import java.nio.file.InvalidPathException;
|
||||||
import java.nio.file.Path;
|
import java.nio.file.Path;
|
||||||
import java.nio.file.Paths;
|
import java.nio.file.Paths;
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Properties;
|
import java.util.Properties;
|
||||||
|
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
public class NiFiProperties extends Properties {
|
public class NiFiProperties extends Properties {
|
||||||
|
|
||||||
private static final long serialVersionUID = 2119177359005492702L;
|
private static final long serialVersionUID = 2119177359005492702L;
|
||||||
|
@ -50,6 +52,7 @@ public class NiFiProperties extends Properties {
|
||||||
public static final String AUTO_RESUME_STATE = "nifi.flowcontroller.autoResumeState";
|
public static final String AUTO_RESUME_STATE = "nifi.flowcontroller.autoResumeState";
|
||||||
public static final String FLOW_CONTROLLER_GRACEFUL_SHUTDOWN_PERIOD = "nifi.flowcontroller.graceful.shutdown.period";
|
public static final String FLOW_CONTROLLER_GRACEFUL_SHUTDOWN_PERIOD = "nifi.flowcontroller.graceful.shutdown.period";
|
||||||
public static final String NAR_LIBRARY_DIRECTORY = "nifi.nar.library.directory";
|
public static final String NAR_LIBRARY_DIRECTORY = "nifi.nar.library.directory";
|
||||||
|
public static final String NAR_LIBRARY_DIRECTORY_PREFIX = "nifi.nar.library.directory.";
|
||||||
public static final String NAR_WORKING_DIRECTORY = "nifi.nar.working.directory";
|
public static final String NAR_WORKING_DIRECTORY = "nifi.nar.working.directory";
|
||||||
public static final String COMPONENT_DOCS_DIRECTORY = "nifi.documentation.working.directory";
|
public static final String COMPONENT_DOCS_DIRECTORY = "nifi.documentation.working.directory";
|
||||||
public static final String SENSITIVE_PROPS_KEY = "nifi.sensitive.props.key";
|
public static final String SENSITIVE_PROPS_KEY = "nifi.sensitive.props.key";
|
||||||
|
@ -525,8 +528,28 @@ public class NiFiProperties extends Properties {
|
||||||
return new File(getNarWorkingDirectory(), "extensions");
|
return new File(getNarWorkingDirectory(), "extensions");
|
||||||
}
|
}
|
||||||
|
|
||||||
public File getNarLibraryDirectory() {
|
public List<Path> getNarLibraryDirectories() {
|
||||||
return new File(getProperty(NAR_LIBRARY_DIRECTORY, DEFAULT_NAR_LIBRARY_DIR));
|
|
||||||
|
List<Path> narLibraryPaths = new ArrayList<>();
|
||||||
|
|
||||||
|
// go through each property
|
||||||
|
for (String propertyName : stringPropertyNames()) {
|
||||||
|
// determine if the property is a nar library path
|
||||||
|
if (StringUtils.startsWith(propertyName, NAR_LIBRARY_DIRECTORY_PREFIX) || NAR_LIBRARY_DIRECTORY.equals(propertyName)) {
|
||||||
|
// attempt to resolve the path specified
|
||||||
|
String narLib = getProperty(propertyName);
|
||||||
|
if (!StringUtils.isBlank(narLib)){
|
||||||
|
narLibraryPaths.add(Paths.get(narLib));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (narLibraryPaths.isEmpty()){
|
||||||
|
narLibraryPaths.add(Paths.get(DEFAULT_NAR_LIBRARY_DIR));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
return narLibraryPaths;
|
||||||
}
|
}
|
||||||
|
|
||||||
// getters for ui properties //
|
// getters for ui properties //
|
||||||
|
|
|
@ -0,0 +1,90 @@
|
||||||
|
package org.apache.nifi.util;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
|
|
||||||
|
import java.io.BufferedInputStream;
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.FileInputStream;
|
||||||
|
import java.io.InputStream;
|
||||||
|
import java.nio.file.Path;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.junit.Test;
|
||||||
|
|
||||||
|
public class NiFiPropertiesTest {
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testProperties() {
|
||||||
|
|
||||||
|
NiFiProperties properties = loadSpecifiedProperties("/NiFiProperties/conf/nifi.properties");
|
||||||
|
|
||||||
|
assertEquals("UI Banner Text", properties.getBannerText());
|
||||||
|
|
||||||
|
List<Path> directories = properties.getNarLibraryDirectories();
|
||||||
|
|
||||||
|
assertEquals(new File("./target/resources/NiFiProperties/lib/").getPath(), directories.get(0).toString());
|
||||||
|
assertEquals(new File("./target/resources/NiFiProperties/lib2/").getPath(), directories.get(1).toString());
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testMissingProperties() {
|
||||||
|
|
||||||
|
NiFiProperties properties = loadSpecifiedProperties("/NiFiProperties/conf/nifi.missing.properties");
|
||||||
|
|
||||||
|
List<Path> directories = properties.getNarLibraryDirectories();
|
||||||
|
|
||||||
|
assertEquals(1, directories.size());
|
||||||
|
|
||||||
|
assertEquals(new File(NiFiProperties.DEFAULT_NAR_LIBRARY_DIR).getPath(), directories.get(0).toString());
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testBlankProperties() {
|
||||||
|
|
||||||
|
NiFiProperties properties = loadSpecifiedProperties("/NiFiProperties/conf/nifi.blank.properties");
|
||||||
|
|
||||||
|
List<Path> directories = properties.getNarLibraryDirectories();
|
||||||
|
|
||||||
|
assertEquals(1, directories.size());
|
||||||
|
|
||||||
|
assertEquals(new File(NiFiProperties.DEFAULT_NAR_LIBRARY_DIR).getPath(), directories.get(0).toString());
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private NiFiProperties loadSpecifiedProperties(String propertiesFile) {
|
||||||
|
|
||||||
|
String file = NiFiPropertiesTest.class.getResource(propertiesFile).getFile();
|
||||||
|
|
||||||
|
System.setProperty(NiFiProperties.PROPERTIES_FILE_PATH, file);
|
||||||
|
|
||||||
|
NiFiProperties properties = NiFiProperties.getInstance();
|
||||||
|
|
||||||
|
// clear out existing properties
|
||||||
|
for (String prop : properties.stringPropertyNames()) {
|
||||||
|
properties.remove(prop);
|
||||||
|
}
|
||||||
|
|
||||||
|
InputStream inStream = null;
|
||||||
|
try {
|
||||||
|
inStream = new BufferedInputStream(new FileInputStream(file));
|
||||||
|
properties.load(inStream);
|
||||||
|
} catch (final Exception ex) {
|
||||||
|
throw new RuntimeException("Cannot load properties file due to " + ex.getLocalizedMessage(), ex);
|
||||||
|
} finally {
|
||||||
|
if (null != inStream) {
|
||||||
|
try {
|
||||||
|
inStream.close();
|
||||||
|
} catch (final Exception ex) {
|
||||||
|
/**
|
||||||
|
* do nothing *
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return properties;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,128 @@
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
|
# contributor license agreements. See the NOTICE file distributed with
|
||||||
|
# this work for additional information regarding copyright ownership.
|
||||||
|
# The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
|
# (the "License"); you may not use this file except in compliance with
|
||||||
|
# the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
|
# Core Properties #
|
||||||
|
nifi.version=nifi-test 3.0.0
|
||||||
|
nifi.flow.configuration.file=./target/flow.xml.gz
|
||||||
|
nifi.flow.configuration.archive.dir=./target/archive/
|
||||||
|
nifi.flowcontroller.autoResumeState=true
|
||||||
|
nifi.flowcontroller.graceful.shutdown.period=10 sec
|
||||||
|
nifi.flowservice.writedelay.interval=2 sec
|
||||||
|
nifi.administrative.yield.duration=30 sec
|
||||||
|
|
||||||
|
nifi.reporting.task.configuration.file=./target/reporting-tasks.xml
|
||||||
|
nifi.controller.service.configuration.file=./target/controller-services.xml
|
||||||
|
nifi.templates.directory=./target/templates
|
||||||
|
nifi.ui.banner.text=UI Banner Text
|
||||||
|
nifi.ui.autorefresh.interval=30 sec
|
||||||
|
nifi.nar.library.directory=
|
||||||
|
nifi.custom.nar.library.directory.alt=
|
||||||
|
nifi.nar.working.directory=./target/work/nar/
|
||||||
|
|
||||||
|
# H2 Settings
|
||||||
|
nifi.database.directory=./target/database_repository
|
||||||
|
nifi.h2.url.append=;LOCK_TIMEOUT=25000;WRITE_DELAY=0;AUTO_SERVER=FALSE
|
||||||
|
|
||||||
|
# FlowFile Repository
|
||||||
|
nifi.flowfile.repository.directory=./target/test-repo
|
||||||
|
nifi.flowfile.repository.partitions=1
|
||||||
|
nifi.flowfile.repository.checkpoint.interval=2 mins
|
||||||
|
nifi.queue.swap.threshold=20000
|
||||||
|
nifi.swap.storage.directory=./target/test-repo/swap
|
||||||
|
nifi.swap.in.period=5 sec
|
||||||
|
nifi.swap.in.threads=1
|
||||||
|
nifi.swap.out.period=5 sec
|
||||||
|
nifi.swap.out.threads=4
|
||||||
|
|
||||||
|
# Content Repository
|
||||||
|
nifi.content.claim.max.appendable.size=10 MB
|
||||||
|
nifi.content.claim.max.flow.files=100
|
||||||
|
nifi.content.repository.directory.default=./target/content_repository
|
||||||
|
|
||||||
|
# Provenance Repository Properties
|
||||||
|
nifi.provenance.repository.storage.directory=./target/provenance_repository
|
||||||
|
nifi.provenance.repository.max.storage.time=24 hours
|
||||||
|
nifi.provenance.repository.max.storage.size=1 GB
|
||||||
|
nifi.provenance.repository.rollover.time=5 mins
|
||||||
|
nifi.provenance.repository.rollover.size=100 MB
|
||||||
|
|
||||||
|
# Site to Site properties
|
||||||
|
nifi.remote.input.socket.port=9990
|
||||||
|
nifi.remote.input.secure=true
|
||||||
|
|
||||||
|
# web properties #
|
||||||
|
nifi.web.war.directory=./target/lib
|
||||||
|
nifi.web.http.host=
|
||||||
|
nifi.web.http.port=8080
|
||||||
|
nifi.web.https.host=
|
||||||
|
nifi.web.https.port=
|
||||||
|
nifi.web.jetty.working.directory=./target/work/jetty
|
||||||
|
|
||||||
|
# security properties #
|
||||||
|
nifi.sensitive.props.key=key
|
||||||
|
nifi.sensitive.props.algorithm=PBEWITHMD5AND256BITAES-CBC-OPENSSL
|
||||||
|
nifi.sensitive.props.provider=BC
|
||||||
|
|
||||||
|
nifi.security.keystore=
|
||||||
|
nifi.security.keystoreType=
|
||||||
|
nifi.security.keystorePasswd=
|
||||||
|
nifi.security.keyPasswd=
|
||||||
|
nifi.security.truststore=
|
||||||
|
nifi.security.truststoreType=
|
||||||
|
nifi.security.truststorePasswd=
|
||||||
|
nifi.security.needClientAuth=
|
||||||
|
nifi.security.authorizedUsers.file=./target/conf/authorized-users.xml
|
||||||
|
nifi.security.user.credential.cache.duration=24 hours
|
||||||
|
nifi.security.user.authority.provider=nifi.authorization.FileAuthorizationProvider
|
||||||
|
nifi.security.support.new.account.requests=
|
||||||
|
nifi.security.default.user.roles=
|
||||||
|
|
||||||
|
# cluster common properties (cluster manager and nodes must have same values) #
|
||||||
|
nifi.cluster.protocol.heartbeat.interval=5 sec
|
||||||
|
nifi.cluster.protocol.is.secure=false
|
||||||
|
nifi.cluster.protocol.socket.timeout=30 sec
|
||||||
|
nifi.cluster.protocol.connection.handshake.timeout=45 sec
|
||||||
|
# if multicast is used, then nifi.cluster.protocol.multicast.xxx properties must be configured #
|
||||||
|
nifi.cluster.protocol.use.multicast=false
|
||||||
|
nifi.cluster.protocol.multicast.address=
|
||||||
|
nifi.cluster.protocol.multicast.port=
|
||||||
|
nifi.cluster.protocol.multicast.service.broadcast.delay=500 ms
|
||||||
|
nifi.cluster.protocol.multicast.service.locator.attempts=3
|
||||||
|
nifi.cluster.protocol.multicast.service.locator.attempts.delay=1 sec
|
||||||
|
|
||||||
|
# cluster node properties (only configure for cluster nodes) #
|
||||||
|
nifi.cluster.is.node=false
|
||||||
|
nifi.cluster.node.address=
|
||||||
|
nifi.cluster.node.protocol.port=
|
||||||
|
nifi.cluster.node.protocol.threads=2
|
||||||
|
# if multicast is not used, nifi.cluster.node.unicast.xxx must have same values as nifi.cluster.manager.xxx #
|
||||||
|
nifi.cluster.node.unicast.manager.address=
|
||||||
|
nifi.cluster.node.unicast.manager.protocol.port=
|
||||||
|
nifi.cluster.node.unicast.manager.authority.provider.port=
|
||||||
|
|
||||||
|
# cluster manager properties (only configure for cluster manager) #
|
||||||
|
nifi.cluster.is.manager=false
|
||||||
|
nifi.cluster.manager.address=
|
||||||
|
nifi.cluster.manager.protocol.port=
|
||||||
|
nifi.cluster.manager.authority.provider.port=
|
||||||
|
nifi.cluster.manager.authority.provider.threads=10
|
||||||
|
nifi.cluster.manager.node.firewall.file=
|
||||||
|
nifi.cluster.manager.node.event.history.size=10
|
||||||
|
nifi.cluster.manager.node.api.connection.timeout=30 sec
|
||||||
|
nifi.cluster.manager.node.api.read.timeout=30 sec
|
||||||
|
nifi.cluster.manager.node.api.request.threads=10
|
||||||
|
nifi.cluster.manager.flow.retrieval.delay=5 sec
|
||||||
|
nifi.cluster.manager.protocol.threads=10
|
||||||
|
nifi.cluster.manager.safemode.duration=0 sec
|
|
@ -0,0 +1,126 @@
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
|
# contributor license agreements. See the NOTICE file distributed with
|
||||||
|
# this work for additional information regarding copyright ownership.
|
||||||
|
# The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
|
# (the "License"); you may not use this file except in compliance with
|
||||||
|
# the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
|
# Core Properties #
|
||||||
|
nifi.version=nifi-test 3.0.0
|
||||||
|
nifi.flow.configuration.file=./target/flow.xml.gz
|
||||||
|
nifi.flow.configuration.archive.dir=./target/archive/
|
||||||
|
nifi.flowcontroller.autoResumeState=true
|
||||||
|
nifi.flowcontroller.graceful.shutdown.period=10 sec
|
||||||
|
nifi.flowservice.writedelay.interval=2 sec
|
||||||
|
nifi.administrative.yield.duration=30 sec
|
||||||
|
|
||||||
|
nifi.reporting.task.configuration.file=./target/reporting-tasks.xml
|
||||||
|
nifi.controller.service.configuration.file=./target/controller-services.xml
|
||||||
|
nifi.templates.directory=./target/templates
|
||||||
|
nifi.ui.banner.text=UI Banner Text
|
||||||
|
nifi.ui.autorefresh.interval=30 sec
|
||||||
|
nifi.nar.working.directory=./target/work/nar/
|
||||||
|
|
||||||
|
# H2 Settings
|
||||||
|
nifi.database.directory=./target/database_repository
|
||||||
|
nifi.h2.url.append=;LOCK_TIMEOUT=25000;WRITE_DELAY=0;AUTO_SERVER=FALSE
|
||||||
|
|
||||||
|
# FlowFile Repository
|
||||||
|
nifi.flowfile.repository.directory=./target/test-repo
|
||||||
|
nifi.flowfile.repository.partitions=1
|
||||||
|
nifi.flowfile.repository.checkpoint.interval=2 mins
|
||||||
|
nifi.queue.swap.threshold=20000
|
||||||
|
nifi.swap.storage.directory=./target/test-repo/swap
|
||||||
|
nifi.swap.in.period=5 sec
|
||||||
|
nifi.swap.in.threads=1
|
||||||
|
nifi.swap.out.period=5 sec
|
||||||
|
nifi.swap.out.threads=4
|
||||||
|
|
||||||
|
# Content Repository
|
||||||
|
nifi.content.claim.max.appendable.size=10 MB
|
||||||
|
nifi.content.claim.max.flow.files=100
|
||||||
|
nifi.content.repository.directory.default=./target/content_repository
|
||||||
|
|
||||||
|
# Provenance Repository Properties
|
||||||
|
nifi.provenance.repository.storage.directory=./target/provenance_repository
|
||||||
|
nifi.provenance.repository.max.storage.time=24 hours
|
||||||
|
nifi.provenance.repository.max.storage.size=1 GB
|
||||||
|
nifi.provenance.repository.rollover.time=5 mins
|
||||||
|
nifi.provenance.repository.rollover.size=100 MB
|
||||||
|
|
||||||
|
# Site to Site properties
|
||||||
|
nifi.remote.input.socket.port=9990
|
||||||
|
nifi.remote.input.secure=true
|
||||||
|
|
||||||
|
# web properties #
|
||||||
|
nifi.web.war.directory=./target/lib
|
||||||
|
nifi.web.http.host=
|
||||||
|
nifi.web.http.port=8080
|
||||||
|
nifi.web.https.host=
|
||||||
|
nifi.web.https.port=
|
||||||
|
nifi.web.jetty.working.directory=./target/work/jetty
|
||||||
|
|
||||||
|
# security properties #
|
||||||
|
nifi.sensitive.props.key=key
|
||||||
|
nifi.sensitive.props.algorithm=PBEWITHMD5AND256BITAES-CBC-OPENSSL
|
||||||
|
nifi.sensitive.props.provider=BC
|
||||||
|
|
||||||
|
nifi.security.keystore=
|
||||||
|
nifi.security.keystoreType=
|
||||||
|
nifi.security.keystorePasswd=
|
||||||
|
nifi.security.keyPasswd=
|
||||||
|
nifi.security.truststore=
|
||||||
|
nifi.security.truststoreType=
|
||||||
|
nifi.security.truststorePasswd=
|
||||||
|
nifi.security.needClientAuth=
|
||||||
|
nifi.security.authorizedUsers.file=./target/conf/authorized-users.xml
|
||||||
|
nifi.security.user.credential.cache.duration=24 hours
|
||||||
|
nifi.security.user.authority.provider=nifi.authorization.FileAuthorizationProvider
|
||||||
|
nifi.security.support.new.account.requests=
|
||||||
|
nifi.security.default.user.roles=
|
||||||
|
|
||||||
|
# cluster common properties (cluster manager and nodes must have same values) #
|
||||||
|
nifi.cluster.protocol.heartbeat.interval=5 sec
|
||||||
|
nifi.cluster.protocol.is.secure=false
|
||||||
|
nifi.cluster.protocol.socket.timeout=30 sec
|
||||||
|
nifi.cluster.protocol.connection.handshake.timeout=45 sec
|
||||||
|
# if multicast is used, then nifi.cluster.protocol.multicast.xxx properties must be configured #
|
||||||
|
nifi.cluster.protocol.use.multicast=false
|
||||||
|
nifi.cluster.protocol.multicast.address=
|
||||||
|
nifi.cluster.protocol.multicast.port=
|
||||||
|
nifi.cluster.protocol.multicast.service.broadcast.delay=500 ms
|
||||||
|
nifi.cluster.protocol.multicast.service.locator.attempts=3
|
||||||
|
nifi.cluster.protocol.multicast.service.locator.attempts.delay=1 sec
|
||||||
|
|
||||||
|
# cluster node properties (only configure for cluster nodes) #
|
||||||
|
nifi.cluster.is.node=false
|
||||||
|
nifi.cluster.node.address=
|
||||||
|
nifi.cluster.node.protocol.port=
|
||||||
|
nifi.cluster.node.protocol.threads=2
|
||||||
|
# if multicast is not used, nifi.cluster.node.unicast.xxx must have same values as nifi.cluster.manager.xxx #
|
||||||
|
nifi.cluster.node.unicast.manager.address=
|
||||||
|
nifi.cluster.node.unicast.manager.protocol.port=
|
||||||
|
nifi.cluster.node.unicast.manager.authority.provider.port=
|
||||||
|
|
||||||
|
# cluster manager properties (only configure for cluster manager) #
|
||||||
|
nifi.cluster.is.manager=false
|
||||||
|
nifi.cluster.manager.address=
|
||||||
|
nifi.cluster.manager.protocol.port=
|
||||||
|
nifi.cluster.manager.authority.provider.port=
|
||||||
|
nifi.cluster.manager.authority.provider.threads=10
|
||||||
|
nifi.cluster.manager.node.firewall.file=
|
||||||
|
nifi.cluster.manager.node.event.history.size=10
|
||||||
|
nifi.cluster.manager.node.api.connection.timeout=30 sec
|
||||||
|
nifi.cluster.manager.node.api.read.timeout=30 sec
|
||||||
|
nifi.cluster.manager.node.api.request.threads=10
|
||||||
|
nifi.cluster.manager.flow.retrieval.delay=5 sec
|
||||||
|
nifi.cluster.manager.protocol.threads=10
|
||||||
|
nifi.cluster.manager.safemode.duration=0 sec
|
|
@ -0,0 +1,128 @@
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
|
# contributor license agreements. See the NOTICE file distributed with
|
||||||
|
# this work for additional information regarding copyright ownership.
|
||||||
|
# The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
|
# (the "License"); you may not use this file except in compliance with
|
||||||
|
# the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
|
# Core Properties #
|
||||||
|
nifi.version=nifi-test 3.0.0
|
||||||
|
nifi.flow.configuration.file=./target/flow.xml.gz
|
||||||
|
nifi.flow.configuration.archive.dir=./target/archive/
|
||||||
|
nifi.flowcontroller.autoResumeState=true
|
||||||
|
nifi.flowcontroller.graceful.shutdown.period=10 sec
|
||||||
|
nifi.flowservice.writedelay.interval=2 sec
|
||||||
|
nifi.administrative.yield.duration=30 sec
|
||||||
|
|
||||||
|
nifi.reporting.task.configuration.file=./target/reporting-tasks.xml
|
||||||
|
nifi.controller.service.configuration.file=./target/controller-services.xml
|
||||||
|
nifi.templates.directory=./target/templates
|
||||||
|
nifi.ui.banner.text=UI Banner Text
|
||||||
|
nifi.ui.autorefresh.interval=30 sec
|
||||||
|
nifi.nar.library.directory=./target/resources/NiFiProperties/lib/
|
||||||
|
nifi.nar.library.directory.alt=./target/resources/NiFiProperties/lib2/
|
||||||
|
nifi.nar.working.directory=./target/work/nar/
|
||||||
|
|
||||||
|
# H2 Settings
|
||||||
|
nifi.database.directory=./target/database_repository
|
||||||
|
nifi.h2.url.append=;LOCK_TIMEOUT=25000;WRITE_DELAY=0;AUTO_SERVER=FALSE
|
||||||
|
|
||||||
|
# FlowFile Repository
|
||||||
|
nifi.flowfile.repository.directory=./target/test-repo
|
||||||
|
nifi.flowfile.repository.partitions=1
|
||||||
|
nifi.flowfile.repository.checkpoint.interval=2 mins
|
||||||
|
nifi.queue.swap.threshold=20000
|
||||||
|
nifi.swap.storage.directory=./target/test-repo/swap
|
||||||
|
nifi.swap.in.period=5 sec
|
||||||
|
nifi.swap.in.threads=1
|
||||||
|
nifi.swap.out.period=5 sec
|
||||||
|
nifi.swap.out.threads=4
|
||||||
|
|
||||||
|
# Content Repository
|
||||||
|
nifi.content.claim.max.appendable.size=10 MB
|
||||||
|
nifi.content.claim.max.flow.files=100
|
||||||
|
nifi.content.repository.directory.default=./target/content_repository
|
||||||
|
|
||||||
|
# Provenance Repository Properties
|
||||||
|
nifi.provenance.repository.storage.directory=./target/provenance_repository
|
||||||
|
nifi.provenance.repository.max.storage.time=24 hours
|
||||||
|
nifi.provenance.repository.max.storage.size=1 GB
|
||||||
|
nifi.provenance.repository.rollover.time=5 mins
|
||||||
|
nifi.provenance.repository.rollover.size=100 MB
|
||||||
|
|
||||||
|
# Site to Site properties
|
||||||
|
nifi.remote.input.socket.port=9990
|
||||||
|
nifi.remote.input.secure=true
|
||||||
|
|
||||||
|
# web properties #
|
||||||
|
nifi.web.war.directory=./target/lib
|
||||||
|
nifi.web.http.host=
|
||||||
|
nifi.web.http.port=8080
|
||||||
|
nifi.web.https.host=
|
||||||
|
nifi.web.https.port=
|
||||||
|
nifi.web.jetty.working.directory=./target/work/jetty
|
||||||
|
|
||||||
|
# security properties #
|
||||||
|
nifi.sensitive.props.key=key
|
||||||
|
nifi.sensitive.props.algorithm=PBEWITHMD5AND256BITAES-CBC-OPENSSL
|
||||||
|
nifi.sensitive.props.provider=BC
|
||||||
|
|
||||||
|
nifi.security.keystore=
|
||||||
|
nifi.security.keystoreType=
|
||||||
|
nifi.security.keystorePasswd=
|
||||||
|
nifi.security.keyPasswd=
|
||||||
|
nifi.security.truststore=
|
||||||
|
nifi.security.truststoreType=
|
||||||
|
nifi.security.truststorePasswd=
|
||||||
|
nifi.security.needClientAuth=
|
||||||
|
nifi.security.authorizedUsers.file=./target/conf/authorized-users.xml
|
||||||
|
nifi.security.user.credential.cache.duration=24 hours
|
||||||
|
nifi.security.user.authority.provider=nifi.authorization.FileAuthorizationProvider
|
||||||
|
nifi.security.support.new.account.requests=
|
||||||
|
nifi.security.default.user.roles=
|
||||||
|
|
||||||
|
# cluster common properties (cluster manager and nodes must have same values) #
|
||||||
|
nifi.cluster.protocol.heartbeat.interval=5 sec
|
||||||
|
nifi.cluster.protocol.is.secure=false
|
||||||
|
nifi.cluster.protocol.socket.timeout=30 sec
|
||||||
|
nifi.cluster.protocol.connection.handshake.timeout=45 sec
|
||||||
|
# if multicast is used, then nifi.cluster.protocol.multicast.xxx properties must be configured #
|
||||||
|
nifi.cluster.protocol.use.multicast=false
|
||||||
|
nifi.cluster.protocol.multicast.address=
|
||||||
|
nifi.cluster.protocol.multicast.port=
|
||||||
|
nifi.cluster.protocol.multicast.service.broadcast.delay=500 ms
|
||||||
|
nifi.cluster.protocol.multicast.service.locator.attempts=3
|
||||||
|
nifi.cluster.protocol.multicast.service.locator.attempts.delay=1 sec
|
||||||
|
|
||||||
|
# cluster node properties (only configure for cluster nodes) #
|
||||||
|
nifi.cluster.is.node=false
|
||||||
|
nifi.cluster.node.address=
|
||||||
|
nifi.cluster.node.protocol.port=
|
||||||
|
nifi.cluster.node.protocol.threads=2
|
||||||
|
# if multicast is not used, nifi.cluster.node.unicast.xxx must have same values as nifi.cluster.manager.xxx #
|
||||||
|
nifi.cluster.node.unicast.manager.address=
|
||||||
|
nifi.cluster.node.unicast.manager.protocol.port=
|
||||||
|
nifi.cluster.node.unicast.manager.authority.provider.port=
|
||||||
|
|
||||||
|
# cluster manager properties (only configure for cluster manager) #
|
||||||
|
nifi.cluster.is.manager=false
|
||||||
|
nifi.cluster.manager.address=
|
||||||
|
nifi.cluster.manager.protocol.port=
|
||||||
|
nifi.cluster.manager.authority.provider.port=
|
||||||
|
nifi.cluster.manager.authority.provider.threads=10
|
||||||
|
nifi.cluster.manager.node.firewall.file=
|
||||||
|
nifi.cluster.manager.node.event.history.size=10
|
||||||
|
nifi.cluster.manager.node.api.connection.timeout=30 sec
|
||||||
|
nifi.cluster.manager.node.api.read.timeout=30 sec
|
||||||
|
nifi.cluster.manager.node.api.request.threads=10
|
||||||
|
nifi.cluster.manager.flow.retrieval.delay=5 sec
|
||||||
|
nifi.cluster.manager.protocol.threads=10
|
||||||
|
nifi.cluster.manager.safemode.duration=0 sec
|
Loading…
Reference in New Issue