kibana 安装

kibana安装

更多安装方式请参考官网: https://www.elastic.co/guide/en/kibana/7.2/setup.html
尽量选择最新版本

Kibana 是一个开源分析和可视化平台,旨在与 Elasticsearch 配合使用。您可以使用 Kibana 搜索、查看 Elasticsearch 索引中存储的数据并与之交互。您可以轻松执行高级数据分析,并以各种图表、表格和地图的形式可视化数据。

Kibana 可以轻松理解大量数据。其基于浏览器的简单界面使您能够快速创建和共享动态仪表板,实时显示 Elasticsearch 查询的更改。

设置 Kibana 非常简单。您可以安装 Kibana 并在几分钟内开始探索您的 Elasticsearch 索引 - 无需代码,无需额外的基础设施。

rpm 安装

.1 下载安装包并安装

mkdir -p /home/admin/elk/kibana
cd /home/admin/elk/kibana
wget https://artifacts.elastic.co/downloads/kibana/kibana-7.2.0-x86_64.rpm
rpm -ivh kibana-7.2.0-x86_64.rpm  --nodeps

2.1 修改配置文件

vim /etc/kibana/kibana.yml
server.host: 192.168.40.128  #绑定本机ip地址
elasticsearch.hosts: ["http://192.168.40.128:9200"]   #指定es地址

3.1 启动kibana

systemctl start kibana
systemctl enable kibana

4.1 页面配置

服务启动后,访问 http://192.168.40.128:5601
他会提示检测到你的es没有任何数据,可以尝试他们的示例数据和仪表板,也可以使用自己的数据

点击使用他们的示例数据,初始页面是这样的

4.1.1 格式选择

4.1.1.1 Sample eCommerce orders

从左至右,共三种面板可以选择,最左边的Sample eCommerce orders

以上为安装的文档,对页面的详细操作教程请参考另一篇文档。https://www.cnblogs.com/liwenchao1995/p/17845888.html

kibana配置

常规 APM 设置

您无需配置任何设置即可使用 APM。默认情况下它是启用的。如果您想更改任何默认值,请将以下相关设置复制并粘贴到您的kibana.yml配置文件中。

xpack.apm.enabled
// 设置为false禁用 APM 插件 Kibana。默认为 true.
xpack.apm.ui.enabled
// 设置为false可从菜单中隐藏 APM 插件 Kibana。默认为 true.
xpack.apm.ui.transactionGroupBucketSize
// Kibana 的 APM 插件中显示的顶级事务组的数量。默认为100.
apm_oss.indexPattern
// 索引模式用于与机器学习和 Kuery Bar 集成。它必须匹配所有 apm 索引。默认为apm-*.
apm_oss.errorIndices
// 包含错误文档的索引的匹配器。默认为apm-*.
apm_oss.onboardingIndices
// 包含入职文档的索引的匹配器。默认为apm-*.
apm_oss.spanIndices
// 包含跨度文档的索引的匹配器。默认为apm-*.
apm_oss.transactionIndices
// 包含交易文档的索引的匹配器。默认为apm-*.

Kibana 中的代码设置

除非您将多个 Kibana 实例作为集群运行,否则无需更改任何设置即可默认使用Code 。如果您想更改任何默认值,请将以下相关设置复制并粘贴到您的kibana.yml配置文件中。

xpack.code.updateRepoFrequencyMs
// 存储库更新频率(以毫秒为单位)。默认为300000.
xpack.code.indexRepoFrequencyMs
// 回购索引频率(以毫秒为单位)。默认为86400000.
xpack.code.lsp.verbose
// 是否显示语言服务器的更详细日志。默认为false.
xpack.code.security.enableMavenImport
// 是否支持maven。默认为true.
xpack.code.security.enableGradleImport
// 是否支持gradle。默认为false.
xpack.code.security.installNodeDependency
// 是否开启节点依赖下载。默认为true.
xpack.code.security.gitHostWhitelist
// git 克隆地址的主机名白名单。默认为[ 'github.com', 'gitlab.com',  'bitbucket.org', 'gitbox.apache.org', 'eclipse.org',].
xpack.code.security.gitProtocolWhitelist
// git 克隆地址协议白名单。默认为[ 'https', 'git', 'ssh' ].
xpack.code.security.enableGitCertCheck
// 从 HTTPS URL 克隆时是否启用 HTTPS 证书检查。
xpack.code.disableIndexScheduler
// 是否禁用自动索引更新。默认为true.
xpack.code.maxWorkspace
// 每个语言服务器允许跨越的最大工作区数量。默认为5.
xpack.code.codeNodeUrl
// 代码节点的 URL。仅当多个 Kibana 实例设置为集群时才需要此配置。默认为``

Kibana 中的开发工具设置

您无需配置任何设置即可使用 Kibana 中的开发工具。它们默认启用。
Grok 调试器设置

xpack.grokdebugger.enabled
// 设置为true(默认)以启用Grok 调试器。

搜索分析器设置

xpack.searchprofiler.enabled
// 设置为true(默认)以启用搜索分析器。

Kibana 中的图表设置

您无需配置任何设置即可使用图形分析功能。

常规图表设置

xpack.graph.enabled
设置false为禁用图形分析功能。

Kibana 中的基础架构 UI 设置

您无需配置任何设置即可使用基础架构 UI。默认情况下它是启用的。

常规基础架构 UI 设置

xpack.infra.enabled
// 设置为false禁用日志和基础设施 UI 插件 Kibana。默认为true.
xpack.infra.sources.default.logAlias
// 用于匹配包含日志数据的索引的索引模式。默认为filebeat-*,kibana_sample_data_logs*.
xpack.infra.sources.default.metricAlias
// 用于匹配包含 Metricbeat 数据的索引的索引模式。默认为metricbeat-*.
xpack.infra.sources.default.fields.timestamp
// 用于对日志条目进行排序的时间戳。默认为@timestamp.
xpack.infra.sources.default.fields.message
// 用于在日志 UI 中显示消息的字段。默认为['message', '@message'].
xpack.infra.sources.default.fields.tiebreaker
// 用于打破具有相同时间戳的两个条目之间联系的字段。默认为_doc.
xpack.infra.sources.default.fields.host
// 用于识别主机的字段。默认为host.name.
xpack.infra.sources.default.fields.container
// 用于标识 Docker 容器的字段。默认为container.id.
xpack.infra.sources.default.fields.pod
// 用于识别 Kubernetes Pod 的字段。默认为kubernetes.pod.uid.

Kibana 中的 i18n 设置

您无需配置任何设置即可以英语运行 Kibana。

常规 i18n 设置

i18n.locale
// Kibana 目前支持以下语言环境:

英语 - en(默认)
中国人 -zh-CN
日本人 -ja-JP

Kibana 中的 UI 设置

您无需配置任何设置即可使用日志 UI。默认情况下它是启用的。

// 常规日志 UI 设置
xpack.infra.enabled
// 设置为false禁用日志和基础设施 UI 插件 Kibana。默认为true.
xpack.infra.sources.default.logAlias
// 用于匹配包含日志数据的索引的索引模式。默认为filebeat-*,kibana_sample_data_logs*.
xpack.infra.sources.default.metricAlias
// 用于匹配包含 Metricbeat 数据的索引的索引模式。默认为metricbeat-*.
xpack.infra.sources.default.fields.timestamp
// 用于对日志条目进行排序的时间戳。默认为@timestamp.
xpack.infra.sources.default.fields.message
// 用于在日志 UI 中显示消息的字段。默认为['message', '@message'].
xpack.infra.sources.default.fields.tiebreaker
// 用于打破具有相同时间戳的两个条目之间联系的字段。默认为_doc.
xpack.infra.sources.default.fields.host
// 用于识别主机的字段。默认为host.name.
xpack.infra.sources.default.fields.container
// 用于标识 Docker 容器的字段。默认为container.id.
xpack.infra.sources.default.fields.pod
// 用于识别 Kubernetes Pod 的字段。默认为kubernetes.pod.uid.

Kibana 中的监控设置

默认情况下,监控应用程序处于启用状态,但数据收集处于禁用状态。首次启动Kibana监控时,系统会提示您启用数据收集。cluster:manage如果您使用 X-Pack 安全性,则必须以具有启用数据收集权限的用户身份登录。内置superuser角色拥有此权限,内置elastic用户拥有此角色。

您可以通过配置文件中的设置来调整从 Kibana 收集监控数据并在 Kibana 中显示监控数据的方式 kibana.yml。还有一些xpack.monitoring.elasticsearch.*设置,支持与Kibana 配置设置相同的值。

要控制如何从 Elasticsearch 节点收集数据,您可以 在 中配置xpack.monitoring.collection 设置elasticsearch.yml。要控制如何从 Logstash 收集监控数据,您可以 在 中配置xpack.monitoring设置logstash.yml。

有关更多信息,请参阅 监控 Elastic Stack。

常规监控设置

monitoring.cluster_alerts.email_notifications.enabled
// 启用后,将观察者警报的电子邮件通知发送到指定的电子邮件地址。默认为true.
monitoring.cluster_alerts.email_notifications.email_address 标志云
// 启用后,指定您想要接收集群警报通知的电子邮件地址。
xpack.monitoring.enabled
// 设置为true(默认)以启用 Kibana 中的监控功能。xpack.monitoring.ui.enabled与该设置不同的是 ,当该设置为 时false,监控后端不会运行,Kibana 统计信息也不会发送到监控集群。
xpack.monitoring.elasticsearch.hosts
// 指定存储监控数据的 Elasticsearch 集群的位置。默认情况下,这与 相同elasticsearch.hosts。此设置使您能够使用单个 Kibana 实例来搜索和可视化生产集群中的数据,以及监控发送到专用监控集群的数据。
xpack.monitoring.elasticsearch.username
// 指定 Kibana 从监控集群检索数据时用于身份验证的用户 ID。如果未设置,Kibana 将使用该 elasticsearch.username设置的值。
xpack.monitoring.elasticsearch.password
// 指定Kibana从监控集群检索数据时用于身份验证的密码。如果未设置,Kibana 将使用该 elasticsearch.password设置的值。
xpack.xpack_main.telemetry.enabled
// 设置为true(默认)以将集群统计信息发送到 Elastic。报告您的集群统计信息有助于我们改善您的用户体验。设置为false禁用连接到 Kibana 实例的任何浏览器的统计报告。您还可以通过 Kibana 中的高级设置选择退出。
xpack.monitoring.elasticsearch.pingTimeout
// 指定等待 Elasticsearch 响应内部运行状况检查的时间(以毫秒为单位)。默认情况下,它与elasticsearch.pingTimeout设置匹配,默认值为30000。

监控集合设置
这些设置控制如何从 Kibana 收集数据。

xpack.monitoring.kibana.collection.enabled
// 设置为true(默认)以启用从 Kibana NodeJS 服务器收集数据,以便 Kibana 仪表板在监控中显示。
xpack.monitoring.kibana.collection.interval
// 指定在 Kibana NodeJS 服务器上为 Kibana 仪表板中显示的指标进行数据采样之间等待的毫秒数。默认为10000(10 秒)。

监控用户界面设置
这些设置调整 Kibana 监控页面显示监控数据的方式。然而,在大多数情况下,默认值效果最好。有关配置 Kibana 的更多信息,请参阅 设置 Kibana 服务器属性。

xpack.monitoring.elasticsearch.logFetchCount
// 指定要在监控 UI 中显示的日志条目数。默认为 10. 最大值为50。
xpack.monitoring.max_bucket_size
// 指定在执行术语聚合以检索索引和节点指标时要从总体术语列表中返回的术语存储桶的数量。有关该size参数的更多信息,请参阅 术语聚合。默认为10000.
xpack.monitoring.min_interval_seconds
// 指定图表中的时间段可以表示的最小秒数。默认为 10。如果您修改 xpack.monitoring.collection.intervalin elasticsearch.yml,请在此设置中使用相同的值。
xpack.monitoring.ui.enabled
// 设置为false隐藏 Kibana 中的监控 UI。监控后端继续作为代理运行,用于将 Kibana 统计信息发送到监控集群。默认为true.

监控 UI 容器设置
监控 UI 公开了我们为您收集的 Cgroup 统计信息,以便您对容器性能做出更好的决策,而不是根据整体机器性能进行猜测。如果您没有在容器中运行应用程序,则 Cgroup 统计信息没有用。

xpack.monitoring.ui.container.elasticsearch.enabled
// 对于在容器中运行的 Elasticsearch 集群,此设置会更改 节点列表以根据报告的 Cgroup 统计信息显示 CPU 利用率。它还将计算出的 Cgroup CPU 利用率添加到 “节点概览”页面,而不是整个操作系统的 CPU 利用率。默认为false.
xpack.monitoring.ui.container.logstash.enabled
// 对于在容器中运行的 Logstash 节点,此设置会更改 Logstash节点列表,以根据报告的 Cgroup 统计信息显示 CPU 利用率。它还将计算出的 Cgroup CPU 利用率添加到 Logstash 节点详细信息页面,而不是整个操作系统的 CPU 利用率。默认为false.

Kibana 中的报告设置

常规报告设置

xpack.reporting.enabled
// 设置false为禁用报告功能。
xpack.reporting.encryptionKey
// 设置为任何文本字符串。默认情况下,Kibana 启动时会生成一个随机密钥,这会导致重启后挂起的报告失败。配置此设置以在多次重新启动和 Kibana 的多个实例中保留相同的密钥。

Kibana 服务器设置
Reporting 在服务器进程中打开 Kibana Web 界面,以生成 Kibana 可视化的屏幕截图。在大多数情况下,默认设置即可工作,您无需配置 Reporting 即可与 Kibana 进行通信。但是,如果您的客户端连接必须通过反向代理才能访问 Kibana,则报告配置必须在设置中设置代理端口、协议和主机名xpack.reporting.kibanaServer.*。

如果反向代理将加密流量从最终用户客户端传输回 Kibana 服务器,则报告设置中的代理端口、协议和主机名对于报告浏览器将接收的加密必须有效。如果请求与服务器上的证书之间的主机信息不匹配,加密通信将会失败。

配置xpack.reporting.kibanaServer指向代理主机的设置要求 Kibana 服务器具有对代理的网络访问权限。

xpack.reporting.kibanaServer.port
// 如果与值不同,则为访问 Kibana 的端口server.port。
xpack.reporting.kibanaServer.protocol
// 用于访问 Kibana 的协议,通常http为 或https.
xpack.reporting.kibanaServer.hostname
// 用于访问 Kibana 的主机名(如果与server.name值不同)。

后台作业设置
报告在后台生成报告,并使用 Elasticsearch 中的文档协调作业。根据生成报告的频率和报告总数,您可能需要更改以下设置。

xpack.reporting.queue.indexInterval
// 存储报告作业的索引滚动到新索引的频率。有效值为year、month、week、day和hour。默认为week.
xpack.reporting.queue.pollEnabled
// 设置为true(默认)以使 Kibana 实例能够轮询索引以查找挂起的作业并声明它们执行。将其设置为false允许 Kibana 实例仅将新作业添加到报告队列、列出作业并通过 UI 提供已完成报告的下载。
// 在集群中运行多个 Kibana 实例以实现报告负载平衡需要xpack.reporting.encryptionKey和 的值相同(如果启用了安全性)xpack.security.encryptionKey。

xpack.reporting.queue.pollInterval
// 指定报告轮询器在轮询索引以查找任何挂起的报告作业之间等待的毫秒数。默认为3000(3 秒)。
xpack.reporting.queue.timeout
// 每个工人需要多长时间提交报告。如果您的计算机速度缓慢或负载较重,您可能需要增加此超时。以毫秒为单位指定。默认为120000(两分钟)。

捕捉设置
报告通过从 Kibana 捕获屏幕截图来进行。以下设置控制捕获过程。

xpack.reporting.capture.loadDelay
// 当可视化未事件时,这是截取屏幕截图之前的时间量。Kibana 附带的所有可视化都是事件化的,因此此设置不会产生太大影响。如果您看到空图像而不是可视化效果,请尝试增加此值。默认为3000(3 秒)。
xpack.reporting.capture.browser.type
// 指定用于捕获屏幕截图的浏览器。此设置的存在是为了向后兼容。唯一有效的选项是chromium.

铬设置

当xpack.reporting.capture.browser.type设置为chromium(默认)时,您还可以指定以下设置。

xpack.reporting.capture.browser.chromium.disableSandbox
// Elastic 建议您研究启用非特权用户命名空间的可行性。有关更多信息,请参阅 Chromium 沙箱。对于除使用 true 的 Debian、Red Hat Linux 和 CentOS 之外的所有操作系统,默认为 false
xpack.reporting.capture.browser.chromium.proxy.enabled
// 启用 Chromium 使用的代理。当设置为 时true,您还必须指定该 xpack.reporting.capture.browser.chromium.proxy.server设置。默认为false
xpack.reporting.capture.browser.chromium.proxy.server
// 代理服务器的 uri。不支持通过 uri 提供代理服务器的用户名和密码。
xpack.reporting.capture.browser.chromium.proxy.bypass
// 不应通过代理服务器而应使用直接连接的主机数组。有效条目的示例包括“elastic.co”、“*.elastic.co”、“.elastic.co”、“.elastic.co:5601”

CSV 设置

xpack.reporting.csv.maxSizeBytes
// 截断之前 CSV 文件的最大大小。此设置的存在是为了防止大量导出导致性能和存储问题。默认为10485760(10mB)

高级设置

xpack.reporting.index
// 报告使用 Elasticsearch 中的每周索引来存储报告作业和报告内容。如果索引尚不存在,则会自动创建该索引。.reporting-对于具有唯一设置的每个 Kibana 实例,将其配置为以 开头的唯一值kibana.index。默认为.reporting
xpack.reporting.roles.allow
// 指定除超级用户之外可以使用报告的角色。默认为[ "reporting_user" ]

安全设置

某些设置是敏感的,依靠文件系统权限来保护它们的值是不够的。对于此用例,Kibana 提供了一个密钥库以及kibana-keystore用于管理密钥库中的设置的工具。

此处的所有命令都应以运行 Kibana 的用户身份运行。

创建密钥库
要创建kibana.keystore,请使用以下create命令:

bin/kibana-keystore create

该文件kibana.keystore将在配置设置定义的目录中创建 path.data。

列出密钥库中的设置

使用以下命令可以获得密钥库中的设置列表list:
bin/kibana-keystore list

添加字符串设置

可以使用以下add命令添加敏感字符串设置,例如 Elasticsearch 的身份验证凭据:
bin/kibana-keystore add the.setting.name.to.set

添加到密钥库后,这些设置将在启动时自动应用于 Kibana 的此实例。例如,如果你这样做
bin/kibana-keystore add elasticsearch.username

系统将提示您提供 elasticsearch.username 的值。(您的输入将显示为星号。)

该工具将提示输入设置值。要通过 stdin 传递值,请使用以下--stdin标志:
cat /file/containing/setting/value | bin/kibana-keystore add the.setting.name.to.set --stdin

要从密钥库中删除设置,请使用以下remove命令:

bin/kibana-keystore remove the.setting.name.to.remove

Kibana 中的安全设置

您无需配置任何其他设置即可使用 Kibana 中的安全功能。它们默认启用。

常规安全设置

xpack.security.enabled
// 默认情况下,Kibana 会根据 License 自动检测是否启用安全功能以及是否启用 Elasticsearch 安全功能。

// 不要将其设置为false;它禁用登录表单、用户和角色管理屏幕以及使用Kibana 权限进行授权。要完全禁用安全功能,请参阅 Elasticsearch 安全设置。

xpack.security.audit.enabled
// 设置true为启用安全事件的审核日志记录。默认情况下,它设置为false。有关更多详细信息,请参阅审核日志记录。

用户界面安全设置
您可以在文件中配置以下设置kibana.yml:

xpack.security.cookieName
// 设置用于会话的 cookie 的名称。默认值为"sid"。
xpack.security.encryptionKey
// 32 个或更多字符的任意字符串,用于加密 cookie 中的凭据。重要的是不要将此密钥暴露给 Kibana 用户。默认情况下,会在内存中自动生成一个值。如果您使用该默认行为,则当 Kibana 重新启动时,所有会话都会失效。此外,如果所有 Kibana 实例的此设置不同,Kibana 的高可用性部署将会出现意外行为。
xpack.security.secureCookies
// 设置secure会话 cookie 的标志。默认值为false。它被设置为trueifserver.ssl.certificate和server.ssl.key被设置。true如果 SSL 是在 Kibana 外部配置的(例如,您通过负载均衡器或代理路由请求), 请设置此项。
xpack.security.sessionTimeout
// 设置会话持续时间(以毫秒为单位)。默认情况下,会话保持活动状态,直到浏览器关闭。当将此设置为显式超时时,关闭浏览器仍需要用户重新登录 Kibana。

Kibana 中的空间设置

xpack.spaces.enabled
// 设置为true(默认)以在 Kibana 中启用 Spaces。
xpack.spaces.maxSpaces
// 此 Kibana 实例可使用的最大空间量。Kibana 中的某些操作使用 Elasticsearch 中的单个值返回所有空格_search,因此必须将其设置为低于index.max_result_windowElasticsearch 中的值。默认为1000.
posted @ 2022-03-17 20:55  liwenchao1995  阅读(103)  评论(0编辑  收藏  举报