最佳实践:集群策略
预览
此功能已在公共预览.
砖集群政策为管理员提供在Databricks工作区中创建集群资源的控制。有效使用集群策略允许管理员:
强制执行标准化的集群配置。
防止过度使用资源,控制支出。
通过正确标记集群来确保准确的退款。
通过为用户提供针对特定工作负载的预配置集群配置,方便分析和处理。
有关集群策略和配置建议的介绍,请查看Databricks集群策略视频:
与有效的登录、审批和退款流程相结合,集群策略可以成为Databricks平台治理的基本组件。bob体育客户端下载本指南提供了建议和最佳实践,以帮助您创建成功的计划,将集群策略集成到治理框架中。
由于治理对于每个组织的需求和现有治理基础设施都是独一无二的,因此本文首先介绍通常适用于集群策略的建议。本文的最后一部分讨论了解决您在环境中可能遇到的挑战的特定策略。
本文讨论了确保成功实施集群治理的以下最佳实践和建议:
创建计划,分阶段引入集群策略,以帮助用户过渡到受治理的环境。
为集群策略推出的每个阶段创建一个交流更改的计划。
确定集群治理面临的挑战,并实施应对这些挑战的策略。
集群策略推出
实现集群策略可以显著改变用户体验。Databricks推荐一种分阶段的方法来帮助引导用户完成过渡:
告知即将发生的更改,并为用户提供测试集群配置的机会。
执行软滚出。
逐步引入进一步的政策变更。
执行硬转换到完全受治理的环境。
分阶段推出允许用户熟悉新策略,并防止现有工作负载中断。下图是这个推荐过程的一个例子:
以下章节将提供关于这些阶段的更详细信息:
交流和测试集群策略
通过与用户沟通即将发生的更改来开始这个过程。沟通计划应包括:
关于即将到来的变化的细节。
为什么会发生这些变化。
用户需要做什么来确保工作负载的成功转换。
如何提供关于更改的反馈。
展示的每个阶段的时间轴。
在分阶段推出的每个阶段开始时,沟通与该阶段相关的进一步细节。
下图提供了分阶段推出的示例通信计划:
您的计划可能有不同的阶段,这取决于您的环境和集群策略策略。本例包括四个阶段:
阶段1包括与用户沟通计划并开始测试。用户必须有机会在符合新策略的集群上测试他们当前和预期的工作负载。您希望在流程的早期识别现有和计划的工作负载的任何问题。
阶段2继续测试,同时推出集群标记策略。
阶段3引入集群类型,在本例中使用t恤大小指定集群,例如,小型、大型或超大集群类型。
阶段4是集群策略的最终推出以及完整的用户文档。
用户还应该有机会在初始阶段使用计划的集群配置测试他们的工作负载。此测试可以帮助识别在使用建议策略时存在问题的现有工作负载。
引入集群策略的注意事项
在规划集群策略的初始部署时,请考虑当前的管理策略。特别是,要考虑您是从一个限制用户创建集群的环境转移到一个更开放的环境。
最后推出
当截止日期到达时,删除对受限制用户的不受限制策略的访问。集群策略的推出现在应该完成了。
具体挑战与策略
下面是应用集群策略来解决特定挑战的示例。其中许多策略可以同时使用,但需要在所有策略中应用每种策略。例如,如果使用标签强制策略和t恤大小策略,每个t恤策略还需要一个custom_tag。*
政策。
标签执行
解决方案
撤销集群创建权限从用户。
向任何适用的集群策略添加集群标记规则。要将群集标记规则添加到策略中,请使用
custom_tags。<标记名称>
属性。该值可以是an下面的任何值无限的政策,也可以由固定,允许列表,块列表,正则表达式,或范围政策。例如,为了确保正确的退款和成本归属,执行aCOST_CENTER
在每个策略上标记,限制为允许的成本中心值列表:{“custom_tags。COST_CENTER”:{“类型”:“allowlist”,“价值观”:[“9999”,“9921”,“9531”]}}
使用此策略的任何用户都必须填写
COST_CENTER
标记9999、9921或9531以启动集群。将集群策略分配给应该能够对这三个成本中心收费的用户。策略可以在用户或组级别上通过集群策略界面或者是补丁/权限/ cluster-policies / {cluster_policy_id}端点。下面的示例请求体将策略分配给销售部门:
{“access_control_list”:[{“user_name”:“user@mydomain.com”,“all_permissions”:[{“permission_level”:“CAN_USE”}]},{“group_name”:“销售”,“all_permissions”:[{“permission_level”:“CAN_USE”}]}]}
没有经验的用户
解决方案
使用集群策略定义“t恤”大小的集群配置,例如,小型、中型或大型集群。
为每种t恤尺码制定策略。t恤大小策略向用户指示相对的集群大小,可以是灵活的模板,也可以是零选项配置。零选项或低选项策略通常会有固定以及隐藏的策略规则。下面的示例为对象定义一个DBR 7.3的固定值策略
spark_version
.设置隐藏的
标记为true将确保此选项对用户不可见。{“spark_version”:{“类型”:“固定”,“价值”:“7.3.x-scala2.12”,“隐藏”:真正的}}
在定义灵活的模板时,可以使用范围,块列表,块列表,正则表达式,无限的政策用于设置上限边界、非可选字段和半限制策略元素的策略。下面的示例定义了一个策略,该策略允许自动伸缩节点最多为25个。您可以使用此定义设置每个t恤尺寸的上限,同时提供一些灵活性。要查看集群模板方法的更多详细信息,请参见资源占用过多.
{“autoscale.max_workers”:{“类型”:“范围”,“执行”:“25”,“defaultValue”:5}}
将该策略分配给应该允许创建t恤大小集群的用户。可以通过集群策略UI或集群策略权限API在用户或组级别分配策略。例如,通过UI将此策略分配给所有用户:
进入集群策略并选择编辑.
选择权限选项卡。
选择所有用户选择下组在下拉列表中。
撤销必须只使用这些新策略的组对不受限制策略的访问权。一旦使用了集群策略,拥有“集群创建”权限的用户就可以访问不受限制的策略。对于不应该拥有该权限的用户,撤销该权限非常重要。
要撤消集群创建权限,请参见配置创建集群权限.
特定于用例的策略
资源占用过多
解决方案
将集群策略与内部审批流程相结合,可以实现对资源的控制,同时在必要时提供对大型计算资源的访问。
建立一个审查过程,以授予更大或更灵活的策略访问权。审查流程应该有一个收集信息的表单,该表单支持对更大或更灵活的集群配置的需求。平台所有bob体育客户端下载权团队应该评估这些信息,以决定如何支持工作负载需求。下图展示了使用t恤尺寸的审批流程示例:
用更少的约束创建更灵活的策略,并专注于控制像标签这样的治理项目。灵活政策的一个例子:
{“autoscale.min_workers”:{“类型”:“范围”,“执行”:20.,“defaultValue”:2},“autoscale.max_workers”:{“类型”:“范围”,“执行”:One hundred.,“defaultValue”:8},“autotermination_minutes”:{“类型”:“范围”,“执行”:120,“defaultValue”:60},“node_type_id”:{“类型”:“过滤清单”,“价值观”:[“z1d.12xlarge”,“z1d.6xlarge”,“r5d.16xlarge”,“r5a.24xlarge”,“c5.24xlarge”],“defaultValue”:“i3.xlarge”},“driver_node_type_id”:{“类型”:“过滤清单”,“价值观”:[“z1d.12xlarge”,“z1d.6xlarge”,“r5d.16xlarge”,“r5a.24xlarge”,“c5.24xlarge”],“defaultValue”:“i3.xlarge”},“spark_version”:{“类型”:“固定”,“价值”:“7.3 -scala2.12”,“隐藏”:真正的},“enable_elastic_disk”:{“类型”:“固定”,“价值”:真正的,“隐藏”:真正的},“custom_tags.team”:{“类型”:“固定”,“价值”:“产品”}}
该策略提供了灵活性,允许用户:
从一系列实例类型中进行选择,而不是一些过于昂贵的实例类型。
配置最多100个节点的集群。
设置自动终止时间为120分钟。
它还设置了合理的限制,并通过以下方式确保治理:
为这个团队强制一个标签。
需要自动定量。
启用弹性盘自动伸缩。
指定Databricks运行时版本。
此策略非常适合经验丰富的用户,他们需要对各种集群配置上的作业进行调优,并且是与审批流程相关联的策略的一个很好的示例。
将升级和审批流程编制成文档,并与用户共享。发布关于识别可能需要更大灵活性或更大集群的工作负载类型的指南也很有帮助。
批准用户后,将策略分配给他们。策略可以在用户或组级别上通过集群策略界面或者通过向权限API 2.0:
{“access_control_list”:{“user_name”:“users_email@yourdomain.com”,“permission_level”:“CAN_USE”}}
BOB低频彩
要了解BOB低频彩关于数据上的集群策略的更多信息,请参见管理集群策略还有我们关于集群策略的博客:允许使用集群策略进行完全管理控制的简单集群创建.