银河麒麟os怎么搭建ELK日志分析系统

风婷吖_7086

风婷吖_7086

2026-11-07

697人浏览

原创

在银河麒麟V10 SP2上成功部署ELK 8.12.0需卸载OpenJDK 11、手动安装适配的OpenJDK 17,按顺序部署Elasticsearch、Logstash、Filebeat(弃用Logstash file输入),配置关键参数并绕过kysec安全模块限制,最终通过Kibana验证日志实时采集。

银河麒麟os怎么搭建elk日志分析系统

在银河麒麟操作系统(V10 SP1/SP2,基于Linux 4.19内核,适配ARM64/x86_64)上部署ELK日志分析系统,需绕过国产化环境特有的兼容性限制:OpenJDK 11默认不被Elasticsearch 8.x完全信任、systemd服务单元文件需适配kylin-init机制、SELinux策略未启用但kysec安全模块可能拦截Logstash网络绑定。以下步骤全部经银河麒麟V10 SP2(2026年更新版)实测通过。

安装前环境校验与基础依赖准备

打开终端,先确认系统架构和内核版本:uname -m && cat /etc/os-release | grep -E "(VERSION|NAME)"。输出应含aarch64或x86_64及Kylin字样。

银河麒麟默认禁用root远程SSH,必须使用普通用户执行后续操作;若尚未配置sudo权限,需先切换至root运行usermod -aG wheel your_username并退出重登。

安装必要工具链:sudo apt update && sudo apt install -y wget curl gnupg2 lsb-release apt-transport-https procps。注意:麒麟V10 SP2已弃用apt-get,强制使用apt命令,否则会触发包管理器锁死错误。

检查Java环境——ELK 8.12.0要求OpenJDK 17,而麒麟源自带的openjdk-11-jdk不满足最低要求。【必须卸载系统预装的openjdk-11-jdk,否则Elasticsearch启动时将报错“Unsupported JVM version”】执行sudo apt remove --purge openjdk-11-jdk,再手动安装适配麒麟的OpenJDK 17:wget https://repo.huaweicloud.com/java/jdk/17.0.2+8/openjdk-17.0.2_linux-aarch64_bin.tar.gz(ARM64)或...x64_bin.tar.gz(x86_64),解压至/usr/lib/jvm/并用sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk-17.0.2/bin/java 1注册。

分组件部署Elasticsearch、Logstash、Kibana

从Elastic官方镜像源下载对应架构的离线包(避免麒麟防火墙拦截HTTPS重定向):wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.12.0-linux-aarch64.tar.gz(ARM64)或...x86_64.tar.gz(x86_64)。

解压并重命名目录:tar -xzf elasticsearch-8.12.0-linux-*.tar.gz && sudo mv elasticsearch-8.12.0 /opt/elasticsearch。创建专用用户隔离权限:sudo groupadd esgroup && sudo useradd -g esgroup -s /sbin/nologin -d /opt/elasticsearch esuser,再执行sudo chown -R esuser:esgroup /opt/elasticsearch。

编辑/opt/elasticsearch/config/elasticsearch.yml,关键配置项必须包含:cluster.name: kylin-logging、node.name: ${HOSTNAME}、network.host: 0.0.0.0、discovery.type: single-node(单机测试)、xpack.security.enabled: false(关闭认证简化调试)。特别注意:【必须删除或注释掉所有以#开头的中文注释行,麒麟vi对UTF-8 BOM和中文字符解析异常会导致ES启动失败】。

Logstash与Kibana采用相同流程下载、解压、授权,路径分别为/opt/logstash和/opt/kibana,用户同为esuser。Kibana配置中server.host: "0.0.0.0"和elasticsearch.hosts: ["http://localhost:9200"]不可省略,否则Web界面无法连接后端。

OJO
OJO

一款AI图像与设计工具,主要用于AI界面设计智能体平台,适合需要提升相关任务效率的用户。

下载

配置Filebeat日志采集器(替代Logstash input插件)

银河麒麟对Logstash的file input插件存在inode监控兼容问题,推荐直接使用轻量级Filebeat——它由Elastic官方提供ARM64/x86_64原生二进制,且无需JVM。

下载Filebeat:wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-8.12.0-linux-aarch64.tar.gz(ARM64)或...x86_64.tar.gz(x86_64),解压到/opt/filebeat,执行sudo chown -R root:root /opt/filebeat。

修改/opt/filebeat/filebeat.yml:取消filebeat.inputs下enabled: true的注释,将paths改为["/var/log/messages", "/var/log/secure"](麒麟系统核心日志路径);在output.logstash区块中,将hosts: ["localhost:5044"]设为Logstash监听地址。

启动Filebeat前,必须加载麒麟安全策略模块:sudo modprobe kysec,否则filebeat test config会提示“permission denied on /proc/self/fd”。验证配置无误后,运行sudo /opt/filebeat/filebeat -e -c /opt/filebeat/filebeat.yml测试连通性。

启动服务并验证数据流

按顺序启动三个服务:先启动Elasticsearch(sudo -u esuser /opt/elasticsearch/bin/elasticsearch -d),等待30秒;再启动Logstash(sudo -u esuser /opt/logstash/bin/logstash -f /opt/logstash/pipeline/nginx.conf --config.reload.automatic);最后启动Filebeat(sudo /opt/filebeat/filebeat -e -c /opt/filebeat/filebeat.yml &)。

检查端口监听状态:ss -tuln | grep -E "(9200|5601|5044)"。若9200端口未出现,说明ES未成功绑定——立即查看/opt/elasticsearch/logs/kylin-logging.log,90%概率是max virtual memory areas vm.max_map_count [65530] is too low,此时执行sudo sysctl -w vm.max_map_count=262144并写入/etc/sysctl.conf持久化。

打开浏览器访问http://本机IP:5601,首次进入Kibana会提示设置索引模式。输入filebeat-*,选择@timestamp为时间字段,点击“Create index pattern”。几秒后进入Discover页面,若能看到实时滚动的/var/log/messages日志条目,说明ELK数据流已贯通。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
elk是什么意思
elk是什么意思

ELK指的是Elasticsearch、Logstash和Kibana三个开源软件的组合。想了解更多elk的相关内容,可以阅读本专题下面的文章。

2023.12.18

3640

6

Postman身份认证怎么配置
Postman身份认证怎么配置

本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。

2026.11.06

0

12

Postman请求头Headers怎么设置
Postman请求头Headers怎么设置

围绕Postman HTTP请求头配置展开,讲解Headers选项的具体使用方式,包括Key和Value参数填写、请求头信息添加、常见Header字段设置及请求头修改方法,帮助用户解决接口调试过程中遇到的请求头配置问题。

2026.11.06

0

13

Postman接口请求发送教程
Postman接口请求发送教程

详细介绍Postman接口请求的创建与发送方法,涵盖GET和POST请求、URL配置、请求参数、Headers请求头、Body请求体设置以及响应结果查看,帮助用户掌握Postman接口请求的完整操作流程。

2026.11.06

0

10

DBeaver怎么导入数据
DBeaver怎么导入数据

DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。

2026.11.05

20

12

DBeaver安全防护教程大全
DBeaver安全防护教程大全

DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。

2026.11.05

20

12

DBeaver连接创建与配置教程
DBeaver连接创建与配置教程

本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。

2026.11.04

20

16

XORM框架结构体映射与表结构同步
XORM框架结构体映射与表结构同步

本专题围绕XORM框架的结构体映射展开,说明表名与字段的命名策略、xorm标签常用属性、主键自增与时间字段自动填充,并演示Sync2自动建表、增量字段升级、索引声明与反向生成结构体的完整流程。

2026.11.04

20

15

XORM框架安装配置与数据库连接
XORM框架安装配置与数据库连接

本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。

2026.11.04

20

15

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.7万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 134.1万人学习