三、ElasticSearch可视化工具Kibana安装

    技术2024-05-13  122

    ELK是包含但不限于Elasticsearch(简称es)、Logstash、Kibana 三个开源软件的组成的一个整体。这三个软件合成ELK。是用于数据抽取(Logstash)、搜索分析(Elasticsearch)、数据展现(Kibana)的一整套解决方案,所以也称作ELK stack。

     

    “ELK”是三个开源项目的首字母缩写,这三个项目分别是:Elasticsearch、Logstash 和 Kibana。

    Elasticsearch 是一个搜索和分析引擎。Logstash 是服务器端数据处理管道,能够同时从多个来源采集数据,转换数据,然后将数据发送到诸如 Elasticsearch 等“存储库”中。Kibana 则可以让用户在 Elasticsearch 中使用图形和图表对数据进行可视化。

     

    下载:https://www.elastic.co/cn/downloads/past-releases#kibana

    注意:需要下载与ElasticSearch相同版本的Kibana,由于我的elasticsearch版本为7.4.2,所以选择7.4.2版本的kibana进行下载 无wget命令时请使用yum安装wget:yum install wget -y eg:wget https://artifacts.elastic.co/downloads/kibana/kibana-7.4.2-linux-x86_64.tar.gz

    解压:

    tar -zxvf kibana-7.4.2-linux-x86_64.tar.gz

    kibana目录结构:

    [es@localhost kibana-7.4.2-linux-x86_64]$ ll 总用量 1420 drwxrwxr-x. 2 es es 64 6月 22 20:54 bin #可执行二进制文件 drwxrwxr-x. 5 es es 43 6月 22 20:54 built_assets drwxrwxr-x. 2 es es 24 6月 22 20:55 config #配置文件 drwxrwxr-x. 3 es es 46 6月 22 21:06 data -rw-rw-r--. 1 es es 13675 10月 29 2019 LICENSE.txt drwxrwxr-x. 6 es es 108 6月 22 20:54 node drwxrwxr-x. 1238 es es 36864 6月 22 20:54 node_modules -rw-rw-r--. 1 es es 1367537 10月 29 2019 NOTICE.txt drwxrwxr-x. 3 es es 55 6月 22 20:54 optimize -rw-rw-r--. 1 es es 738 10月 29 2019 package.json drwxrwxr-x. 2 es es 6 10月 29 2019 plugins -rw-rw-r--. 1 es es 4048 10月 29 2019 README.txt drwxrwxr-x. 11 es es 146 6月 22 20:54 src drwxrwxr-x. 2 es es 277 6月 22 20:54 webpackShims drwxrwxr-x. 5 es es 129 6月 22 20:54 x-pack

     

    配置/config/kibana.yml:

    # Kibana is served by a back end server. This setting specifies the port to use. #server.port: 5601 #默认暴露kibana端口号 # Specifies the address to which the Kibana server will bind. IP addresses and host names are both valid values. # The default is 'localhost', which usually means remote machines will not be able to connect. # To allow connections from remote users, set this parameter to a non-loopback address. server.host: 192.168.21.131 #设置kibana对外远程访问IP # Enables you to specify a path to mount Kibana at if you are running behind a proxy. # Use the `server.rewriteBasePath` setting to tell Kibana if it should remove the basePath # from requests it receives, and to prevent a deprecation warning at startup. # This setting cannot end in a slash. #server.basePath: "" # Specifies whether Kibana should rewrite requests that are prefixed with # `server.basePath` or require that they are rewritten by your reverse proxy. # This setting was effectively always `false` before Kibana 6.3 and will # default to `true` starting in Kibana 7.0. #server.rewriteBasePath: false # The maximum payload size in bytes for incoming server requests. #server.maxPayloadBytes: 1048576 # The Kibana server's name. This is used for display purposes. #server.name: "your-hostname" # The URLs of the Elasticsearch instances to use for all your queries. elasticsearch.hosts: ["http://192.168.21.131:9200"] # When this setting's value is true Kibana uses the hostname specified in the server.host # setting. When the value of this setting is false, Kibana uses the hostname of the host # that connects to this Kibana instance. #elasticsearch.preserveHost: true # Kibana uses an index in Elasticsearch to store saved searches, visualizations and # dashboards. Kibana creates a new index if the index doesn't already exist. #kibana.index: ".kibana" # The default application to load. #kibana.defaultAppId: "home" # If your Elasticsearch is protected with basic authentication, these settings provide # the username and password that the Kibana server uses to perform maintenance on the Kibana # index at startup. Your Kibana users still need to authenticate with Elasticsearch, which # is proxied through the Kibana server. #elasticsearch.username: "kibana" #elasticsearch.password: "pass" # Enables SSL and paths to the PEM-format SSL certificate and SSL key files, respectively. # These settings enable SSL for outgoing requests from the Kibana server to the browser. #server.ssl.enabled: false #server.ssl.certificate: /path/to/your/server.crt #server.ssl.key: /path/to/your/server.key # Optional settings that provide the paths to the PEM-format SSL certificate and key files. # These files validate that your Elasticsearch backend uses the same key files. #elasticsearch.ssl.certificate: /path/to/your/client.crt #elasticsearch.ssl.key: /path/to/your/client.key # Optional setting that enables you to specify a path to the PEM file for the certificate # authority for your Elasticsearch instance. #elasticsearch.ssl.certificateAuthorities: [ "/path/to/your/CA.pem" ] # To disregard the validity of SSL certificates, change this setting's value to 'none'. #elasticsearch.ssl.verificationMode: full # Time in milliseconds to wait for Elasticsearch to respond to pings. Defaults to the value of # the elasticsearch.requestTimeout setting. #elasticsearch.pingTimeout: 1500 # Time in milliseconds to wait for responses from the back end or Elasticsearch. This value # must be a positive integer. #elasticsearch.requestTimeout: 30000 # List of Kibana client-side headers to send to Elasticsearch. To send *no* client-side # headers, set this value to [] (an empty list). #elasticsearch.requestHeadersWhitelist: [ authorization ] # Header names and values that are sent to Elasticsearch. Any custom headers cannot be overwritten # by client-side headers, regardless of the elasticsearch.requestHeadersWhitelist configuration. #elasticsearch.customHeaders: {} # Time in milliseconds for Elasticsearch to wait for responses from shards. Set to 0 to disable. #elasticsearch.shardTimeout: 30000 # Time in milliseconds to wait for Elasticsearch at Kibana startup before retrying. #elasticsearch.startupTimeout: 5000 # Logs queries sent to Elasticsearch. Requires logging.verbose set to true. #elasticsearch.logQueries: false # Specifies the path where Kibana creates the process ID file. #pid.file: /var/run/kibana.pid # Enables you specify a file where Kibana stores log output. #logging.dest: stdout # Set the value of this setting to true to suppress all logging output. #logging.silent: false # Set the value of this setting to true to suppress all logging output other than error messages. #logging.quiet: false # Set the value of this setting to true to log all events, including system usage information # and all requests. #logging.verbose: false # Set the interval in milliseconds to sample system and process performance # metrics. Minimum is 100ms. Defaults to 5000. #ops.interval: 5000 # Specifies locale to be used for all localizable strings, dates and number formats. # Supported languages are the following: English - en , by default , Chinese - zh-CN . i18n.locale: "zh-CN"

    server.host: IP #对外暴露kibana服务地址,以便可远程访问kibana elasticsearch.hosts: ElasticsearchIP:9200 #配置elasticsearch服务地址 i18n.locale: "zh-CN" #i18n国际化汉化图形化界面

    启动

    cd kibana-7.4.2-linux-x86_64/bin/ #进入可执行目录 ./kibana #启动kibana

    访问kibana:

    路径:http://192.168.21.131:5601【或http://192.168.21.131:5601/app/kibana/】 总览:如下图 Dev Tools界面:如下图 监控集群界面:如下图

    Processed: 0.012, SQL: 9