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.
Building the Offline Packageedit
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.
Create the offline package with the
When you run the
bin/logstash-plugin packsubcommand, 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 packsubcommand on a UNIX machine. By default, when you run the
bin/logstash-plugin packsubcommand 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.
Move the compressed bundle to the offline machines that are the source for offline plugin installation, then use the
bin/logstash-plugin unpacksubcommand to make the packaged plugins available.
Install or Update a local pluginedit
To install or update a local plugin, use the
--local option with the install and update commands, as in the following
Managing Plugin Packsedit
unpack subcommands for
bin/logstash-plugin take the following options:
Generate the offline package as a GZipped TAR file. The default behavior on UNIX systems.
Generate the offline package as a ZIP file. The default behavior on Windows systems.
Generates a new offline package that overwrites an existing offline with the specified name.