页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。
评论: 校验 - 内容

如何部署 Kibana 主要取决于您的使用情况。如果您是唯一的用户,则可以在本地计算机上运行 Kibana,并将其配置为指向要与之交互的任何 Elasticsearch 实例。相反,如果您有大量的重度 Kibana 用户,您可能需要在多个连接到同一 Elasticsearch 实例的 Kibana 实例上进行负载均衡。

虽然 Kibana 不是资源密集型程序,但是我们仍然建议从您的 Elasticsearch data(数据)或 master(主)节点独立运行 Kibana要在 Elasticsearch 集群中的节点上分发 Kibana 流量,您可以在同一台计算机上运行 Kibana Elasticsearch 客户机节点。有关更多信息,请参阅 跨多个Elasticsearch 节点进行负载平衡

使用 Kibana 与 X-Pack

您可以使用 X-Pack Security 来控制用户可以通过 Kibana 访问的 Elasticsearch data(数据)。

当您安装 X-Pack 时后,Kibana 用户必须登录。他们需要具有 kibana_user 角色来访问他们将在 Kibana 中使用的索引。

如果用户加载了一个 Kibana 仪表板,并且它访问的索引中有未被授权查看的数据,那么他们会收到一条错误,指示该索引不存在。X-Pack Security 目前不提供控制哪些用户可以加载哪些仪表板的方法。

有关设置 Kibana 用户以及如何配置 Kibana 以使用 X-Pack 的信息,请参阅 https://www.elastic.co/guide/en/x-pack/5.2/kibana.html

启用 SSL

Kibana 支持客户端请求和 Kibana 服务器发送到 Elasticsearch 的请求的 SSL 加密。

要加密浏览器和 Kibana 服务器之间的通信,请在 kibana.yml配置 ssl_key_filessl_cert_file 属性 : 

代码块
languagebash
themeEclipse
# SSL for outgoing requests from the Kibana Server (PEM formatted)
server.ssl.key: /path/to/your/server.key
server.ssl.cert: /path/to/your/server.crt

如果您使用的是 X-Pack Security 或是为 Elasticsearch 提供的 HTTPS 端点的代理,则可以将 Kibana 配置为通过 HTTPS 访问 Elasticsearch,以便对 Kibana 服务器和 Elasticsearch 之间的通信进行加密。

为此,当您在 kibana.yml 文件中配置 Elasticsearch URL 时需要指定 HTTPS 协议 : 

代码块
languagebash
themeEclipse
elasticsearch: "https://<your_elasticsearch_host>.com:9200"

如果您针对 Elasticsearch 使用了一个自签名的证书,在 kibana.yml 文件中指定 ca 属性来指定 PEM 文件的位置。设置此 ca 属性可让您保留此 verify_ssl 选项。

代码块
languagebash
themeEclipse
# If you need to provide a CA certificate for your Elasticsearch instance, put
# the path of the pem file here.
ca: /path/to/your/ca/cacert.pem

跨多个 Elasticsearch 节点的负载均衡

如果您的 Elasticsearch 集群有多个节点,则跨节点分发 Kibana 请求的最简单方法是在与 Kibana 相同的服务器上只运行 Elasticsearch Coordinating 节点。唯一的 Elasticsearch 节点。只有 Elasticsearch Coordinating 节点本质上是作为集群一部分的智能负载均衡器。它们处理传入的 HTTP 请求,根据需要将操作重定向到集群中的其他节点,并收集并返回结果。有关更多信息,请参阅 Elasticsearch 指南中的 Node

为了使用本地客户机节点来负载平衡 Kibana 请求 : 

  1. 在与 Kibana 相同的计算机上安装 Elasticsearch
  2. 将节点配置为仅 Coordinating 节点。在 elasticsearch.yml 文件中,设置 node.datanode.master 和 node.ingest 为 false

    代码块
    languagebash
    themeEclipse
    # 3. You want this node to be neither master nor data node nor ingest node, but
    #    to act as a "search load balancer" (fetching data from nodes,
    #    aggregating results, etc.)
    #
    node.master: false
    node.data: false
    node.ingest: false
  3. 配置客户端节点加入集群。在 elasticsearch.yml 文件中,设置 cluster.name 为集群名称 : 

    代码块
    languagebash
    themeEclipse
    cluster.name: "my_cluster"
  4. elasticsearch.yml 文件的 network.hosttransport.host 下方检查 transportHTTP 主机配置。

    代码块
    languagebash
    themeEclipse
    network.host: localhost
    http.port: 9200
    
    # by default transport.host refers to network.host
    transport.host: <external ip>
    transport.tcp.port: 9300 - 9400
  5. 确保 Kibana 配置为指向本地客户机节点。在 kibana.yml 文件中,将 elasticsearch.url 设置为 localhost:9200

    代码块
    languagebash
    themeEclipse
    # The Elasticsearch instance to use for all your queries.
    elasticsearch.url: "http://localhost:9200"