이 컴포넌트는 폐기(deprecated) 예정이다.
NiFi Registry 는 2026년 2월 커뮤니티 투표로 폐기가 결정됐고 3.0 에서 제거된다.
최신 릴리스는 2.12.0(2026-09-13)이지만 신규 구축에 채택하지 말 것.
운영 중인 설치를 위해 문서를 남겨 둔다.출처: https://nifi.apache.org/download/ (2026-09-16 확인)
[manager@CentOS6 ~/]# wget https://mirror.navercorp.com/apache/nifi/1.14.0/nifi-registry-1.14.0-bin.tar.gz
[manager@CentOS6 ~/]# tar xvfz nifi-registry-1.14.0-bin.tar.gz
[manager@CentOS6 ~/]# ln -s nifi-registry-1.14.0 registry
[manager@CentOS6 ~/]# cd registry
# web properties #
nifi.registry.web.war.directory=./lib
nifi.registry.web.http.host=
nifi.registry.web.http.port=18080
nifi.registry.web.https.host=
nifi.registry.web.https.port=
nifi.registry.web.jetty.working.directory=./work/jetty
nifi.registry.web.jetty.threads=200
nifi.registry.web.should.send.server.version=true
# security properties #
nifi.registry.security.keystore=
nifi.registry.security.keystoreType=
nifi.registry.security.keystorePasswd=
${REDACTED}
nifi.registry.security.truststore=
nifi.registry.security.truststoreType=
nifi.registry.security.truststorePasswd=
${REDACTED}
nifi.registry.security.authorizers.configuration.file=./conf/authorizers.xml
nifi.registry.security.authorizer=managed-authorizer
nifi.registry.security.identity.providers.configuration.file=./conf/identity-providers.xml
nifi.registry.security.identity.provider=
# sensitive property protection properties #
# nifi.registry.sensitive.props.additional.keys=
# providers properties #
nifi.registry.providers.configuration.file=./conf/providers.xml
# registry alias properties #
nifi.registry.registry.alias.configuration.file=./conf/registry-aliases.xml
# extensions working dir #
nifi.registry.extensions.working.directory=./work/extensions
# legacy database properties, used to migrate data from original DB to new DB below
# NOTE: Users upgrading from 0.1.0 should leave these populated, but new installs after 0.1.0 should leave these empty
nifi.registry.db.directory=
nifi.registry.db.url.append=
# database properties
#nifi.registry.db.url=jdbc:h2:./database/nifi-registry-primary;AUTOCOMMIT=OFF;DB_CLOSE_ON_EXIT=FALSE;LOCK_MODE=3;LOCK_TIMEOUT=25000;WRITE_DELAY=0;AUTO_SERVER=FALSE
#nifi.registry.db.driver.class=org.h2.Driver
nifi.registry.db.url=jdbc:mariadb://nifi03.encore.rnd:3306/registry
nifi.registry.db.driver.class=org.mariadb.jdbc.Driver
nifi.registry.db.driver.directory=/home/osc/registry/lib
nifi.registry.db.username=registry
nifi.registry.db.password=${REDACTED}
nifi.registry.db.maxConnections=10
nifi.registry.db.sql.debug=false
# extension directories #
# Each property beginning with "nifi.registry.extension.dir." will be treated as location for an extension,
# and a class loader will be created for each location, with the system class loader as the parent
#
#nifi.registry.extension.dir.1=/path/to/extension1
#nifi.registry.extension.dir.2=/path/to/extension2
nifi.registry.extension.dir.aws=./ext/aws/lib
# Identity Mapping Properties #
# These properties allow normalizing user identities such that identities coming from different identity providers
# (certificates, LDAP, Kerberos) can be treated the same internally in NiFi. The following example demonstrates normalizing
# DNs from certificates and principals from Kerberos into a common identity string:
#
# nifi.registry.security.identity.mapping.pattern.dn=^CN=(.*?), OU=(.*?), O=(.*?), L=(.*?), ST=(.*?), C=(.*?)$
# nifi.registry.security.identity.mapping.value.dn=$1@$2
# nifi.registry.security.identity.mapping.transform.dn=NONE
# nifi.registry.security.identity.mapping.pattern.kerb=^(.*?)/instance@(.*?)$
# nifi.registry.security.identity.mapping.value.kerb=$1@$2
# nifi.registry.security.identity.mapping.transform.kerb=UPPER
# Group Mapping Properties #
# These properties allow normalizing group names coming from external sources like LDAP. The following example
# lowercases any group name.
#
# nifi.registry.security.group.mapping.pattern.anygroup=^(.*)$
# nifi.registry.security.group.mapping.value.anygroup=$1
# nifi.registry.security.group.mapping.transform.anygroup=LOWER
# kerberos properties #
nifi.registry.kerberos.krb5.file=
nifi.registry.kerberos.spnego.principal=
nifi.registry.kerberos.spnego.keytab.location=
nifi.registry.kerberos.spnego.authentication.expiration=12 hours
# OIDC #
nifi.registry.security.user.oidc.discovery.url=
nifi.registry.security.user.oidc.connect.timeout=
nifi.registry.security.user.oidc.read.timeout=
nifi.registry.security.user.oidc.client.id=
nifi.registry.security.user.oidc.client.secret=
${REDACTED}
# revision management #
# This feature should remain disabled until a future NiFi release that supports the revision API changes
nifi.registry.revisions.enabled=false
[manager@CentOS6 registry]# wget https://repo1.maven.org/maven2/org/mariadb/jdbc/mariadb-java-client/2.7.3/mariadb-java-client-2.7.3.jar
[manager@CentOS6 registry]# mv mariadb-java-client-2.7.3.jar lib/
[manager@CentOS6 registry]# bin/nifi-registry.sh start
데몬을 띄울 때 아래와 같은 Flyway 마이그레이션 오류가 나면 NiFi Registry Flyway 마이그레이션 실패 — MariaDB 식별자 길이 초과 를 볼 것.
2021-07-30 12:55:04,674 ERROR [main] o.f.core.internal.command.DbMigrate Migration of schema `registry` to version 3 - AddExtensions failed! Please restore backups and roll back database and code!
2021-07-30 12:55:04,679 WARN [main] o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'accessPolicyResource' defined in file [/home/manager/apache/nifi-registry-1.14.0/work/jetty/nifi-registry-web-api-1.14.0.war/webapp/WEB-INF/classes/org/apache/nifi/registry/web/api/AccessPolicyResource.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'standardServiceFacade' defined in file [/home/manager/apache/nifi-registry-1.14.0/work/jetty/nifi-registry-web-api-1.14.0.war/webapp/WEB-INF/classes/org/apache/nifi/registry/web/service/StandardServiceFacade.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'registryService' defined in URL [jar:file:/home/manager/apache/nifi-registry-1.14.0/work/jetty/nifi-registry-web-api-1.14.0.war/webapp/WEB-INF/lib/nifi-registry-framework-1.14.0.jar!/org/apache/nifi/registry/service/RegistryService.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'databaseMetadataService' defined in URL [jar:file:/home/manager/apache/nifi-registry-1.14.0/work/jetty/nifi-registry-web-api-1.14.0.war/webapp/WEB-INF/lib/nifi-registry-framework-1.14.0.jar!/org/apache/nifi/registry/db/DatabaseMetadataService.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is org.flywaydb.core.internal.command.DbMigrate$FlywayMigrateException:
Migration V3__AddExtensions.sql failed
--------------------------------------
SQL State : 42000
Error Code : 1059
Message : (conn=300) Identifier name 'UNIQUE__BUNDLE_VERSION_DEPENDENCY_BUNDLE_ID_GROUP_ARTIFACT_VERSION' is too long
(이미지 없음: picture205-1.png)
(이미지 없음: picture285-1.png)
(이미지 없음: picture384-1.png)
(이미지 없음: picture384-2.png)
(이미지 없음: picture268-1.png)
(이미지 없음: picture268-2.png)
(이미지 없음: picture965-1.png)
(이미지 없음: picture489-1.png)
(이미지 없음: picture489-2.png)