【Azure 架构师学习笔记】- Azure Databricks (11) -- UC搭建

发布于:2025-02-15 ⋅ 阅读:(6) ⋅ 点赞:(0)

本文属于【Azure 架构师学习笔记】系列
本文属于【Azure Databricks】系列。
接上文 【Azure 架构师学习笔记】- Azure Databricks (10) – UC 使用

前言

由于ADB 的更新速度很快,在几个月之后重新搭建ADB 时发现UC 已经更新了很多,为了后续做ADB 的功能测试时能有一个更准确的环境,这里从新搭建一次基于目前最新版本的UC。

启用UC

当有了一个ADB 之后,使用下面的步骤即可得到一个UC 环境。

在这里插入图片描述

Step 1:创建Storage Account(SA)

这里的SA是Databricks内部使用的,存储UC metadata和meanaged Tables。如果是Azure的storage account,注意一定要为ADLS Gen2,即启用了“Hierarchical namespace”。

下图是为了这次所创建的ADLS。

在这里插入图片描述

Step 2:创建Access Connector for Databricks

UC访问外部资源需要借助某些“工具”,访问ADLS 则需要Access Connector。在创建过程中需要保存资源ID,在后面需要使用。

在这里插入图片描述

在这里插入图片描述
可以选择system assigned MI 或者user assigned MI。如果所在企业没有明文规定,并且不考虑被多个ADB 共用,那么建议使用System MI, 比较省事。使用User MI 更多可以考虑多个ADB 共用权限。

在这里插入图片描述
记下这个ID:
在这里插入图片描述

Step 3:配置Connector在Storage Account和container上的权限

这里的权限主要是RBAC, 最少需要“Storage Blob Data Contributor” 角色。而授权的对象则是Step 2中的connector(Managed Identity)

Step 4:创建metastore

进去ADB 之后, 从下图中跳到管理界面,这个地方需要你有account admin 权限。

在这里插入图片描述
你也可以添加其他账号协助管理:
在这里插入图片描述
从catalog中进去管理UC, 如果首次创建则需要先创建MetaStore。
在这里插入图片描述
创建MetaStore
在这里插入图片描述
按照提示和前面创建的资源配置, 注意ADLS Gen2 path中的格式:

在这里插入图片描述
如果创建过程中报下面的错误,则意味着权限还不够:

Could not access location
This path doesn’t exist or we couldn’t access it with the credential provided. Metastores require a directory path.

在这里插入图片描述
这个时候到ADLS 的path中,添加如下的ACL。

在这里插入图片描述
再次回到MetaStore即可创建:

在这里插入图片描述

Step 5:把Workspace与MetaStore 关联

在创建好MetaStore之后,下一步就是assign catalog到workspace中。选中并点击assign即可。

在这里插入图片描述
配置完成:
在这里插入图片描述

检查UC

回到ADB workspace,然后点击catalog,可以从下图中看到这个workspace已经与MetaStore关联成功也就是由UC 控制。

在这里插入图片描述
检查集群状态,可以看到下面也有了UC 的标记。证明集群也已经收到了UC 的控制。

在这里插入图片描述
如果对比集群类型,可以看到已经启用了UC 和未启用UC的不同,下面这个图是启用了UC 之后可以选择的policy类型。

在这里插入图片描述

下面这个图是未启用UC的集群policy
在这里插入图片描述

小结

其实搭建UC 并不是主要目的, 最近因为需要使用“Medallion Architecture”, 所以搭建一个环境来做后续的尝试。