logstash启动失败解决
安装的是最新7.X系列首先要写repo文件
1 2 3 4 5 6 7 8 9 | /etc/yum.repos.d/elasticsearch.repo [elasticsearch-7.x] name=Elasticsearch repository for 7.x packages baseurl=https: //artifacts.elastic.co/packages/7.x/yum gpgcheck=0 gpgkey=https: //artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md |
关闭了 gpgcheck ,测试不需要检查。
然后直接安装
1 | yum -y install logstash |
安装很慢需要耐心等,当然也可以从官方网站下载,我这里是yum安装
手动添加systemd服务
1 | /usr/share/logstash/bin/system-install |
完成后会创建脚本/etc/systemd/system/logstash.service
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | [Unit] Description=logstash [Service] Type=simple User=logstash Group=logstash # Load env vars from /etc/default/ and /etc/sysconfig/ if they exist. # Prefixing the path with '-' makes it try to load, but if the file doesn't # exist, it continues onward. EnvironmentFile=-/etc/ default /logstash EnvironmentFile=-/etc/sysconfig/logstash ExecStart=/usr/share/logstash/bin/logstash "--path.settings" "/etc/logstash" Restart=always WorkingDirectory=/ Nice=19 LimitNOFILE=16384 [Install] WantedBy=multi-user.target |
启动
1 | systemctl start logstash |
检查
1 | systemctl status logstash |
发现错误,无法启动,查看系统日志tail -999f /var/log/messages
1 2 3 4 5 6 7 8 | Sep 25 09:52:57 xh_nginx systemd: Started logstash. Sep 25 09:52:57 xh_nginx systemd: Starting logstash... Sep 25 09:52:57 xh_nginx logstash: could not find java; set JAVA_HOME or ensure java is in PATH Sep 25 09:52:57 xh_nginx systemd: logstash.service: main process exited, code=exited, status=1/FAILURE Sep 25 09:52:57 xh_nginx systemd: Unit logstash.service entered failed state. Sep 25 09:52:57 xh_nginx systemd: logstash.service failed. Sep 25 09:52:57 xh_nginx systemd: logstash.service holdoff time over, scheduling restart. Sep 25 09:52:57 xh_nginx systemd: Cannot add dependency job for unit rpcbind.socket, ignoring: Unit not found. |
报的错是无法找到java,原因是java 是手动tar安装的,而logstash默认配置文件去 /usr/bin、/bin、/sbin、/usr/sbin 找,所以无法找到,解决办法很多,我这里软连接解决的。
1 | which java<br>ln -s /usr/src/java/bin/* /bin<br>或者在logstash 配置文件添加环境变量<br>/usr/share/logstash/bin/logstash.lib.sh<br>JAVA_HOME= "/usr/src/java" |
这样一来他就会找到java环境了。
1 2 3 4 5 6 7 8 9 | [root@xh_nginx sysconfig]# systemctl status logstash ● logstash.service - logstash Loaded: loaded (/etc/systemd/system/logstash.service; enabled; vendor preset: disabled) Active: active (running) since Wed 2019-09-25 10:06:54 CST; 9s ago Main PID: 15468 (java) Tasks: 17 Memory: 522.7M CGroup: /system.slice/logstash.service └─15468 /bin/java -Xms1g -Xmx1g -XX:+UseConcMarkSweepGC -XX:CMSIniti... |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~