升级 Fleet 管理的 Elastic Agent
编辑升级 Fleet 管理的 Elastic Agent编辑
想要升级独立 Agent?请参阅升级独立 Elastic Agent。
借助 Fleet 升级功能,您可以查看和选择过时的 Agent,并触发所选 Agent 下载、安装和运行新版本。您可以触发立即升级,或指定升级将在其中发生的维护窗口。如果您的 Elastic Stack 订阅级别支持,您可以安排在特定日期和时间进行升级。
在大多数故障情况下,Elastic Agent 可能会在短暂等待后重试升级。重试之间的等待时间为:1 分钟、5 分钟、10 分钟、15 分钟、30 分钟和 1 小时。在此期间,Elastic Agent 在 Fleet UI 中可能会显示为“正在重试”。此外,如果检测到 Agent 升级已停止,您可以为单个 Agent或批量为多个 Agent重新启动升级过程。
这种方法简化了使您的 Agent 保持最新的过程。它还可以节省您的时间,因为您不需要第三方工具或流程来管理升级。
默认情况下,Elastic Agent 需要 Internet 访问权限才能从 Fleet 执行二进制升级。但是,您可以托管自己的工件存储库,并将 Elastic Agent 配置为从中下载二进制文件。有关更多信息,请参阅气隙环境。
升级功能不支持升级 DEB/RPM 软件包或 Docker 镜像。
有关 Elastic Agent 升级过程以及 Fleet、Elastic Agent 和 Elasticsearch 之间交互的详细视图,请参阅elastic-agent
GitHub 存储库中的组件之间的通信图。
限制编辑
请注意升级 Elastic Agent 的以下限制
- Elastic Agent 无法升级到高于当前安装的最高版本 Fleet Server 的版本。当您升级一组当前版本相同的 Elastic Agent 时,您应该首先升级充当 Fleet Server 的任何 Agent(任何与其关联了 Fleet Server 策略的 Agent)。
- 要使其可升级,Elastic Agent 不能在容器内运行。
- 要在 Linux 环境中进行升级,Elastic Agent 必须作为服务运行。Fleet 中提供的 Elastic Agent Linux Tar 安装说明包括将其作为服务运行的命令。Elastic Agent RPM 和 DEB 系统软件包无法通过 Fleet 升级。
无论您是单独升级 Elastic Agent 还是批量升级,这些限制都适用。如果升级不符合条件,Fleet 会在您尝试升级时生成警告消息。
升级 Elastic Agent编辑
要升级您的 Elastic Agent,请转到 Kibana 中的管理 > Fleet > Agent。您可以执行以下与升级相关的操作
用户操作 | 结果 |
---|---|
将单个 Agent 升级到特定版本。 |
|
在特定时间段内对多个 Agent 进行滚动升级。 |
|
安排一个或多个 Agent 在特定时间开始升级。 |
|
查看 Agent 升级的详细状态,包括升级指标和 Agent 日志。 |
|
重新启动已停止的单个 Agent 的升级过程。 |
|
对一组 Agent 进行批量重新启动升级过程。 |
升级单个 Elastic Agent编辑
-
在Agent选项卡上,可以使用升级可用指示器识别可以升级的 Agent。
您还可以单击升级可用按钮将 Agent 列表过滤为当前可以升级的 Agent。
-
从 Agent 旁边的操作菜单中,选择升级 Agent。
-
在“升级 Agent”窗口中,选择或指定升级版本,然后单击升级 Agent。
在某些情况下,Kibana 可能无法识别最新的可用 Elastic Agent 版本。例如,当 Kibana 版本低于 Elastic Agent 版本时,就会发生这种情况。您可以通过在升级版本文本字段中输入版本来指定 Elastic Agent 要升级到的自定义版本。
对多个 Elastic Agent 进行滚动升级编辑
您可以进行滚动升级,以避免在更新大量 Elastic Agent 时耗尽网络资源。
- 在Agent选项卡上,选择多个 Agent,然后单击操作。
- 从操作菜单中,选择升级 Agent。
- 在“升级 Agent”窗口中,选择升级版本。
-
选择维护窗口的可用时间。升级将在此维护窗口中均匀分布,以避免耗尽网络资源。
要强制所选 Agent 在触发升级时立即升级,请选择立即。避免对超过 10 个 Agent 的批次使用此设置。
- 升级 Agent。
安排升级编辑
- 在Agent选项卡上,选择一个或多个 Agent,然后单击操作。
-
从操作菜单中,选择安排升级。
如果“安排”选项灰显,则表示您的订阅级别可能不可用。有关更多信息,请参阅Elastic Stack 订阅。
- 在“升级”窗口中,选择升级版本。
- 选择维护窗口。有关更多信息,请参阅对多个 Elastic Agent 进行滚动升级。
- 设置您希望升级开始的日期和时间。
- 单击安排。
查看升级状态编辑
在“Agent”选项卡上,当您触发升级时,正在升级的 Agent 的状态为正在更新
,直到升级完成,然后状态变回正常
。
当前正在升级的 8.12 及更高版本的 Agent 还会显示详细的升级状态指示器。
下表按可能出现的顺序解释了升级状态。
表 3. Elastic Agent 升级状态
状态 | 描述 |
---|---|
已请求升级 |
Elastic Agent 已收到来自 Fleet 的升级通知。 |
已安排升级 |
Elastic Agent 已收到来自 Fleet 的升级通知,升级将在指定时间开始。 |
正在下载升级 |
Elastic Agent 正在下载包含新版本工件的存档。 |
正在解压缩升级 |
Elastic Agent 正在从下载的存档中解压缩新版本工件。 |
正在替换升级 |
Elastic Agent 当前正在用新的工件替换升级前的旧 Agent 工件。 |
正在重新启动升级 |
Elastic Agent 已替换为新版本,现在正在重新启动以应用更新。 |
正在监控升级 |
新升级的 Elastic Agent 已启动,并且正在对其进行错误监控。 |
已回滚升级 |
升级失败。Elastic Agent 正在回滚到升级前的旧版本。 |
升级失败 |
在新升级的 Elastic Agent 中检测到错误,并且尝试将升级回滚到先前版本失败。 |
在常规情况下,Elastic Agent 升级会很快完成。您通常不会看到 Agent 经历每个升级状态。详细的升级状态可能是一个非常有用的工具,尤其是在您需要诊断可能在升级过程中卡住或只是看起来卡住的 Agent 的状态时。
在升级状态指示器旁边,您可以将光标悬停在信息图标上以获取有关升级的更多详细信息。
请注意,当您从低于 8.12 的版本升级 Agent 时,不会提供升级详细信息。
升级许多 Agent 时,您可以通过查看有关升级的统计信息和指标来微调维护窗口
- 在Agent选项卡上,单击主机名以查看 Agent 详细信息。如果您没有看到主机名,请尝试刷新页面。
- 单击查看更多 Agent 指标以打开[Elastic Agent] Agent 指标仪表板。
如果升级似乎已停止,您可以重新启动它。
如果升级失败,您可以查看 Agent 日志以查找原因
- 在 Fleet 中,“主机”列中,单击 Agent 的名称。
- 打开日志选项卡。
-
搜索失败。
重启单个代理的升级编辑
Elastic Agent 升级过程有时可能会停滞。这可能是由各种原因造成的,例如网络连接问题或延迟关闭。
当检测到 Elastic Agent 升级卡住时,UI 上会出现警告指示器。发生这种情况时,您可以从 Fleet 主页上的代理选项卡或任何单个代理的详细信息页面重新启动升级。
请注意,重启尝试之间需要 10 分钟的冷却时间。启动重启操作后,您需要等待冷却时间结束后才能启动另一次重启。
从 Fleet 主页重启
- 在处于
正在更新
状态的代理旁边的操作菜单中,选择重启升级。 - 在重启升级窗口中,选择升级版本,然后单击升级代理。
从代理详细信息页面重启
- 在 Fleet 的主机列中,单击代理的名称。在代理详细信息选项卡上,如果检测到代理在升级过程中停滞,则会出现警告通知。
- 单击重启升级。
- 在重启升级窗口中,选择升级版本,然后单击升级代理。
重启多个代理的升级编辑
当检测到多个代理的升级过程已停滞时,您可以批量重启升级过程。与重启单个代理的升级一样,重启之间强制执行 10 分钟的冷却时间。
- 在代理选项卡上,选择指示为卡住的任何一组代理,然后单击操作。
- 从操作菜单中,选择重启升级 <数量> 个代理。
- 在重启升级…窗口中,选择升级版本。
-
选择维护窗口的可用时间。升级将在此维护窗口中均匀分布,以避免耗尽网络资源。
要强制所选 Agent 在触发升级时立即升级,请选择立即。避免对超过 10 个 Agent 的批次使用此设置。
- 重启升级。