Linux下Kibana的安装、配置及开机自启动

本文涉及的产品
云防火墙,500元 1000GB
Elasticsearch Serverless通用抵扣包,测试体验金 200元
日志服务 SLS,月写入数据量 50GB 1个月
简介: Linux下安装配置Kibana项目基本环境:OS:CentOs7JDK:1.8Kibana:7.6.2

项目基本环境:
OS:CentOs7
JDK:1.8
Kibana:7.6.2

3.1 下载

注意选择对应版本下载,本项目使用的版本为7.6.2

下载路径:
官网: http://elastic.co/cn/downloads/kibana
非官方: https://elasticsearch.cn/download/

3.2 解压缩

mkdir /home/elk/kibana
cd /home/elk
tar -zxf  /home/kibana-7.6.2-linux-x86_64.tar.gz
mv kibana-7.6.2/ kibana/

3.3 修改配置文件

对应的配置文件为config目录下的kibana.yml。根据需求修改相应配置即可

vim /home/elk/kibana/config/kibana.yml

image.png

kibana.yml配置文件常用配置说明
server.port:
    默认值: 5601 Kibana 由后端服务器提供服务,该配置指定使用的端口号。 
server.host:
    默认值: "localhost" 指定后端服务器的主机地址。 
server.basePath:
    如果启用了代理,指定 Kibana 的路径,该配置项只影响 Kibana 生成的 URLs,转发请求到 Kibana 时代理会移除基础路径值,该配置项不能以斜杠 (/)结尾。 
server.maxPayloadBytes:
    默认值: 1048576 服务器请求的最大负载,单位字节。 
server.name:
    默认值: "您的主机名" Kibana 实例对外展示的名称。 
server.defaultRoute:
    默认值: "/app/kibana" Kibana 的默认路径,该配置项可改变 Kibana 的登录页面。 
elasticsearch.url:
    默认值: "http://localhost:9200" 用来处理所有查询的 Elasticsearch 实例的 URL 。 
elasticsearch.preserveHost:
    默认值: true 该设置项的值为 true 时,Kibana 使用 server.host 设定的主机名,该设置项的值为 false 时,Kibana 使用主机的主机名来连接 Kibana 实例。 
kibana.index:
    默认值: ".kibana" Kibana 使用 Elasticsearch 中的索引来存储保存的检索,可视化控件以及仪表板。如果没有索引,Kibana 会创建一个新的索引。 
kibana.defaultAppId:
    默认值: "discover" 默认加载的应用。 
tilemap.url:
    Kibana 用来在 tile 地图可视化组件中展示地图服务的 URL。默认时,Kibana 从外部的元数据服务读取 url,用户也可以覆盖该参数,使用自己的 tile 地图服务。例如:"https://tiles.elastic.co/v2/default/{z}/{x}/{y}.png?elastic_tile_service_tos=agree&my_app_name=kibana" 
tilemap.options.minZoom:
    默认值: 1 最小缩放级别。 
tilemap.options.maxZoom:
    默认值: 10 最大缩放级别。 
tilemap.options.attribution:
    默认值: "© [Elastic Tile Service](https://www.elastic.co/elastic-tile-service)" 地图属性字符串。 
tilemap.options.subdomains:
    服务使用的二级域名列表,用 {s} 指定二级域名的 URL 地址。 
elasticsearch.username: 和 elasticsearch.password:
    Elasticsearch 设置了基本的权限认证,该配置项提供了用户名和密码,用于 Kibana 启动时维护索引。Kibana 用户仍需要 Elasticsearch 由 Kibana 服务端代理的认证。 
server.ssl.enabled
    默认值: "false" 对到浏览器端的请求启用 SSL,设为 true 时, server.ssl.certificate 和 server.ssl.key 也要设置。 
server.ssl.certificate: 和 server.ssl.key:
    PEM 格式 SSL 证书和 SSL 密钥文件的路径。 
server.ssl.keyPassphrase
    解密私钥的口令,该设置项可选,因为密钥可能没有加密。 
server.ssl.certificateAuthorities
    可信任 PEM 编码的证书文件路径列表。 
server.ssl.supportedProtocols
    默认值: TLSv1、TLSv1.1、TLSv1.2 版本支持的协议,有效的协议类型: TLSv1 、 TLSv1.1 、 TLSv1.2 。 
server.ssl.cipherSuites
    默认值: ECDHE-RSA-AES128-GCM-SHA256, ECDHE-ECDSA-AES128-GCM-SHA256, ECDHE-RSA-AES256-GCM-SHA384, ECDHE-ECDSA-AES256-GCM-SHA384, DHE-RSA-AES128-GCM-SHA256, ECDHE-RSA-AES128-SHA256, DHE-RSA-AES128-SHA256, ECDHE-RSA-AES256-SHA384, DHE-RSA-AES256-SHA384, ECDHE-RSA-AES256-SHA256, DHE-RSA-AES256-SHA256, HIGH,!aNULL, !eNULL, !EXPORT, !DES, !RC4, !MD5, !PSK, !SRP, !CAMELLIA. 具体格式和有效参数可通过[OpenSSL cipher list format documentation](https://www.openssl.org/docs/man1.0.2/apps/ciphers.html#CIPHER-LIST-FORMAT) 获得。 
elasticsearch.ssl.certificate: 和 elasticsearch.ssl.key:
    可选配置项,提供 PEM格式 SSL 证书和密钥文件的路径。这些文件确保 Elasticsearch 后端使用同样的密钥文件。 
elasticsearch.ssl.keyPassphrase
    解密私钥的口令,该设置项可选,因为密钥可能没有加密。 
elasticsearch.ssl.certificateAuthorities:
    指定用于 Elasticsearch 实例的 PEM 证书文件路径。 
elasticsearch.ssl.verificationMode:
    默认值: full 控制证书的认证,可用的值有 none 、 certificate 、 full 。 full 执行主机名验证,certificate 不执行主机名验证。 
elasticsearch.pingTimeout:
    默认值: elasticsearch.requestTimeout setting 的值,等待 Elasticsearch 的响应时间。 
elasticsearch.requestTimeout:
    默认值: 30000 等待后端或 Elasticsearch 的响应时间,单位微秒,该值必须为正整数。 
elasticsearch.requestHeadersWhitelist:
    默认值: [ 'authorization' ] Kibana 客户端发送到 Elasticsearch 头体,发送 no 头体,设置该值为[]。 
elasticsearch.customHeaders:
    默认值: {} 发往 Elasticsearch的头体和值, 不管 elasticsearch.requestHeadersWhitelist 如何配置,任何自定义的头体不会被客户端头体覆盖。 
elasticsearch.shardTimeout:
    默认值: 0 Elasticsearch 等待分片响应时间,单位微秒,0即禁用。 
elasticsearch.startupTimeout:
    默认值: 5000 Kibana 启动时等待 Elasticsearch 的时间,单位微秒。 
pid.file:
    指定 Kibana 的进程 ID 文件的路径。 
logging.dest:
    默认值: stdout 指定 Kibana 日志输出的文件。 
logging.silent:
    默认值: false 该值设为 true 时,禁止所有日志输出。 
logging.quiet:
    默认值: false 该值设为 true 时,禁止除错误信息除外的所有日志输出。 
logging.verbose
    默认值: false 该值设为 true 时,记下所有事件包括系统使用信息和所有请求的日志。 
ops.interval
    默认值: 5000 设置系统和进程取样间隔,单位微妙,最小值100。 
status.allowAnonymous
    默认值: false 如果启用了权限,该项设置为 true 即允许所有非授权用户访问 Kibana 服务端 API 和状态页面。 
cpu.cgroup.path.override
    如果挂载点跟 /proc/self/cgroup 不一致,覆盖 cgroup cpu 路径。 
cpuacct.cgroup.path.override
    如果挂载点跟 /proc/self/cgroup 不一致,覆盖 cgroup cpuacct 路径。 
console.enabled
    默认值: true 设为 false 来禁用控制台,切换该值后服务端下次启动时会重新生成资源文件,因此会导致页面服务有点延迟。 
elasticsearch.tribe.url:
    Elasticsearch tribe 实例的 URL,用于所有查询。 
elasticsearch.tribe.username: 和 elasticsearch.tribe.password:
    Elasticsearch 设置了基本的权限认证,该配置项提供了用户名和密码,用于 Kibana 启动时维护索引。Kibana 用户仍需要 Elasticsearch 由 Kibana 服务端代理的认证。 
elasticsearch.tribe.ssl.certificate: 和 elasticsearch.tribe.ssl.key:
    可选配置项,提供 PEM 格式 SSL 证书和密钥文件的路径。这些文件确保 Elasticsearch 后端使用同样的密钥文件。 
elasticsearch.tribe.ssl.keyPassphrase
    解密私钥的口令,该设置项可选,因为密钥可能没有加密。 
elasticsearch.tribe.ssl.certificateAuthorities:
    指定用于 Elasticsearch tribe 实例的 PEM 证书文件路径。 
elasticsearch.tribe.ssl.verificationMode:
    默认值: full 控制证书的认证,可用的值有 none 、 certificate 、 full 。 full 执行主机名验证, certificate 不执行主机名验证。 
elasticsearch.tribe.pingTimeout:
    默认值: elasticsearch.tribe.requestTimeout setting 的值,等待 Elasticsearch 的响应时间。 
elasticsearch.tribe.requestTimeout:
    Default: 30000 等待后端或 Elasticsearch 的响应时间,单位微秒,该值必须为正整数。 
elasticsearch.tribe.requestHeadersWhitelist:
    默认值: [ 'authorization' ] Kibana 发往 Elasticsearch 的客户端头体,发送 no 头体,设置该值为[]。 
elasticsearch.tribe.customHeaders:
    默认值: {} 发往 Elasticsearch的头体和值,不管 elasticsearch.tribe.requestHeadersWhitelist 如何配置,任何自定义的头体不会被客户端头体覆盖。 

3.4 创建启动用户

Kibana与 ElasticSearch一样,不推荐使用root用户启动,所以我们可以创建一个专门的启动账户

useradd kibana
passwd kibana

授权

chown -R kibana:kibana /home/elk/kibana

由于我们前面已经创建了一个ES的专用账户,后续我们统一使用这个帐户启动ES和Kibana

  1. Kibana可以使用root来运行,只是必须明确指明--allow-root来运行,这是kibana的安全保护机制,所以我们尽可能的不要使用root来启动kibana
  2. 使用RPM方式安装kibana的时候,就默认给我们创建了名为kibana的用户

3.5 安装Kibana服务

3.5.1 创建文件

cd /etc/init.d
vim kibana

文件内容如下:

#!/bin/bash
#chkconfig: 345 63 37
#description: kibana
#processname:kibana-7.6.2

export KIBANA_HOME=/home/elk/kibana

case $1 in
        start)
                su kibana<<!  
                cd $KIBANA_HOME
                ./bin/kibana -p pid &
                exit
!
                echo "kibana is started"
                ;;
        stop)
                pid=`cat $KIBANA_HOME/pid`
                kill -9 $pid
                echo "kibana is stopped"
                ;;
        restart)
                pid=`cat $KIBANA_HOME/pid`
                kill -9 $pid
                echo "kibana is stopped"
                sleep 5
                su kibana<<!
                cd $KIBANA_HOME
                ./bin/kibana -p pid &
                exit
!
                echo "kibana is started"
        ;;
    *)
        echo "start|stop|restart"
        ;;
esac
exit 0

3.5.2 修改文件权限;

chmod 777 kibana 

3.5.3 添加和删除服务并设置启动方式

chkconfig --add kibana     #【添加系统服务】
chkconfig --del kibana     #【删除系统服务】

3.5.4 关闭和启动服务;

service kibana  start     #【启动】
service kibana  stop     # 【停止】
service kibana  restart         #【重启】

3.5.5 设置服务是否开机启动;

chkconfig kibana  on    #【开启】
chkconfig kibana  off      # 【关闭】

#4 CentOS关闭防火墙
如果出现访问不到的状况,请检查防火墙是否关闭

firewall-cmd --state  #检查防火墙状态
systemctl stop firewalld.service   #关闭防火墙
systemctl disable firewalld.service    #永久禁用防火墙

写在最后

由于时间仓促,自己也是刚刚接触全文检索,尚处摸索阶段,如有错误,请指正,我会及时修改。

目录
相关文章
|
1月前
|
Ubuntu Linux
任何Ubuntu用户都应安装的四大Linux应用程序
当然,这款程序不需要太多介绍。我们面对的是网上最庞大最完整的多媒体中心,由于丰富的插件,我们能够高度细化地定制其每一项功能。这是我们的Linux发行版不可或缺的必备软件。 我们可以通过运行以下命令来轻松安装Kodi:sudo apt install kodi。
|
1月前
|
Ubuntu 物联网 Linux
从零安装一个Linux操作系统几种方法,以Ubuntu18.04为例
一切就绪后,我们就可以安装操作系统了。当系统通过优盘引导起来之后,我们就可以看到跟虚拟机中一样的安装向导了。之后,大家按照虚拟机中的顺序安装即可。 好了,今天主要介绍了Ubuntu Server版操作系统的安装过程,关于如何使用该操作系统,及操作系统更深层的原理,还请关注本号及相关圈子。
|
1月前
|
弹性计算 安全 Linux
阿里云服务器ECS安装宝塔Linux面板、安装网站(新手图文教程)
本教程详解如何在阿里云服务器上安装宝塔Linux面板,涵盖ECS服务器手动安装步骤,包括系统准备、远程连接、安装命令执行、端口开放及LNMP环境部署,手把手引导用户快速搭建网站环境。
|
1月前
|
安全 Ubuntu Linux
如何安装Linux操作系统?
此时,您可以选择重新启动计算机,然后从硬盘上的Linux系统启动。以上是一个大致的安装过程。请注意,不同的Linux发行版可能会在细节上有所差异,因此在进行安装之前,请确保您阅读并理解了相应发行版的安装指南或文档。
|
1月前
|
Ubuntu Linux 数据安全/隐私保护
Win10安装Linux子系统教程!如何在Win10系统中安装Ubuntu!
登录系统后,输入cd /返回上一级,然后再输入“ls”查看一下系统文件目录,看看对不对!
|
1月前
|
Ubuntu Linux Shell
手把手教你安装适用于Linux的Windows子系统——Ubuntu
重启完成,你看看重新打开Ubuntu是不是发生了变化,等待几分钟,系统配置完成,根据提示设置用户名和密码即可
|
1月前
|
存储 Ubuntu Linux
安卓手机免root安装各种Linux系统:Ubuntu, Centos,Kali等
此外还可以安装Slackware、Archstrike等系统,还可以通过github查找方法安装更多有趣的东西。 昨日小编就是通过Termux安装的Kali Linux工具包。
|
NoSQL Java Linux
linux 安装 neo4j简介
Neo4j是高性能NoSQL图形数据库,利用图结构存储数据。推荐使用JDK 11配合Neo4j 3.x版本。下载3.5.9版,通过`curl`命令在Linux上获取tar.gz文件,然后解压。配置`neo4j.conf`,调整内存设置,开启远程访问。执行`./bin/neo4j start`启动,通过`http://服务器IP:7474`访问,默认凭据是username: neo4j, password: neo4j,登录后应更改密码。
1198 1
|
存储 缓存 Ubuntu
【嵌入式开发】 Linux Kernel 下载 配置 编译 安装 及 驱动简介(二)
【嵌入式开发】 Linux Kernel 下载 配置 编译 安装 及 驱动简介(二)
314 0
|
Ubuntu 安全 Unix
【嵌入式开发】 Linux Kernel 下载 配置 编译 安装 及 驱动简介(一)
【嵌入式开发】 Linux Kernel 下载 配置 编译 安装 及 驱动简介(一)
385 0