将 Cryostat 2.4 迁移到 Cryostat 3.0
摘要
前言 复制链接链接已复制到粘贴板!
Red Hat build of Cryostat 是 JDK Flight Recorder (JFR)的容器原生虚拟化,可用于安全监控在 OpenShift Container Platform 集群上运行的工作负载的 Java 虚拟机(JVM)性能。您可以使用 Cryostat 3.0 使用 Web 控制台或 HTTP API 启动、停止、检索、存档、导入和导出容器化应用中的 JVM 的 JFR 数据。
根据您的用例,您可以使用 Cryostat 提供的内置工具直接存储和分析 Red Hat OpenShift 集群上的记录,或者您可以将记录导出到外部监控应用程序,以对记录数据进行更深入分析。
Red Hat build of Cryostat 只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围。
使开源包含更多 复制链接链接已复制到粘贴板!
红帽致力于替换我们的代码、文档和 Web 属性中有问题的语言。我们从这四个术语开始:master、slave、黑名单和白名单。由于此项工作十分艰巨,这些更改将在即将推出的几个发行版本中逐步实施。详情请查看 CTO Chris Wright 的信息。
第 1 章 Cryostat 迁移概述 复制链接链接已复制到粘贴板!
在 Red Hat OpenShift 中作为集群管理员,您可以从 Cryostat 2.4 升级到 Cryostat 3.0。本指南涵盖了 Cryostat 3.0 发行版本中提供的新更新、已弃用和不支持的功能,以及任何所需的应用程序和 Operator 配置更新以保持一致的行为。
在开始 迁移过程 前,请完成以下步骤:
1.1. 主 Cryostat Operator 更改 复制链接链接已复制到粘贴板!
Red Hat build of Cryostat 3.0 包括对 Cryostat Operator 的安装模式以及提供的 API 类型进行主要更新。
安装模式更改
| Red Hat build of Cryostat 版本 | 安装模式 |
|---|---|
| 2.4 及更早版本 |
|
| 3.0 |
|
在 Red Hat OpenShift 中,Cryostat Operator 现在可以在集群范围(集群中的所有命名空间)中安装,而不是安装到集群命名空间的子集。集群范围的安装是 Operator Lifecycle Manager 的首选模式,每个命名空间安装都是已弃用的功能。
图 1.1. Cryostat 3.0 中的安装模式
提供的 API 更改
| Red Hat build of Cryostat 版本 | 提供的 API |
|---|---|
| 2.4 及更早版本 |
|
| 3.0 |
|
ClusterCryostat 和 Cryostat API 现在被统一为 singular Cryostat API。您可以使用 Cryostat API 及其可选的 Target Namespaces 字段来创建与包含应用程序的命名空间或命名空间组对应的一个或多个 Cryostat 实例。
图 1.2. 在 Cryostat 3.0 中提供了 API
1.2. 应用程序配置更改 复制链接链接已复制到粘贴板!
对于使用 Cryostat 代理部署的应用程序,可以使用更新的 0.4.0 版本代理,并使用 Red Hat build of Cryostat 3.0。有关 Cryostat 代理的最新可用构建版本的详情,请参考 Red Hat Maven 存储库。
除了升级代理外,一些代理配置属性也更改了:
| 代理配置属性 | Cryostat 2.4 值 | Cryostat 3.0 值 | 详情 |
|---|---|---|---|
|
| http://cryostat.mynamespace.mycluster.svc:8181 | http://cryostat.mynamespace.mycluster.svc:4180 | 服务端口已从 8181 改为 4180。 |
|
| bearer Base64 令牌 | bearer raw (plain-text)令牌 | bearer 令牌不再需要经过 Base64 编码。 |
有关代理配置更改和其他新功能及改进的更多信息,请参阅 Red Hat build of Cryostat 3.0 的发行注记。
对于使用远程 JMX 连接的应用程序,红帽构建的 Cryostat 不包括任何配置更改。
1.3. 迁移建议 复制链接链接已复制到粘贴板!
迁移前,请考虑备份任何 Cryostat 数据,以确保在升级后可以恢复自定义。
这个数据包括:
- 自定义配置集模板
- 自定义仪表板布局
- 活跃和归档的记录
- 自定义自动化规则
如果以前的 SSL 证书和存储的凭证配置,请确保在迁移过程中可用。
第 2 章 Cryostat 迁移过程 复制链接链接已复制到粘贴板!
迁移到 Cryostat 3.0 的过程包括以下任务:
2.1. 熟悉您当前的 Cryostat 安装和配置实例 复制链接链接已复制到粘贴板!
如果将 Update 批准策略 被设置为 Automatic,则 Cryostat Operator 通常会自动更新。但是,因为 Cryostat 3.0 引入了对安装模式的更改并提供 API,如 Major Cryostat Operator 所述,您可能需要执行手动操作来确保 Cryostat 正确更新。
要确定是否需要手动干预,请查看以下步骤来熟悉您当前的 Cryostat 安装和配置实例。
流程
- 作为管理员,在 Red Hat OpenShift Web 控制台的主导航中,单击下拉菜单并选择 Administrator。
- 在导航菜单中点 Operators > ; Installed Operators。
- 搜索已安装的 Red Hat build of Cryostat Operator。
要检查 Cryostat 的安装模式,请注意 Managed Namespaces 列中的值。这个值可以是 All Namespaces 或用户定义的命名空间。
图 2.1. Cryostat 中的受管命名空间详情
- 在 Name 列中,点 Red Hat build of Cryostat。
- 在 Operator 详情面板中 点 Subscription 选项卡。
在 Subscription details 面板中,要检查 Cryostat 的更新批准策略,请注意 Update approval 区域中的值。这个值可以是 Manual 或 Automatic。
图 2.2. 更新 Cryostat 中的批准详情
检查您配置的实例:
-
点 Cluster Cryostat 选项卡。这将显示已创建的 ClusterCryostat 实例的列表。如果没有实例,则页面 diplays
No operands found。 -
点 Cryostat 选项卡。这将显示已创建的 Cryostat 实例列表。如果没有实例,则页面 diplays
No operands found。
-
点 Cluster Cryostat 选项卡。这将显示已创建的 ClusterCryostat 实例的列表。如果没有实例,则页面 diplays
确定安装模式和配置实例的组合后,您可以通过完成与部署匹配的 Cryostat 安装中的相应步骤来升级 Cryostat。
2.2. 升级 Cryostat 安装 复制链接链接已复制到粘贴板!
根据 Cryostat 安装和实例组合,您必须遵循升级 Cryostat 的步骤而有所不同,具体取决于以下场景与您现有的 Cryostat 安装匹配:
- Cryostat 已安装到 All Namespaces,而 Cryostat 实例之前已创建。
- Cryostat 已安装到 All Namespaces,并且之前创建了 ClusterCryostat 实例。
- Cryostat 已安装到 All Namespaces,ClusterCryostat 和 Cryostat 实例之前已创建。
- Cryostat 已安装到 目标命名空间, 而 Cryostat 实例之前已创建。
- Cryostat 已安装到 目标命名空间, 并且之前创建了 ClusterCryostat 实例。
- Cryostat 已安装到 目标命名空间, 并且 ClusterCryostat 和 Cryostat 实例之前已创建。
在这种情况下,如果 Update approval 策略被设置为 Automatic,则不需要升级步骤。
在这种情况下,如果 Update approval 策略被设置为 Manual,请完成以下步骤。
流程
- 作为管理员,在 Red Hat OpenShift Web 控制台的主导航中,单击下拉菜单并选择 Administrator。
- 在导航菜单中点 Operators > ; Installed Operators。
- 搜索已安装的 Red Hat build of Cryostat Operator。
检查 Cryostat Operator 的版本和状态。
Cryostat 版本为 2.4,Status 列应当显示 Upgrade available。
- 单击 Upgrade available。
- 点 Preview InstallPlan,然后点 Approve。
现在,您已成功升级到 Cryostat 3.0。
为确保缓存的会话被重置,在打开 Cryostat Web 应用程序时可能需要硬浏览器刷新。
在这种情况下,请完成以下步骤:
流程
- 作为管理员,在 Red Hat OpenShift Web 控制台的主导航中,单击下拉菜单并选择 Administrator。
- 在导航菜单中点 Operators > ; Installed Operators。
- 搜索已安装的 Red Hat build of Cryostat Operator。
检查 Cryostat Operator 的版本和状态。
- 如果 Cryostat 的 Update 批准策略 为 Automatic,则 Cryostat 版本已升级到 3.0。继续 第 5 步。
如果 Cryostat 的 Update Approval Strategy 为 Manual,则 Cryostat 版本为 2.4,Status 列应当显示 Upgrade available。
- 单击 Upgrade available。
- 点 Preview InstallPlan,然后点 Approve。
- Once Cryostat 3.0 is installed,进入到 Administration > CustomResourceDefinitions。
- 搜索并点 ClusterCryostat CRD (自定义资源定义)。
- 点 实例 选项卡。
对于需要迁移的每个 ClusterCryostat 实例,请复制 YAML 配置:
- 单击 ClusterCryostat 实例的名称。然后点击 YAML 选项卡,然后点击面板右下角的 Download。
- 对需要迁移的每个实例重复第 8a 步。
- 返回到 ClusterCryostat Instances 选项卡。
- 点右侧的 ellipsis 图标删除每个 ClusterCryostat 实例。这包括您在第 8 步中 下载的实例。
- 进入到 Installed Operators > Red Hat build of Cryostat > Cryostat 标签页。
对于第 8 步中的每个 ClusterCryostat 实例:
- 点 Create Cryostat。
使用 YAML 视图来修改 ClusterCryostat 配置。
例如:
旧 YAML 设置:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 新的 YAML 设置:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 点 Create。
现在,您已成功迁移了 Cryostat 实例。有关更新部署的应用程序的更多信息,请参阅更新部署的应用程序。
有关迁移 ClusterCryostat 实例的详情,请参阅升级将 Cryostat 安装到 "All Namespaces" 和 "ClusterCryostat" 实例的安装。
Cryostat 实例不需要修改或删除。
2.2.4. 升级安装,其中 Cryostat 已安装到目标命名空间,并创建了 "Cryostat" 实例 复制链接链接已复制到粘贴板!
在这种情况下,无论 Update approval 策略是 Automatic 或 Manual,Cryostat Operator 的升级路径将失败,并显示以下错误:
Error: OwnNamespace InstallModeType 不支持,无法配置为监视自己的命名空间
继续操作前,请查看 迁移建议 中的信息。
在这种情况下,请完成以下流程中的步骤。
流程
- 作为管理员,在 Red Hat OpenShift Web 控制台的主导航中,单击下拉菜单并选择 Administrator。
在导航菜单中点 Operators > ; Installed Operators。
注意确保您已选择安装了 Cryostat 的正确项目(命名空间)。
- 搜索安装的 Red Hat build of Cryostat 版本 2.4 Operator。
从 Operators > Installed Operators 卸载 Red Hat build of Cryostat。
- 如果 Update 批准策略 是 Manual,Installed Operators 表中只显示 Cryostat 2.4。点右侧的 ellipsis 图标并选择 Uninstall Operator。
如果 Update Approval Strategy 是 Automatic,则 Installed Operators 表中都会显示 Cryostat 2.4 和 3.0。
- 对于 Cryostat 2.4,点 ellipsis 图标并选择 Delete ClusterServiceVersion。
- 对于 Cryostat 3.0,点 ellipsis 图标并选择 Uninstall Operator。
- 进入 Operators > OperatorHub 并搜索 Cryostat。
- 点 Red Hat build of Cryostat 标题并将 版本 3.0 安装到 openshift-operators 命名空间中。openshift-operators 是 Operator 安装的默认命名空间,安装到 "All Namespaces"。
现在,您已成功迁移到 Cryostat 3.0 Operator。有关更新部署的应用程序的更多信息,请参阅更新部署的应用程序。
为确保缓存的会话被重置,在打开 Cryostat Web 应用程序时可能需要硬浏览器刷新。
在这种情况下,无论 Update approval 策略是 Automatic 或 Manual,Cryostat Operator 的升级路径将失败,并显示以下错误:
Error: OwnNamespace InstallModeType 不支持,无法配置为监视自己的命名空间
继续操作前,请查看 迁移建议 中的信息。
在这种情况下,请完成以下流程中的步骤。
流程
- 作为管理员,在 Red Hat OpenShift Web 控制台的主导航中,单击下拉菜单并选择 Administrator。
在导航菜单中点 Operators > ; Installed Operators。
注意确保您已选择安装了 Cryostat 的正确项目(命名空间)。
- 搜索安装的 Red Hat build of Cryostat 版本 2.4 Operator。
点 Cluster Cryostat 选项卡。
- 要导出需要迁移的实例,请点此实例名称。然后点击 YAML 选项卡,然后点击面板右下角的 Download。
- 对需要迁移的每个实例重复第 4a 步。
- 导出实例后,若要删除这些实例,请从面板右上角的 Actions 下拉菜单中选择 Delete ClusterCryostat。
从 Operators > Installed Operators 卸载 Red Hat build of Cryostat。
- 如果 Update 批准策略 是 Manual,Installed Operators 表中只显示 Cryostat 2.4。点右侧的 ellipsis 图标并选择 Uninstall Operator。
如果 Update Approval Strategy 是 Automatic,则 Installed Operators 表中都会显示 Cryostat 2.4 和 3.0。
- 对于 Cryostat 2.4,点 ellipsis 图标并选择 Delete ClusterServiceVersion。
- 对于 Cryostat 3.0,点 ellipsis 图标并选择 Uninstall Operator。
- 进入 Operators > OperatorHub 并搜索 Cryostat。
- 点 Red Hat build of Cryostat 标题并将 版本 3.0 安装到 openshift-operators 命名空间中。openshift-operators 是 Operator 安装的默认命名空间,安装到 "All Namespaces"。
对于您在第 4 步中 导出的每个 ClusterCryostat 实例:
- 点 Create Cryostat。
使用 第 4 步中的 YAML,使用 YAML 视图来修改 ClusterCryostat 配置。
例如:
旧 YAML 设置:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 新的 YAML 设置:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 点 Create。
现在,您已成功迁移到 Cryostat 3.0 Operator。有关更新部署的应用程序的更多信息,请参阅更新部署的应用程序。
有关迁移 ClusterCryostat 实例的详情,请参阅升级将 Cryostat 安装到目标命名空间的安装,并且之前创建了 ClusterCryostat 实例。
Cryostat 实例不需要修改或删除。
2.3. 更新您部署的应用程序 复制链接链接已复制到粘贴板!
有关在 Cryostat 3.0 中配置 Java 应用程序的更多信息,请参阅配置 Java 应用程序。
2.4. 恢复以前的配置 复制链接链接已复制到粘贴板!
对于之前自定义的 Cryostat 配置,如事件模板、仪表板布局、JFR 记录和自动规则,请查看以下指南来恢复这些自定义:
- 事件模板
- 如需更多信息,请参阅使用自定义事件模板 中的第 7 步。
- 仪表板布局
- 如需更多信息 ,请参阅恢复仪表板布局。
- JFR 记录
- 如需更多信息,请参阅将 JFR 记录上传到 Cryostat 归档位置。
- 自动化规则
- 如需更多信息,请参阅 在 JSON 中上传自动化规则。
更新于 2024-07-02