欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Nifi单机安装并集成ldap配置

程序员文章站 2022-04-28 10:00:10
...

1. 准备软件安装包

nifi-1.11.4-bin.zip

2. 解压安装

unzip nifi-1.11.4-bin.zip

3. Nifi配置

3.1 修改bootstrap.conf

aaa@qq.com:~$ cd ~/nifi-1.11.4-bin

aaa@qq.com:~/nifi-1.11.4-bin$ vim conf/bootstrap.conf

修改如下配置:

# JVM memory settings

java.arg.2=-Xms10240m

java.arg.3=-Xmx20480m

打开注释:

java.arg.13=-XX:+UseG1GC

保存退出。

注意:jvm大小根据实际机器内存进行配置,XmsXmx一般是折半,jvm 8G以上才打开G1垃圾回收,否则不要打开。

3.2 修改nifi.properties

aaa@qq.com: ~/nifi-1.11.4-bin$ vim conf/nifi.properties
#修改如下配置:
# web ui配置。http.port留空,启用https
nifi.web.http.port=
nifi.web.https.host=192.168.172.128
nifi.web.https.port=9443
保存退出。

3.3 集成LDAP配置

1、生成**库

aaa@qq.com:~$ cd ~/nifi-1.11.4-bin/toolkit/nifi-toolkit-1.11.4-SNAPSHOT/bin/
aaa@qq.com:~/nifi-1.11.4-bin/toolkit/nifi-toolkit-1.11.4-SNAPSHOT/bin$ ./tls-toolkit.sh standalone -n '192.168.172.128' --subjectAlternativeNames '192.168.172.128' -P nifi123 -S nifi123 -d 3600 -o ../store

可以看到已生成节点的目录,里面包含对应的**文件keystore.jks和truststore.jks,还有

Nifi单机安装并集成ldap配置

2、将**文件拷贝到~/nifi-1.11.4-bin/conf/下,并修改配置文件:

aaa@qq.com:~/nifi-1.11.4-bin/toolkit/nifi-toolkit-1.11.4-SNAPSHOT/store/192.168.172.128$ cp *.jks ~/nifi-1.11.4-bin/conf/
aaa@qq.com:~/nifi-1.11.4-bin/toolkit/nifi-toolkit-1.11.4-SNAPSHOT/store/192.168.172.128$ cd ~/nifi-1.11.4-bin
aaa@qq.com:~/nifi-1.11.4-bin$ vim conf/nifi.properties
nifi.security.keystore=./conf/keystore.jks
nifi.security.keystoreType=jks
nifi.security.keystorePasswd=nifi123
nifi.security.keyPasswd=
nifi.security.truststore=./conf/truststore.jks
nifi.security.truststoreType=jks
nifi.security.truststorePasswd=nifi123
nifi.security.user.authorizer=managed-authorizer
nifi.security.user.login.identity.provider=ldap-provider
nifi.security.ocsp.responder.url=
nifi.security.ocsp.responder.certificate=

3、修改authorizers.xml文件

前提已经部署好ApacheDS,并且已建立好对应的用户和组。默认为uid=nifi,ou=wheel,dc=com,dc=cn。

aaa@qq.com:~/nifi-1.11.4-bin/conf$ vim authorizers.xml
<userGroupProvider>
    <identifier>file-user-group-provider</identifier>
    <class>org.apache.nifi.authorization.FileUserGroupProvider</class>
    <property name="Users File">./conf/users.xml</property>
    <property name="Legacy Authorized Users File"></property>
    <property name="Initial User Identity 1">uid=nifi,ou=wheel,dc=com,dc=cn</property>
</userGroupProvider>
<accessPolicyProvider>
    <identifier>file-access-policy-provider</identifier>
    <class>org.apache.nifi.authorization.FileAccessPolicyProvider</class>
    <property name="User Group Provider">file-user-group-provider</property>
    <property name="Authorizations File">./conf/authorizations.xml</property>
    <property name="Initial Admin Identity">uid=nifi,ou=wheel,dc=com,dc=cn</property>
    <property name="Legacy Authorized Users File"></property>
    <property name="Node Identity 1"></property>
    <property name="Node Group"></property>
</accessPolicyProvider>
<authorizer>
    <identifier>managed-authorizer</identifier>
    <class>org.apache.nifi.authorization.StandardManagedAuthorizer</class>
    <property name="Access Policy Provider">file-access-policy-provider</property>
</authorizer>

4、修改login-identity-providers.xml文件

aaa@qq.com:~/nifi-1.11.4-bin/conf$ vim login-identity-providers.xml
<provider>
    <identifier>ldap-provider</identifier>
    <class>org.apache.nifi.ldap.LdapProvider</class>
    <property name="Authentication Strategy">SIMPLE</property>

    <property name="Manager DN">uid=admin,ou=system</property>
    <property name="Manager Password">nifi123</property>

    <!-- property name="TLS - Keystore"></property -->
    <!-- property name="TLS - Keystore Password"></property -->
    <!-- property name="TLS - Keystore Type"></property -->
    <!-- property name="TLS - Truststore"></property -->
    <!-- property name="TLS - Truststore Password"></property -->
    <!-- property name="TLS - Truststore Type"></property -->
    <!-- property name="TLS - Client Auth"></property -->
    <!-- property name="TLS - Protocol"></property -->
    <!-- property name="TLS - Shutdown Gracefully"></property -->

    <property name="Referral Strategy">FOLLOW</property>
    <property name="Connect Timeout">10 secs</property>
    <property name="Read Timeout">10 secs</property>

    <property name="Url">ldap://172.28.231.23:10389</property>
    <property name="User Search Base">ou=wheel,dc=com,dc=cn</property>
    <property name="User Search Filter">uid={0}</property>

    <property name="Identity Strategy">USE_DN</property>
    <property name="Authentication Expiration">12 hours</property>
</provider>

3.4 配置最佳实践

1、修改limits.conf

aaa@qq.com:~$ sudo vim /etc/security/limits.conf

添加如下内容:

*  hard  nofile  50000

*  soft  nofile  50000

*  hard  nproc  10000

*  soft  nproc  10000

nifi hard  nofile  50000

nifi soft  nofile  50000

nifi hard  nproc  10000

nifi soft  nproc  10000

保存退出。

2、修改90-nproc.conf

aaa@qq.com:~$ sudo vim /etc/security/limits.d/90-nproc.conf
添加如下内容:
*  soft  nproc  10000
保存退出。

3、配置TCP套接字端口的数量

aaa@qq.com:~$ sudo sysctl -w net.ipv4.ip_local_port_range="10000 65000"

4、设置套接字在关闭时保持在TIMED_WAIT状态的时间

aaa@qq.com:~$ sudo sysctl -w net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait="1"

5、配置不使用交换

aaa@qq.com:~$ sudo vim /etc/sysctl.conf

添加如下内容:

vm.swappiness = 0

保存退出。

生效配置。

aaa@qq.com:~$ sudo sysctl -p

4. 启停nifi

启动:

aaa@qq.com:~/nifi-1.11.4-bin$ bin/nifi.sh start

停止:

aaa@qq.com:~/nifi-1.11.4-bin$ bin/nifi.sh stop

5. 测试登录

输入用户名nifi,密码nifi123

Nifi单机安装并集成ldap配置

当你使用初始管理员账号进入Nifi以后,你会发现大部分的地方都是灰色的,你基本没法做任何操作。这时候你可以通过点击右上侧的菜单栏并选择Policies来为你自己的账户添加全局权限,又或者点击Process Group的权限按钮来设定应用于该组别的权限。

相关标签: ETL