Member since
07-30-2019
3434
Posts
1632
Kudos Received
1012
Solutions
My Accepted Solutions
| Title | Views | Posted |
|---|---|---|
| 117 | 01-27-2026 12:46 PM | |
| 516 | 01-13-2026 11:14 AM | |
| 1152 | 01-09-2026 06:58 AM | |
| 962 | 12-17-2025 05:55 AM | |
| 474 | 12-17-2025 05:34 AM |
08-15-2018
02:08 PM
1 Kudo
@sunile.manjee - You do NOT want to have the NiFi CA service installed if you are using your own certificates issued by your own CA or some public or corporately managed CA. If the NiFi CA is installed, it will be used. Often times this means it messes up your generated keystore and truststore files. Plus, if someone checks the force regenerate check box in Ambari, you would lose your keystore and truststore since new ones would be generated with only NiFi CA generated entries. - Thank you, Matt
... View more
08-14-2018
11:44 AM
2 Kudos
@sunile.manjee - Just to add some clarity. The NiFi CA is a self-signed certificate authority (Meaning the NiFi CA's certificate is a root level CA and has not had its certificate signed by a higher authority). The NiFi TLS toolkit can be used to create client/server certificates that are then signed by this authority for use by NiFi. The truststore.jks file used by NiFi typically contains all the "trustedCertEntries" needed to authenticate any client certificates used to authenticate against NiFi. So this would include the trustedCertEntry for the NiFi CA. The keystore.jks file used by NiFi could contain the PrivateKeyEntry (which is the certificate that has been signed by the NiFi CA). - Within a browser there are certificates and a number of default and possibly user added Authorities. In order for your browser to trust any certificate signed by the NiFi CA, the public certificate for your NiFi CA must be added to your browsers trusted authorities. - For example, you can see I have done that in Firefox here: You will see "Apache-NiFi CA" has been added. Now this browser will trust any certificate that has been signed by that authority. - Thank you, Matt
... View more
08-09-2018
02:06 PM
1 Kudo
@Rinki - 1. The key term here is "copy". My understanding is that the Files consumed from the FTP server will not be deleted. So on the first of every Month you will list the exact same files over again. (Going to assume these files are maybe updated over the course of the month?). ---- Your best bet would be to use a combination of listFtp and fetchFTP processors. The listFTP processor can be configured with a file filter regex so that only files with matching that filter are listed. The output from this processor will be a 0 byte FlowFile for each File listed. At this point the actual content of these flowfiles have not been retrieved yet; however, each 0 byte FlowFile has numerous bits of metadata about the target file. These attributes can be used to filter out additional listed files by time constraint (perhaps using RouteOnAttribute processor). The listFTP processor also records state. On execution next month only files with a last modified date newer then the previous recorded state will be listed. The FetchFTP processor would then be used to fetch the actual content of those listed FlowFiles. - 2. At this point you have all your FlowFiles (Each FlowFile consists of FlowFile content and FlowFile attributes). These attributes will include everything you need except file type at this point. Since NiFi is data agnostic, it does not at its core care about content type/format (specific processors that operate against the content will). You may consider trying to use the IdentifyMimeType processor to get the file types. Route the "success" relationship twice. Once down your database processing path and once down you local server path. On database path you want to take the attributes needed for your DB and replace the content with that information (examples: ReplaceText, AttributesToJson, etc...) and the put to your DB. On local server path you want to write original content to your local system directory (Example: putFile) - 3. As far as scheduling, you just need to configure your original ListFTP processor using the Cron Driven scheduling strategy and configure a Quartz cron so that the processor is only scheduled to run on the 1st of every month. - Thanks, Matt - If you found this Answer addressed your original question, please take a moment to login and click "Accept" below the answer.
... View more
08-08-2018
04:27 PM
@sunile.manjee Good catch. Thank you for sharing.
... View more
08-07-2018
10:42 PM
@sunile.manjee I updated my last response, let me know if this resolves your issue.
... View more
08-07-2018
10:19 PM
@sunile.manjee - I was playing around with PutS3Object and do not see same issue. Your configuration screen putS3Object processor configuration above shows values being set for both "Access Key' and 'Secret Key'. Only way I can reproduce what you see is if you checked the box "Set Empty String" for the 'Access Key' and 'Secret Key'. The empty string is being treaded like a null value and process validates that as being configured (that is why it shows "Sensitive value set"). - What you want to do is select field and hit your delete key to clear it out rather then checking the box. The "Access Key' and 'Secret Key' fields should show "No Value Set" instead. At that point your processor should validate correctly. - Thanks, Matt
... View more
08-07-2018
07:08 PM
@sunile.manjee - Does the content of your credentials file look like the following: [default]
aws_access_key_id=<access key>
aws_secret_access_key=<security key> - Make sure this credentials file is readable by the NiFi service user. - Thank you, Matt
... View more
08-07-2018
06:17 PM
@sunile.manjee - Once you create your minifi config yml file from your nifi template, you will need to hand edit the yml file to add the missing passwords. Currently only plaintext passwords are supported in the yml file. - https://jira.apache.org/jira/browse/MINIFI-160 - I also do not believe the putS3Object processor is part of the default available processors in MiNiFi. If you want to use that processor you will need to copy that NAR from your NiFi to your MiNiFi lib directory as well. - Thank you, Matt - If you found this Answer addressed your original question, please take a moment to login and click "Accept" below the answer.
... View more
08-07-2018
11:03 AM
@yong
lau
- If you don't want to use a dataflow to redistribute your to be merged to a single node, the only other option you have is to control the delivery of the source data that is going to be merged to a single node. - You'll need to ask yourself: How are these files which you want to merge getting to your NiFi? Can that be controlled so this particular flow of data goes to one node in your cluster only? - Thanks, Matt
... View more
08-06-2018
06:56 PM
@Harish Vaibhav Kali - Once a processor is assigned a UUID that processor will keep that UUID unless you delete and re-add that processor. - All processors within a single NiFi cluster will be running an identical flow.xml.gz. - I am guessing you are creating templates and then importing these into different NiFi instances? Templates do not preserve UUIDs. Each time you instantiate a template, all the components will get a new UUID. - If you are trying to version control flows across multiple independent NiFi installations, you will want to take a look at using the nifi-registry for this. As of Apache NiFi 1.5.0, nifi-registry and version controlling flows were introduced. In the latest Apache NiFi releases with nifi-registry 0.2, these version controlled flows can even be pushed to Git. - Using nifi-registry will allow independent NiFi instances the ability to push and pull version controlled flows. - https://nifi.apache.org/registry.html - Thank you, Matt
... View more