news 2026/2/27 9:38:45

`logstash-input-ssh` 并非 Logstash 官方维护的插件

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
`logstash-input-ssh` 并非 Logstash 官方维护的插件

你遇到的核心问题是logstash-input-ssh并非 Logstash 官方维护的插件,也不在默认的插件仓库中,所以执行安装命令时会提示“插件不存在”。此外,还有 JAVA_HOME 配置的警告需要处理,以下是分步骤的解决方案:

一、先解决核心问题:安装 SSH 输入功能的替代方案

Logstash 没有官方的logstash-input-ssh插件,要实现从 SSH 远程获取数据(如日志、命令输出),有两种主流且稳定的方案,按推荐优先级排序:

方案1:使用社区维护的 SSH 输入插件(需手动下载安装)

部分社区开发者将 SSH 输入功能封装为插件,托管在 GitHub 上,需手动下载并安装:

  1. 下载插件源码(以主流的社区插件为例):
    # 进入 Logstash 插件目录cd/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/# 克隆插件源码(需先安装 git:dnf install git -y / yum install git -y)gitclone https://github.com/ssoroka/logstash-input-ssh.git# 进入插件目录cdlogstash-input-ssh
  2. 构建并安装插件
    # 使用 Logstash 自带的 ruby 环境构建插件/usr/share/logstash/bin/ruby -S gem build logstash-input-ssh.gemspec# 安装构建后的 gem 包(替换文件名中的版本号为实际生成的版本)/usr/share/logstash/bin/logstash-plugininstall./logstash-input-ssh-1.0.0.gem

    注意:若该仓库不可用,可搜索 GitHub 上其他logstash-input-ssh社区插件,步骤一致。

方案2:用logstash-exec+ SSH 命令(更稳定,推荐)

如果社区插件存在兼容性问题,可使用 Logstash 的exec输入插件配合ssh命令,实现远程获取数据的功能,这是生产环境中更常用的方式:

  1. 无需安装额外插件exec是 Logstash 内置插件),直接在 Logstash 配置文件中编写逻辑:
    input { exec { # 每隔60秒执行一次 SSH 命令,获取远程服务器的日志(示例:获取/var/log/messages最后10行) command => "ssh -o StrictHostKeyChecking=no root@远程IP 'tail -10 /var/log/messages'" interval => 60 # 执行间隔(秒),可根据需求调整 tags => ["ssh_input"] # 打标签,方便后续过滤 } } output { # 输出到 Elasticsearch(示例,可替换为file、stdout等) elasticsearch { hosts => ["http://es-ip:9200"] index => "ssh-log-%{+YYYY.MM.dd}" } # 同时输出到控制台,便于调试 stdout { codec => rubydebug } }
  2. 配置 SSH 免密登录(避免每次执行命令输入密码):
    # 在 Logstash 服务器生成 SSH 密钥ssh-keygen -t rsa -b2048-N""-f ~/.ssh/id_rsa# 将公钥复制到远程服务器ssh-copy-id root@远程IP

    优势:无需依赖第三方插件,稳定性高,可灵活执行任意 SSH 命令获取数据。

二、处理 JAVA_HOME 警告问题

虽然这不是插件安装失败的原因,但为了避免后续版本升级出现问题,建议按提示修改配置:

  1. 查看 Logstash 自带的 JDK 路径
    ls/usr/share/logstash/jdk/# 通常会显示自带的 JDK 目录,如 jdk-17.x.x
  2. 配置 LS_JAVA_HOME 环境变量
    # 编辑 Logstash 启动配置文件vi/etc/profile.d/logstash.sh# 添加以下内容(替换为实际的自带 JDK 路径)exportLS_JAVA_HOME=/usr/share/logstash/jdk/jdk-17.0.8exportPATH=$LS_JAVA_HOME/bin:$PATH# 生效配置source/etc/profile.d/logstash.sh
  3. 移除原有的 JAVA_HOME 配置(若有):
    # 编辑 /etc/profile,注释或删除 JAVA_HOME 相关行vi/etc/profile# 生效配置source/etc/profile

三、验证插件安装/配置是否生效

  1. 若使用社区插件
    # 查看已安装的插件/usr/share/logstash/bin/logstash-plugin list|grepssh# 若显示 logstash-input-ssh,说明安装成功
  2. 若使用 exec + SSH 方案
    # 启动 Logstash 并指定配置文件/usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/ssh_input.conf# 查看是否有数据输出到控制台或 Elasticsearch

总结

  1. 核心解决方案:放弃安装不存在的logstash-input-ssh官方插件,优先使用exec输入插件 + SSH 命令的方式实现功能(稳定且无需第三方依赖),或选择社区维护的 SSH 插件手动安装。
  2. 次要优化:将JAVA_HOME替换为LS_JAVA_HOME,使用 Logstash 自带的 JDK,消除版本警告。
  3. 关键配置:配置 SSH 免密登录,避免 exec 执行命令时需要手动输入密码。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/25 14:24:19

为什么全球顶尖机构都在关注Open-AutoGLM?真相令人震惊

第一章:为什么全球顶尖机构都在关注Open-AutoGLM?在全球人工智能竞争日益激烈的背景下,Open-AutoGLM 凭借其在自动化生成语言模型(AutoGLM)领域的突破性进展,吸引了包括斯坦福大学、DeepMind 和 MIT 计算机…

作者头像 李华
网站建设 2026/2/11 4:28:21

环境不稳定?容器化治理方案

1 容器化时代的测试困境随着云原生技术成为主流,容器化部署在提升敏捷性的同时,却给测试工作带来了前所未有的挑战:环境配置不一致、数据状态难以同步、资源争用导致性能波动……这些问题直接影响到测试结果的可靠性与交付效率。本文旨在针对…

作者头像 李华
网站建设 2026/2/27 4:52:50

基于VUE的精品课程网站[VUE]-计算机毕业设计源码+LW文档

摘要:随着在线教育的发展,精品课程网站成为知识传播与教学互动的重要平台。本文阐述基于VUE框架构建精品课程网站的过程。通过需求分析明确网站功能,利用VUE及相关技术进行系统设计,实现课程展示、学习、管理等功能。该网站能有效…

作者头像 李华
网站建设 2026/2/27 4:47:44

仅需3步!用Open-AutoGLM实现低资源地区AI部署(独家指南)

第一章:Open-AutoGLM 数字鸿沟缩小助力 在人工智能技术飞速发展的今天,如何让边缘地区和资源受限环境下的用户也能享受大模型带来的便利,成为行业关注的重点。Open-AutoGLM 作为一款开源的轻量化自动推理框架,致力于通过高效压缩、…

作者头像 李华