我正在尝试向运行logstash的机器添加一个额外的插件。
我不能直接从互联网加载插件,因为互联网不能从这个主机访问。
我尝试使用以下命令从虚拟机导出该插件的脱机副本:
/usr/share/logstash/bin/logstash-plugin prepare-offline-pack --output logstash-output-syslog.zip logstash-output-syslog但是插件不能加载到目标机器上,它会抱怨logstash-codec-plain的版本。
我尝试在虚拟机上降级logstash-codec-plain的版本,以便可以重新导出正确的版本,但这不起作用:
"The bundle currently has logstash-codec-plain locked at 3.1.0. Try running `bundle update logstash-codec-plain`"我不知道这对run `bundle update`意味着什么。
我试图删除logstash-codec-plain,希望我可以重新安装一个较低的版本,但也不起作用:
Failed to remove "logstash-codec-plain" because the following plugins or libraries depend on it:
* logstash-mixin-aws
* logstash-mixin-http_client我不知道为什么它会抱怨这两个特定的插件,我已经删除了这两个插件,以及许多其他插件。
/usr/share/logstash/bin/logstash-plugin remove logstash-mixin-aws
...
ERROR: Operation aborted, cannot remove plugin, message: This plugin has not been previously installed发布于 2021-11-14 22:25:23
最后,我从VM卸载了logstash,并重新安装了我能找到的最旧版本的logstash,希望它有一个足够旧的logstash-codec-plain版本。
它起作用了!(*)
但它很难优雅、灵活或精确地将单个插件降级到特定的版本。我只是很幸运,降级正好提供了正确的版本。
更好的答案将是受欢迎的。
(*)起作用了,一旦我在新安装的目录上使用了chown -R logstash:logstash ...。
https://stackoverflow.com/questions/69967675
复制相似问题