question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Ability to include additional libraries in the Nifi containers

See original GitHub issue

Database processors need database drivers libraries in the Nifi containers.

The current hack is:

wget https://jdbc.postgresql.org/download/postgresql-42.2.6.jar
kubectl cp ./postgresql-42.2.6.jar fadi/fadi-nifi-0:/opt/nifi/postgresql-42.2.6.jar
rm postgresql-42.2.6.jar

It would be nice to be able to specify a list of libraries that would be downloaded and put in nifi_home/lib as an additional option.

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Reactions:1
  • Comments:6 (4 by maintainers)

github_iconTop GitHub Comments

2reactions
alexnuttinckcommented, Aug 27, 2019

I propose to use a postStart as explained here: https://kubernetes.io/docs/tasks/configure-pod-container/attach-handler-lifecycle-event/

We will have something like:

lifecycle:
  postStart:
    exec:
      command: ["/bin/sh", "-c", "your command to add the lib to the container"]

If you have a better idea, don’t hesitate.

0reactions
alexnuttinckcommented, Aug 27, 2019

@terence-bigtt yes, we could have an extra volumeMount to give the possibility to create other volume mounts , something like this:

          volumeMounts:
          {{- range .Values.extraVolumeMounts }}
            - name: {{ .name }}
              mountPath: {{ .mountPath }}
              subPath: {{ .subPath | default "" }}
          {{- end }}

      volumes:
      {{- range .Values.extraVolumeMounts }}
        - name: {{ .name }}
          persistentVolumeClaim:
            claimName: {{ .existingClaim }}
      {{- end }}

for the values.yaml

# Defines additional volume mounts.
extraVolumeMounts: []
  # - name: extra-volume
  #   mountPath: /mnt/volume
  #   existingClaim: volume-claim
Read more comments on GitHub >

github_iconTop Results From Across the Web

NiFi System Administrator's Guide - Apache NiFi
User1 can add components to the dataflow and is able to move, edit and connect all ... NOTE: Additional library directories can be...
Read more >
Adding additional python modules in NiFi Container
If you want to use native libraries, use ExecuteStreamCommand to invoke the python runtime via the command line, external of the NiFi JVM....
Read more >
Apache NiFi - Class Loading
Some components (processors, controller services, reporting tasks) may need to load additional libraries provided by the user at runtime.
Read more >
Maven config. for custom processor to Read/Write HDFS files
Try replacing the NAR POM dependency on nifi-standard-services-api-nar to nifi-hadoop-libraries-nar, this should provide all the classes/JARs/ ...
Read more >
nifi 0.4.3 · helm/cetic - Artifact Hub
You'll be able to contact the NodePort service, from outside the cluster, ... postStart, Include additional libraries in the Nifi containers by using...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found