原文

环境背景, Kibana 7.4.0, Elasticsearch 7.4.0

注意, 执行以下命令时, 尽量在管理员权限的命令行窗口里执行, 避免一些没有权限的报错;

1. 准备 Kibana 源码

git clone https://github.com/elastic/kibana.git

如果 github 访问过慢, 可以切换加速通道: https://github.com.cnpmjs.org/elastic/kibana.git

切换对应 ES 版本的分支/标签:

cd kibana
git fetch # 取回所有分支和标签的更新
git tag -l | findstr 7.4.0 # windows 下查看 7.4.0 版本的标签
git checkout v7.4.0 # 切换 7.4.0 标签

2. 安装依赖软件

2.1 node

安装 .node-version 文件里标记的 node 版本

cat .node-version

2.2 nvm

windows 可以安装 nvm-windows 工具来管理 node 版本;

nvm list # 查看已安装的 node 版本列表
nvm use <version> # 切换 node 到指定版本
nvm install <version> # 安装指定版本的 node

2.3 yarn

npm install --global yarn

3. 初始化 Kibana

3.1 chromedriver

npm install chromedriver --chromedriver_cdnurl=http://cdn.npm.taobao.org/dist/chromedriver

3.2 node-gyp

用于编译插件模块的工具, Kibana 初始化过程中会遇到问题, 所以提前先准备好;

npm install -g node-gyp

设置 npm 指定的 python 版本, 如果已安装有不同版本的 python:

node-gyp set python /path/to/executable/python

如果之前已经安装好了的, 会出现以下异常, 可以忽略不管:

***\kibana>npm install -g node-gyp
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm ERR! path ***\Node\global\node-gyp.cmd
npm ERR! code EEXIST
npm ERR! Refusing to delete ***\Node\global\node-gyp.cmd: is outside ***\Node\global\node_modules\node-gyp and not a link
npm ERR! File exists: ***\Node\global\node-gyp.cmd
npm ERR! Move it away, and try again. npm ERR! A complete log of this run can be found in:
npm ERR! ***\Node\cache\_logs\2021-02-08T09_20_46_911Z-debug.log

3.3 初始化

yarn kbn bootstrap

初始化完成的时候如下图所示:

如果想切换分支删除已经下载的依赖, 或者下载的依赖有问题需要清除, 执行一下命令:

yarn kbn clean
yarn cache clean

注意, 清空之后需要回到 3.1 再按照流程安装相应的依赖包;

4. 环境配置

Kibana 是个大项目, 一些命令容易触发默认的堆内存限制导致内存溢出, 可以修改 --max_old_space_size 配置调大最大堆内存限制;

export NODE_OPTIONS="--max_old_space_size=2048"

windows 环境下没有找到配置的位置, 再调试插件的时候也没有出现内存溢出的情况, 暂时不考虑;

5. 连接 ES 集群

准备运行的 Elasticsearch 环境(略)

修改 config/kibana.yml 文件:

elasticsearch.hosts: ["http://test-es-host:9200"]

6. 从源码启动 Kibana

kibana 根目录下执行命令 yarn start , 即可启动 Kibana 进程, 并连接上面配置的 ES 集群;

启动成功后, 在本地浏览器中访问 http://localhost:5601, 有时候是 5603 等其他端口, 要注意启动成功的命令行窗口里的提示, 根据提示修改对应访问的端口号;

Q. 问题

  1. Current existing ChromeDriver binary is unavailable, proceding with download and extraction.

先安装 chromedriver

npm install --global chromedriver --chromedriver_cdnurl=http://cdn.npm.taobao.org/dist/chromedriver
  1. Error: Failed to parse .i18nrc.json file at ....i18nrc.json, info:TypeError: Cannot read property 'forEach' of undefined

异常原因是因为 .i18nrc.json 文件中没有配置翻译文件; 通过 gen 脚本创建初始化的插件, 一上来就会有这个问题~

{
"paths": {
"mycol": "./"
},
"translations": ["translations/zh-CN.json"] # 添加这一行配置即可, 语言选择对应的 json 文件即可
}

R. 参考资料

  1. https://www.elastic.co/guide/en/kibana/7.10/development-getting-started.html
  2. https://blog.csdn.net/qq_41882147/article/details/81222054
  3. kibana 使用备忘录

Kibana 插件环境搭建教程的更多相关文章

  1. Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境搭建教程

    原文地址:http://www.osyunwei.com/archives/7378.html 搬运是为了自己找资料方便. 准备篇 一.环境说明: 操作系统:Windows Server 2012 R ...

  2. Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境搭建教程

    准备篇 一.环境说明: 操作系统:Windows Server 2012 R2 PHP版本:php 5.5.8 MySQL版本:MySQL5.6.15 二.相关软件下载: 1.PHP下载地址: htt ...

  3. Win2012 R2 IIS8.5+PHP(FastCGI)+MySQL运行环境搭建教程

    这篇文章主要介绍了Win2012 R2 IIS8.5+PHP(FastCGI)+MySQL运行环境搭建教程,需要的朋友可以参考下 准备篇 一.环境说明: 操作系统:Windows Server 201 ...

  4. (一)phoneGap之环境搭建教程及其example分析

    phoneGap之环境搭建教程及其example分析 一.环境搭建 与普通的开发android应用一样,phoneGap也同于原生android应用一样,环境相同,只是有部分不同,下面就我做理解,进行 ...

  5. 转---详细的Android开发环境搭建教程

    五步搞定Android开发环境部署——非常详细的Android开发环境搭建教程 引言   在windows安装Android的开发环境不简单也说不上算复杂,本文写给第一次想在自己Windows上建立A ...

  6. Windows Server 2003 IIS6.0+PHP5(FastCGI)+MySQL5环境搭建教程

    准备篇 一.环境说明: 操作系统:Windows Server 2003 SP2 32位 PHP版本:php 5.3.14(我用的php 5.3.10安装版) MySQL版本:MySQL5.5.25 ...

  7. LAMP环境搭建教程

    原文:LAMP环境搭建教程 学习PHP脚本编程语言之前,必须先搭建并熟悉开发环境,开发环境有很多种,例如LAMP.WAMP.MAMP等.这里我介绍一下LAMP环境的搭建,即Linux.Apache.M ...

  8. Win2008 R2 IIS7.5+PHP5(FastCGI)+MySQL5环境搭建教程

    现在很多朋友想尝试win2008 r2来跑web服务器,跟win2003相比界面差别有点大,有些人可能不太习惯,不过以后是趋势啊,这里简单分享下,方便需要的朋友 准备篇 一.环境说明: 操作系统:Wi ...

  9. 虚拟机IOS开发环境搭建教程

    来源:http://www.cnblogs.com/xiaoyaoju/archive/2013/05/21/3091171.html 安装条件: 硬件:一台拥有支持虚拟技术的64位双核处理器和2GB ...

随机推荐

  1. Codeforces Testing Round #16 C.Skier

    题意: 一个人在雪地上滑雪,每次可以向上下左右四个方向移动一个单位,如果这条路径没有被访问过,则需要5秒的时间,如果被访问过,则需要1秒(注意:判断的是两点之间的距离,不是单纯的点).给你他的行动轨迹 ...

  2. Codeforces Round #641 div2 B. Orac and Models (DP)

    题意:有一个长度为\(n\)的序列\(a\),求一个最长上升子序列,且这个子序列的元素在\(a\)中的位置满足\(i_{j+1}modi_{j}=0\),求这个子序列的最大长度. 题意:这题假如我们用 ...

  3. 树状数组 && 板子

    本文树状数组讲解转载于:https://www.cnblogs.com/xenny/p/9739600.html 本文新加内容为模板代码部分 1.什么是树状数组? 顾名思义,就是用数组来模拟树形结构呗 ...

  4. System.Windows.Forms.Help

    在开发过程中,基本都需要实现帮助功能,而一般帮助功能就是打开一个帮助文档,System.Windows.Forms提供了Help类用于打开帮助文档,挺方便的. Help类提供的方法如下:   Name ...

  5. cookie,session,token之间的联系与区别

    发展史 1.很久很久以前,Web 基本上就是文档的浏览而已, 既然是浏览,作为服务器, 不需要记录谁在某一段时间里都浏览了什么文档,每次请求都是一个新的HTTP协议, 就是请求加响应,  尤其是我不用 ...

  6. 蓝桥杯-摔手机问题【dp】

    非常详细的题解:戳这里 例题:poj-3783 Balls Balls Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 115 ...

  7. Linux 应用开发----socket编程笔记

    Linux socket编程 套接字定义描述 套接字的域 AF_INET ====>IPv4 AF_INET6 ====>IPv6 AF_UNIX ====>unix 域 AF_UP ...

  8. tensorflow-gpu+"Failed to create session"

    成因: 未给系统指定相应使用的GPU 解决: 层面1: 针对单个程序: CUDA_VISIBLE_DEVICES=0 python main.py import os; os.environ['CUD ...

  9. FTP 与 SSH 的安全性对比, 以及FTP,SSH,SFTP,SCP 的关系简单解析!

    FTP 与 SSH 的安全性对比? ftP: http://baike.baidu.com/subview/369/6149695.htm TCP/IP协议中,FTP标准命令TCP端口号为21,Por ...

  10. useful podcast

    useful podcast front end podcast https://shoptalkshow.com https://stackoverflow.blog/podcast/ SoundC ...