作者:来自 Elastic Lorenzo Soligo
使用 Elastic Observability 监控 Proxmox VE 部署、虚拟机和 Linux 容器。
在本博客文章中,你将学习如何利用 Elastic Observability 来监控 Proxmox VE 及其上运行的软件,包括 Linux 容器(LXC)和虚拟机(VM)。
为什么要在 Proxmox 上使用 Elastic Observability?
在 Elastic,我们热衷于高效地管理和监控基础设施与应用程序。我们中的许多人喜欢在家中实验室玩技术,常常使用 Proxmox VE —— 一个强大的开源虚拟化平台,可以轻松运行虚拟机和 Linux 容器(LXC)。虽然 Proxmox 本身提供了强大的虚拟资源管理工具,但要深入了解 LXC、VM 和主机的性能与健康状况,就需要一个全面的监控解决方案。本文将引导你如何结合 Elastic Observability 和 Elastic Agent 来高效监控 Proxmox VE 部署,通过 Kibana 告警实现性能最优化和问题的主动发现与解决。
家庭实验室的搭建
我们的家庭实验室围绕一台 Intel N100 迷你电脑搭建,它作为 Proxmox VE 的主机。这套系统简洁且精炼,足以展示一些有趣的功能。在这台迷你电脑上,我们运行了多个用于各种服务的 Linux 容器(LXC),以及一台专门为 Home Assistant 准备的虚拟机。
Elastic Agent 的安装与配置
在开始之前,值得注意的是安装和配置 Elastic Agent 有多种方式。为简单起见,我们展示的是只在主机上运行一个 Elastic Agent 实例的方案。该 Agent 上报数据到 Elastic Cloud Observability 部署,并通过 Fleet 进行管理,使得后续的升级和重新配置变得非常容易。
深入了解主机
Kibana 提供了多种视图界面,使你可以快速了解系统的健康状况。
第一步,让我们查看 Kibana 中的 Infrastructure > Hosts 页面:
这里我们可以看到有关 Proxmox VE 主机(即迷你电脑)的各种信息。展示了其上运行的主要进程,包括运行在 LXC 中的进程,比如 pia-daemon。我们还可以看到一个 kvm 进程,它专门用于运行 Home Assistant 虚拟机,以及一个 Proxmox 的 pve-firewall 进程。
接下来让我们查看 Universal Profiling > Flamegraph。这张火焰图显示了主机系统上不同进程的堆栈调用中消耗的 CPU 时间。你可以通过顶部的搜索栏深入查看特定进程。例如,可以通过筛选 kvm,仅查看与该进程相关的信息。
Observability AI 助手
到目前为止,我们查看的所有 Kibana 页面都非常有价值,但它们很难回答一些紧急问题,比如:
-
我们的迷你电脑最近发生了什么吗?
-
是否有任何功能上的重大变化?
-
在收集的成千上万条数据中,是否隐藏着关键的信息?
Elastic Observability AI Assistant 可以用自然语言帮助我们解答这些问题。在 Elastic Cloud 上,它默认使用 Elastic 托管的 LLM 连接器,这意味着用户无需进行任何配置即可开始使用。开箱即用!
让我们进入 Kibana 的 Observability > AI Assistant 页面,尝试输入一个通用提示,比如:“please give me an overview of the health of my prox host”。
接下来稍等片刻,它会开始分析数据……很快,大量相关信息就以图表和自然语言解释的形式呈现出来了。Observability AI Assistant 理解了我们的提问,遍历了我们 Proxmox 主机的所有数据,进行了数据分析,并在几秒钟内给出结果!
通过 Kibana 告警监测中断
最后一步,让我们尝试定义一个 Kibana 告警,以帮助判断我们的主机是否过载。进入 Observability > Alerts > Rules,并创建一个新规则。我们将创建一个自定义阈值规则:如果主机在过去 15 分钟内的平均 CPU 使用率高于 80%,则触发告警。Kibana 会在规则触发时向我们发送邮件通知。
此外,该规则还设置为在过去 15 分钟内没有数据时同样触发告警,这非常有用,因为这可能意味着存在需要排查的问题:网络中断、家中断电、Agent 部署异常,或者迷你电脑出现硬件故障。
结论
在本博客文章中,我们展示了如何有效使用 Elastic Stack 来监控 Proxmox VE 部署。如果你想亲自体验这样的设置,欢迎试用 Elastic Cloud 的 14 天免费试用服务。
在后续的博客文章中,我们将深入探讨如何进一步挖掘 LXC 和 VM 的更多信息,从家庭实验室中收集更丰富的数据,并创建更有针对性的告警。敬请期待!
原文:https://www.elastic.co/observability-labs/blog/monitoring-proxmox-ve-with-elastic