news 2026/6/23 9:38:11

`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/6/22 23:48:28

Perl 5.8有哪些主要特性?现在还值得学吗?

Perl 5.8是一个具有里程碑意义的稳定版本,在2000年代初期被广泛应用于系统管理、网络编程和Web开发。它引入了Unicode支持的重大改进、更安全的信号处理以及增强的线程模型。尽管后续版本带来了更多特性,但Perl 5.8因其稳定性和广泛的模块支持&#xff0…

作者头像 李华
网站建设 2026/6/23 17:10:50

网络与信息安全工程师职业前景如何?薪资待遇怎样?

网络与信息安全工程师职业前景如何?薪资待遇怎样?工业和信息化部教育与考试中心颁发的网络与信息安全工程师如何报名?一文解读 网络与信息安全工程师是指通过学习和掌握网络与信息安全相关的技术和知识,能够在企业、政府等组织中…

作者头像 李华
网站建设 2026/6/23 4:24:24

【AI驱动社会变革】:基于Open-AutoGLM的10年效率增长预测

第一章:Open-AutoGLM与社会效率变革的十年展望Open-AutoGLM 作为下一代开源自动化通用语言模型,正以惊人的速度重塑社会资源配置与生产效率的边界。其核心优势在于将自然语言理解、任务编排与跨系统集成能力深度融合,使得非技术人员也能通过对…

作者头像 李华
网站建设 2026/6/23 18:23:29

从实验室到乡村课堂,Open-AutoGLM如何改变千万人命运?

第一章:从实验室到乡村课堂,Open-AutoGLM的使命与愿景 Open-AutoGLM 并非诞生于商业路演或资本会议室,而是源自一群高校研究者在偏远山区支教时的真实困境。当最先进的大语言模型仍在实验室中优化参数时,那些连稳定网络都无法保障…

作者头像 李华
网站建设 2026/6/23 21:07:37

Linly-Talker能否支持触觉反馈实现多感官交互?

Linly-Talker能否支持触觉反馈实现多感官交互? 在智能交互系统不断突破感知边界的今天,我们已经习惯了数字人“能听会说、表情丰富”的表现。像 Linly-Talker 这样的开源项目,仅凭一张照片就能驱动出自然对话语音与精准口型同步的虚拟形象&am…

作者头像 李华