跳到主要内容

Kibana

提示

无明确需求时,通常不需要部署 Kibana。

Kibana 简介

Kibana 是一个开源的数据可视化和分析平台,专为 Elasticsearch 设计

它提供了一个直观的 Web 界面,让用户能够以交互式和可视化的方式查询存储在 Elasticsearch 中的数据

同时,结合 Metricbeat 可以很好的监控当前 Elasticsearch 集群中索引的性能情况

Kibana 部署

  1. 下载 kibana 安装包

    wget https://pdpublic.mingdao.com/private-deployment/offline/common/kibana-8.5.3-linux-x86_64.tar.gz
  2. 解压并移动至安装目录

    tar xf kibana-8.5.3-linux-x86_64.tar.gz
    mv kibana-8.5.3 /usr/local/kibana
  3. 修改 kibana 的配置文件

    cat > /usr/local/kibana/config/kibana.yml << EOF
    server.port: 5601
    server.host: "0.0.0.0"
    server.maxPayloadBytes: 10485760
    elasticsearch.hosts: ["http://192.168.10.10:9200"]
    elasticsearch.username: "kibana_system"
    elasticsearch.password: "123456"
    i18n.locale: "zh-CN"
    monitoring.ui.ccs.enabled: false
    server.publicBaseUrl: "https://hap.domain.com:443/privatedeploy/mdy/monitor/kibana"
    server.basePath: "/privatedeploy/mdy/monitor/kibana"
    EOF
    • server.publicBaseUrlserver.basePath 是结合 nginx 反向代理使用,如果不需要配置代理,注释掉这两行,在部署完成后通过 本机IP:5601 地址访问即可
  4. 配置 elasticsearch 中 kibana_system 用户的 密码

    # 任意一台 Elasticsearch 节点上操作即可

    /usr/local/elasticsearch/bin/elasticsearch-reset-password -u kibana_system -i

    # 密码 123456 输入后终端不会显示,正常自定义密码黏贴或敲入即可
  5. 配置 kibana 启停脚本

    cat > /usr/local/kibana/start_kibana.sh << EOF
    nohup /usr/local/kibana/bin/kibana --allow-root &
    EOF

    cat > /usr/local/kibana/stop_kibana.sh << EOF
    kill \$(pgrep -f '/usr/local/kibana/bin')
    EOF

    chmod +x /usr/local/kibana/start_kibana.sh
    chmod +x /usr/local/kibana/stop_kibana.sh
  6. 启动 kibana

    cd /usr/local/kibana/ && bash start_kibana.sh
  7. 配置 nginx 反向代理,代理配置文件参考

    location /privatedeploy/mdy/monitor/kibana/ {
    proxy_pass http://192.168.10.10:5601;
    proxy_redirect off;
    proxy_buffering off;
    proxy_http_version 1.1;
    proxy_set_header Connection "Keep-Alive";
    proxy_set_header Proxy-Connection "Keep-Alive";
    rewrite ^/privatedeploy/mdy/monitor/kibana/(.*)$ /$1 break;
    }
  8. 代理配置好后,通过 https://hap.domain.com:443/privatedeploy/mdy/monitor/kibana 地址访问即可

    • 账号/密码为 elasticsearch 的认证,默认初始用户 elastic,密码以实际配置的为准

Metricbeat 部署

每个 Elasticsearch 节点都需要部署

  1. 下载 metricbeat 安装包

    wget https://pdpublic.mingdao.com/private-deployment/offline/common/metricbeat-8.5.3-linux-x86_64.tar.gz
  2. 解压并移动至安装目录

    tar xf metricbeat-8.5.3-linux-x86_64.tar.gz
    mv metricbeat-8.5.3 /usr/local/metricbeat
  3. 进入 metricbeat 安装目录

    cd /usr/local/metricbeat
  4. 配置 metricbeat.yml 文件

    cat > metricbeat.yml <<EOF
    metricbeat.config.modules:
    path: ${path.config}/modules.d/*.yml
    reload.enabled: false

    setup.template.settings:
    index.number_of_shards: 1
    index.codec: best_compression

    setup.kibana:
    host: "192.168.10.10:5601"
    username: "elastic"
    password: "123456"

    output.elasticsearch:
    hosts: ["192.168.10.10:9200"]
    username: "elastic"
    password: "123456"

    processors:
    - add_host_metadata: ~
    - add_cloud_metadata: ~
    - add_docker_metadata: ~
    - add_kubernetes_metadata: ~
    EOF
  5. 管理监控模块

    ./metricbeat modules enable elasticsearch-xpack
    ./metricbeat modules disable system
  6. 配置 elasticsearch-xpack 模块文件

    cat > ./modules.d/elasticsearch-xpack.yml <<EOF
    - module: elasticsearch
    xpack.enabled: true
    period: 10s
    hosts: ["http://192.168.10.10:9200"]
    username: "elastic"
    password: "123456"
    EOF
  7. 初始化仪表盘

    ./metricbeat setup -e
    • 正常最后会输出 loaded dashboards,遇到 error 根据错误信息处理后重新初始化
  8. 配置启停脚本

    cat > /usr/local/kibana/start_metricbeat.sh << EOF
    nohup /usr/local/metricbeat/metricbeat -e &
    EOF

    cat > /usr/local/kibana/stop_metricbeat.sh << EOF
    kill \$(pgrep -f '/usr/local/metricbeat/metricbeat')
    EOF

    chmod +x /usr/local/metricbeat/start_metricbeat.sh
    chmod +x /usr/local/metricbeat/stop_metricbeat.sh
  9. 启动 metricbeat

    bash start_metricbeat.sh

页面使用指南

【堆栈检测】中可以查看集群监控信息

在【开发工具】中可以根据执行 ES 查询等相关语句