我们最近的博客讨论了从传统平台到 CDP 私有云基础的四种途径。在本博客和随附的视频中,我们将深入探讨运行从 CDH5 或 CDH6 到 CDP 私有云基础的就地升级的机制。整体升级遵循如下所示的七个步骤。
在下面的视频中,我们将介绍从 CDH 到 CDP 私有云基础的完整的端到端升级。
步骤 1:准备升级
在继续升级之前,有必要查看文档中指定的先决条件。我们还建议执行完整的集群运行状况检查,我们的专业服务团队可以提供帮助。充分了解集群的当前状态和健康状况对于成功升级至关重要。
我们建议安装 WXM并捕获当前工作负载性能的基线,这将使我们能够更准确地评估升级前后的差异。如果没有这些基线,可能很难理解升级完成后工作负载如何或为什么表现不佳。
还值得检查您的应用程序与 CDP 中组件的新版本的兼容性。如果您从 CDH6 升级,您可以预期在版本方面会非常相似,而 CDH5 有一些更大的版本提升。至少您应该期望查看任何 API 更改并重新编译任何应用程序。在某些情况下,在 CDP 中将特定的旧组件替换为新的等效组件可能需要额外的代码更新才能与您的操作完全集成。
最后,我们还建议您对集群进行完整备份,包括:
- RDBMS
- ZooKeeper数据
- HDFS 主节点数据目录
- Navigator KMS、KTS 和 KeyHSM
- Cloudera Manager数据
CDH5和CDH6 的完整详细信息可用。
从 CDP Private Cloud Base 7.1.6 开始,我们现在具有 CDH5 和 CDH6 的完整回滚功能,但这需要从上述备份中恢复数据。
步骤2:升级前过渡步骤
CDH5和CDH6 的指令细节不同,但基本相同。我们需要为 CDP 中的任何组件更改做好准备,包括:
- 从 MR1 过渡到 MR2(仅限 CDH5)
- 为 Solr 准备新集合(仅限 CDH5)
- 导出为 Apache Ranger 准备的 Sentry 策略
- 将 Hive 1 或 2 工作负载迁移到 Hive 3
- HBase 升级前检查(CDH5和CDH6)
- Replication Manager检查
- Solr依赖
我们建议所有客户在生产中升级到 CDP 之前,先在开发或测试集群中测试工作负载。
步骤3:升级 JDK
CDP 支持 Open JDK 1.8 和 1.11 以及 Oracle JDK 1.8。如果正在使用 JDK 1.6 或 1.7,则应在升级 Cloudera Manager 之前升级它们。请注意文档中有关特定 JDK 版本的警告。
步骤 4a:升级操作系统
CDP 支持 Red Hat 和 CentOS 7.6 和 8.2、Ubuntu 18.04 和 20.04 以及 SLES 12SP5。如果您运行的是较旧版本的操作系统,则还需要在集群升级开始之前升级这些操作系统。
步骤 4b:升级 RDBMS
CDP 支持 MariaDB 10.2-10.4、MySQL 5.7 和 8.0、PostgreSQL 10、11 和 12 以及 OracleDB 12c、19c 和 19.9。
步骤 5:升级 Cloudera Manager
Cloudera Manager 也应该在升级之前进行备份,其中包括 RDBMS 和任何 Cloudera Management Service 目录。
Cloudera Manager Server 和 Cloudera Manager Agent 通过操作系统的包管理系统进行更新。首先,更新配置的存储库,然后运行升级命令。
一旦 Cloudera Manager Server 重新启动并且代理全部签入,您就可以继续通过 Web UI 升级 Cloudera Management Services。
步骤 6:将 CDH 升级到 CDP 运行时
升级的第一步是配置 CM 以查看新的parcel,然后从parcels 页面启动升级向导。
该向导将指导您完成以下步骤:
- 解决 Spark2 替代方案优先级 - 仅适用于 CDH5
- 添加 Tez 服务——这是 Hive 3 所必需的。
- 添加新的 Solr 服务——Ranger 需要一个专门的 Solr 来处理审计日志。
- 注意:这与运行以业务为中心的用例的其他 Solr 实例在单独的端口上运行。
- 添加 YARN 队列管理器 - 用于管理 YARN 队列的用户界面
- Fair Scheduler 到 Capacity Scheduler – 我们提供了一个fs2cs 命令行工具,用于从 Fair Scheduler 迁移到 Capacity Scheduler,但建议您在升级前后仔细检查和调整 Capacity Scheduler 配置。
- 在 Tez 服务上添加 Hive –
- 注意:HiveServer2 角色已移至此服务,不应再在 Cloudera Manager 中的 Hive 服务下访问。
- 添加 Ranger 服务 - Ranger 正在取代 Sentry 和专注于审计的 Navigator 部分。
- 安装 Atlas – 替换用于血缘和编目的导航器
- 添加 Kafka 服务 - 如果 Atlas 尚未安装,则需要
- 添加 HBase 服务 - 如果 Atlas 尚未安装,则需要
- 添加 Atlas 服务
- Navigator到 Atlas 迁移
- 设置 TLS 设置——确保配置所有密钥库和信任库设置很重要,否则服务可能会在升级过程中难以连接到 Ranger 或 Atlas。
- 导出Ranger权限 -
- 此步骤现在作为 CM 7.4.4 的一部分自动执行,稍后将转换为 Ranger 策略并在升级向导过程中自动导入
- CM、Hive 和 Oozie 的备份集群元数据和数据库
- 运行升级
步骤7:升级后步骤
升级向导完成后,必须完成几个升级后步骤。这些步骤将帮助系统为最终测试和验证做好准备,它们涵盖了额外的配置和运行时更改,以了解您的 CDP 集群。查看CDH5和CDH6升级后文档以了解每个版本所需的特定任务。
完成和最终化
升级完成后,所有服务都应启动并运行。此时,您应该执行另一次健康检查并确保所有服务都正常工作。您可以重新设定工作负载的基准并使用 WXM 执行前后比较。
一旦您对升级状态感到满意,您就可以完成 HDFS 元数据。重要提示:在执行此步骤之前,不会删除任何已删除的块,这意味着可以回滚。在您完全准备好之前,不要执行最终确定步骤!一旦完成了 HDFS,就无法回滚。
总结
端到端的过程相对简单,主要是向导驱动的。应注意确保在较低的环境中测试应用程序和工作负载,并在生产之前消除任何不兼容性。
查看上面有关实际集群升级的视频,如果您想讨论 CDP 之旅的后续步骤,请联系您的客户团队或 Cloudera 支持。
有关升级过程的其他信息,请参阅
- CDP 私有云基础升级文档
- Cloudera 升级指南伴侣
- CDP 知识中心
原文作者:Tristan Stevens
原文链接:https://blog.cloudera.com/migrate-to-cdp-private-cloud-base-a-step-by-step-guide/