Kibana 6.7及以上版本才原生支持汉化,需在kibana.yml中正确配置i18n.locale: "zh-CN"并重启服务;低版本硬改会导致启动失败,且汉化仅限前端界面,不翻译索引、字段或日志原文。

直接改 i18n.locale: "zh-CN" 就能汉化,但前提是 Kibana 版本 ≥ 6.7 —— 更早的版本不支持内置中文,硬改配置会启动失败。
确认 Kibana 版本是否支持汉化
Kibana 6.7 及之后所有正式版(包括 7.x、8.x)才原生支持 i18n.locale 配置。低于这个版本(比如 6.6 或更老)即使写上 i18n.locale: "zh-CN",服务也起不来,日志里会报 ValidationError: child "i18n" fails because ["i18n" is not allowed] 这类错误。
检查方式很简单:
- 运行
kibana --version或查看解压目录名(如kibana-8.13.2-linux-x86_64) - 不确定时,先查官方文档对应版本的「Settings」章节,确认
i18n.locale是否在支持列表中
修改 kibana.yml 启用中文界面
配置位置取决于安装方式:
- deb/rpm 包安装:路径通常是
/etc/kibana/kibana.yml - tar.gz 解压安装:路径是
$KIBANA_HOME/config/kibana.yml(例如/opt/kibana/config/kibana.yml)
用 vim 或 nano 打开后,添加或修改这一行(注意冒号后必须有空格):
i18n.locale: "zh-CN"
常见错误点:
- 写成
i18n.locale:"zh-CN"(冒号紧贴值)→ Kibana 启动失败,报错YAMLException: can not read a block mapping entry - 写成
i18n.locale: zh-CN(没加引号)→ YAML 解析失败,同上 - 写成
i18n.locale: "zh"或"zh-cn"→ 中文显示不全或回退为英文
重启 Kibana 并验证汉化效果
改完配置必须重启服务,且要等进程完全退出再拉起,否则旧配置仍生效:
- systemd 管理(deb/rpm 安装):
sudo systemctl restart kibana,然后sudo systemctl status kibana看是否 active (running) - tar.gz 启动(后台运行):
pkill -f kibana杀干净,再nohup ./bin/kibana > kibana.log 2>&1 &
访问 http://<your-server-ip>:5601</your-server-ip> 前务必清空浏览器缓存或用无痕窗口打开——Kibana 会缓存语言偏好,改了配置但页面还是英文,八成是浏览器本地缓存没清。
汉化失败时优先排查这三处
如果页面仍是英文,别急着重装,先盯住这几个地方:
-
kibana.log里有没有Failed to set locale或Invalid value for i18n.locale类报错 - 浏览器开发者工具 Network 标签页里,
translations/zh-CN.json请求是否 404?如果是,说明 Kibana 没带中文资源(极少见,除非你手动删过src/legacy/core_plugins/kibana/public/translations) - 确认你改的是正在运行的 Kibana 实例所读取的
kibana.yml—— 有时服务器上存在多个 Kibana 目录,改错了文件就白忙
真正容易被忽略的是:Kibana 的汉化只影响前端界面文字,所有索引名、字段名、DSL 查询、DevTools 里的响应体,仍然是原始数据的语言(比如日志原文是英文,它不会自动翻译)。别指望点几下配置就把 Elasticsearch 里的英文日志变中文。


















