Offline Plugin Management

edit

The Logstash plugin manager was introduced in the 1.5 release. This section discusses setting up local repositories of plugins for use on systems without access to the Internet.

The procedures in this section require a staging machine running Logstash that has access to a public or private Rubygems server. This staging machine downloads and packages the files used for offline installation.

See the Private Gem Repositories section for information on setting up your own private Rubygems server.

Users who can work with a larger Logstash artifact size can use the Logstash (All Plugins) download link from the Logstash product page to download Logstash bundled with the latest version of all available plugins. You can distribute this bundle to all nodes without further plugin staging.

Building the Offline Package

edit

Working with offline plugins requires you to create an offline package, which is a compressed file that contains all of the plugins your offline Logstash installation requires, along with the dependencies for those plugins.

  1. Create the offline package with the bin/logstash-plugin pack subcommand.

    When you run the bin/logstash-plugin pack subcommand, Logstash creates a compressed bundle that contains all of the currently installed plugins and the dependencies for those plugins. By default, the compressed bundle is a GZipped TAR file when you run the bin/logstash-plugin pack subcommand on a UNIX machine. By default, when you run the bin/logstash-plugin pack subcommand on a Windows machine, the compressed bundle is a ZIP file. See Managing Plugin Packs for details on changing these default behaviors.

    Downloading all dependencies for the specified plugins may take some time, depending on the plugins listed.

  2. Move the compressed bundle to the offline machines that are the source for offline plugin installation, then use the bin/logstash-plugin unpack subcommand to make the packaged plugins available.

Install or Update a local plugin

edit

To install or update a local plugin, use the --local option with the install and update commands, as in the following examples:

Example 1. Installing a local plugin

bin/logstash-plugin install --local logstash-input-jdbc

Example 2. Updating a local plugin

bin/logstash-plugin update --local logstash-input-jdbc

Example 3. Updating all local plugins in one command

bin/logstash-plugin update --local

Managing Plugin Packs

edit

The pack and unpack subcommands for bin/logstash-plugin take the following options:

--tgz

Generate the offline package as a GZipped TAR file. The default behavior on UNIX systems.

--zip

Generate the offline package as a ZIP file. The default behavior on Windows systems.

[packname] --override

Generates a new offline package that overwrites an existing offline with the specified name. [packname] --[no-]clean: Deletes offline packages matching the specified name.