Important
此功能目前为预览版。
Fabric运行时发布通道为客户在成为默认运行时之前测试即将进行的运行时更改提供了结构化和透明的方式。 此功能可帮助组织借助这些已开放抢先体验的新变更,尽早验证其生产工作负载,避免意外中断,并更好地掌控 Spark 运行时升级。
无需接收可能会中断生产工作负荷的无提示更新、选择进入早期访问发布通道、在开发或过渡环境中测试工作负载,并在更新变为默认之前确认兼容性。
发布通道的工作原理
每个 Spark 运行时至少有两个公共发布通道:
- 默认通道 – 此生产级通道运行运行时的默认版本。 除非所有用户选择提前访问,否则所有用户都会自动使用此频道。
- 早期访问通道 – 此生产级频道包括即将进行的更新和库更改,这些更新和库更改计划成为下一个默认通道。 选择加入,以针对即将推出的更改测试你的工作负载。
当指定的验证窗口结束后,早期访问发布通道会自动升级为新的默认通道,同时会引入一个包含另一组新变更的全新早期访问通道。 此过程将继续循环。 该模型可在更改成为所有用户的默认设置之前,为你提供一个可预测的测试窗口期。
Tip
使用早期访问通道在更新到达默认通道之前验证生产工作负荷。
为什么发布频道很重要
Spark 运行时更新可以包括库升级、安全修补程序、依赖项更改,甚至操作系统升级。 虽然所有更新在发布前都通过内部质量检查,但这些检查无法捕获所有特定于客户的变体和用例。 通过早期访问通道,你可以及早发现潜在问题,并通过创建支持票证与 Microsoft 协作,在更新影响生产环境之前解决这些问题。
| 福利 | Description |
|---|---|
| ✔ 可预测更新 | 确切地知道新运行时何时可用,并有时间对其进行验证。 |
| ✔ 降低风险 | 在早期访问上测试工作负载可确保在更改到达生产环境之前保持兼容性。 |
| ✔ 更好的可见性 | 可以轻松判断正在运行的运行时版本、参考发行说明和验证升级时间。 |
| ✔ 提高质量和安全性 | 你会收到经过充分测试且更快应用了安全补丁的构建版本,从而让你对运行时稳定性更有信心。 |
选择发布频道
使用 Spark 配置或属性选择发布通道。 在 Spark 设置或配置中使用以下属性:
Important
抢先体验渠道不使用 Starter Pool。 必须将 spark.fabric.pools.skipStarterPools=true 设置为使用早期访问通道。 与 Starter Pool 相比,自定义池的会话启动时间更长。
# Prerequisite: early access doesn't use Starter Pool so you need to set it to skip it
spark.fabric.pools.skipStarterPools=true
# Set one of the following values:
# Use this to switch to the early access channel
spark.computeConf.runtime.releaseChannel=earlyAccess
# or to revert to the default release channel
spark.computeConf.runtime.releaseChannel=default
有效值为:
-
default– 使用默认的正式发布通道 -
earlyAccess- 使用即将推出的早期访问版本进行测试
注释
在 Spark 会话期间,发布通道设置是不可变的。 若要切换通道,请启动新会话。
在早期访问时设置和运行测试
若要有效地测试早期访问版本,请执行以下步骤:
1.设置测试工作区或指定现有测试环境
创建用于测试早期访问通道的专用工作区:
2.识别具有代表性的工作负载
运行能够代表您的生产流水线的工作负载:
- 理想情况下,请在测试工作区中针对早期访问通道运行整个生产工作负荷。
- 如果这不可行,请确定最能代表生产环境的关键测试和管道。
- 请考虑使用你可能已经拥有的现有 UAT 或预发布环境。
3. 自动测试
设置自动执行测试:
- 计划定期运行测试,但频率低于发布更新。
- 监控测试结果中的失败情况,这些失败可能表明早期访问版本存在问题。
4. 报告问题
如果怀疑早期访问版本导致失败:
- 将结果与默认通道进行比较,以隔离问题。
- 请注意您正在测试的抢先体验版本的 VHD ID。
- 请联系Microsoft支持人员,了解你的发现。 Microsoft 会优先处理抢先体验期间出现的问题,并提供热修复或回滚有问题的更改。
跟踪发布更新和 VHD 信息
若要随时了解每个发布频道中的更改,请:
识别你的 VHD(虚拟硬盘)映像 若要查找正在运行的运行时映像的 VHD ID,请执行以下操作:
- 在会话中查看 Spark UI 或集群信息(例如
spark.conf.get("spark.synapse.vhd.id", "")) - 在群集日志中查找 VHD ID
- 向技术支持报告问题时,请使用这些信息
- 在会话中查看 Spark UI 或集群信息(例如
查看发行说明。 监视 Spark 运行时发布和更新 存储库以获取详细的发行说明。 发行说明按发布频道发布,因此可以轻松比较更改。 每个版本都包含对库、组件和改进的记录更改。
示例:
- Official-Spark3.5-default-YYYY-MM-DD.md
- Official-Spark3.5-early-access-YYYY-MM-DD.md
当早期访问通道成为新的默认值时:
- 之前默认项的备注已存档。
- 早期访问笔记将重命名为新的默认笔记。
- 已发布用于下一周期的新的早期访问说明文件。
常见问题解答
抢先体验版的质量是否较低?
否。 早期访问通道必须通过所有标准验证门。 它只是在发布流程中处于更早的阶段。
是否必须使用早期访问通道?
否。 这完全是可选的。 如果不选择加入,请继续使用默认通道。
如果出现问题,是否可以回滚?
是的。 可以使用 Spark 配置还原到默认通道,随时从早期访问通道切换回。
早期访问的成本是否额外?
否。 计费方式与默认通道的使用相同。
抢先体验是否只使用自定义池?
是的。 抢先体验仅使用自定义池,因为这是一项需主动启用的功能。 与 Starter Pool 不同,自定义池的会话启动时间会有延迟。
相关内容
- Fabric 中的 Apache Spark 运行时
- Fabric 中的 Apache Spark 运行时的生命周期
- Fabric 中的运行时 2.0
- Fabric 中的 Runtime 1.3
- Spark 运行时版本和更新