[
https://issues.apache.org/jira/browse/BIGTOP-1159?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14081473#comment-14081473
]
Bruno Mahé commented on BIGTOP-1159:
------------------------------------
I don't want to force that patch without consensus. I also want to make sure I
understand your use case so we don't miss any potential issue.
Thanks! With your explanation I understand better why you support /var/.
But why shouldn't plugins be managed through packages as well? A plugin for
Apache Flume 1.4 cannot be considered safe for Apache Flume 1.5 and we don't
want /var to become a dump. Also as more Apache Hadoop related projects
integrate with Apache Flume, we will need to manage them through packages
anyway.
Here is how I see things. Feel free to comment on it:
* Simple jar-based plugins like the ones for Apache Flume are no different than
the symlinks we put for hadoop. Apache Flume depends on Apache Hadoop package
because it needs its jars.
* A plugin can be packaged and depend on Apache Flume to be installed.
* A plug in is a simple set of jars. So removing it when we remove Apache Flume
should bear no effect. Local state should still be in /var
Here are 2 examples:
1/ For instance Apache Phoenix has added an Apache Flume plugin. Apache Phoenix
should provide a flume-ng-phoenix-plugin (or phoenix-flume-plugin) package
which depends on the Apache Flume version it was built against and gets
deployed in /usr/lib/flume-ng/plugins.d/phoenix/. Apache Phoenix libraries are
symlinked to avoid duplicates (like the Apache Hadoop ones). So plugins can be
upgraded/removed along with Apache Flume according to their relationship.
2/ At current job we have developped a few source and sinks (Redis, Bigquery,
Kinesis...). We made packages out of them. It enables us to easily deploy and
manage through our configuration management system and I will be sure that the
Apache Flume version I use for my plugin has the required version for my
plug-ins.
Here is one of them which also builds an RPM as part of the pom.xml:
https://github.com/DevOps-TangoMe/flume-redis
> /usr/lib/flume-ng/plugins.d/ needs to be created and owned by flume
> -------------------------------------------------------------------
>
> Key: BIGTOP-1159
> URL: https://issues.apache.org/jira/browse/BIGTOP-1159
> Project: Bigtop
> Issue Type: Bug
> Reporter: Bruno Mahé
> Assignee: Bruno Mahé
> Attachments:
> 0001-BIGTOP-1159.-usr-lib-flume-ng-plugins.d-needs-to-be-.patch
>
>
> Apache Flume expects plugins to be dropped in /usr/lib/flume-ng/plugins.d/.
> But our package do not provide such directory since flume does not ship any
> plugin.
> Apache Flume package should create an empty directory
> /usr/lib/flume-ng/plugins.d/ and owned it.
> So plugins can be dropped automatically as packages into their own
> subdirectories.
--
This message was sent by Atlassian JIRA
(v6.2#6252)