使用帐户控制台创建和管理工作区

工作区是云服务帐户中的Databricks部署。它为指定的一组用户提供了使用Databricks资产的统一环境。本文描述了如何创建和管理工作区。

请注意

Databricks对使用Databricks单元(DBUs)中的Databricks收费。工作负载消耗的DBUs数量取决于许多因素,包括Databricks计算类型(多用途或工作)和谷歌云机类型。详细信息请参见定价页.如果您对价格有疑问,请联系Databricks代表。

您的谷歌云账户会产生额外的费用:

  • 谷歌Cloud向您收取Databricks为Databricks基础设施在您的帐户中创建的GKE集群的每个工作空间的额外费用。截至2021年3月30日,该GKE集群的成本约为200美元/月,与GKE集群运行的天数成比例。价格可以变化,所以检查最新的价格

  • 即使Databricks集群空闲,GKE集群成本也会生效。为减少此空闲时间成本,如果Databricks Runtime集群五天内没有活动,Databricks将删除帐户中的GKE集群。其他资源如VPC、GCS桶等保持不变。下一次Databricks Runtime集群启动时,Databricks将重新创建GKE集群,这将增加初始Databricks Runtime集群启动时间。对于删除GKE集群如何降低每月成本的示例,假设您在每月的第一天使用了Databricks Runtime集群,但在每月的其余时间都没有使用:您的GKE使用量将是空闲超时生效前的五天,没有其他时间,每月成本约为33美元。

Databricks不支持对正在运行的GKE集群进行配置更改。如果您在创建GKE集群配置后自定义该集群,并且该集群由于空闲超时而被删除,则重新创建的集群将不包括您的自定义。

使用帐户控制台创建工作空间

您可以使用帐户控制台创建一个工作区。在创建新工作空间之前,请确保了解所有配置设置。在尝试创建工作空间之后,您无法修改工作空间配置。

重要的

要创建工作空间,您的帐户上必须有一些必需的谷歌权限,可以是谷歌账户或者一个服务帐户.看到需要的权限

创建一个工作区:

  1. 为你的新工作空间选择一个网络类型:

  2. 以Databricks帐户所有者或admin帐户登录账户控制台然后点击工作区图标。这是帐户控制台默认视图。

  3. 点击创建工作区

    创建工作区
  4. 工作区名称字段,为该工作区输入一个人类可读的名称。名称只能由数字、字母、“_”和“-”组成,长度为3 ~ 30个字符。

  5. 地区字段,为工作区的网络和集群选择一个区域。有关受支持区域的列表,请参见支持的Databricks区域

  6. 谷歌云项目ID字段,输入您的谷歌云项目ID。要了解如何获取项目ID,请参见需求

    如果你计划使用customer-managed VPC对于这个工作区:

    • 如果是独立的VPC,设置为VPC的项目ID。

    • 如果是共享VPC,将此设置为此工作区资源的项目ID。

  7. 网络设置。此步骤因工作空间的网络类型而异。

    对于由客户管理的VPC,单击Customer-managed VPC选项卡。

    • 可选地指定自定义子网大小。如果将这些字段保留为空,Databricks将使用默认值。

      重要的

      正确配置Databricks工作空间使用的GKE子网。您不能在部署工作区之后更改它们。如果Databricks子网的地址范围太小,则工作空间将耗尽其IP空间,从而导致Databricks作业失败。要确定所需的地址范围大小,Databricks提供了一个子网计算器作为一个微软Excel电子表格

      点击高级配置指定自定义IP范围CIDR格式。这些字段的IP范围不能重叠。所有IP地址必须完全在以下范围内:10.0.0.0/8100.64.0.0/10172.16.0.0/12192.168.0.0/16,240.0.0.0/4

      这些IP范围的大小会影响工作空间的最大节点数量。

      • 子网CIDR字段,输入CIDR格式的IP范围用于子网。GKE集群的节点都在该IP范围内。这也是GKE集群所在子网的IP范围。Range不能大于/ 9不小于/ 29

      • Pod地址范围字段,输入CIDR格式的IP范围作为GKE pod的辅助IP范围。Range不能大于/ 9不小于/ 21

      • 服务地址范围字段,输入CIDR格式的IP范围作为GKE服务的备用IP范围。Range不能大于/ 16不小于/ 27日

    • 指定一个网络配置表示您的VPC及其子网:

      • 网络模式:设置为Customer-managed网络

      • 网络配置:选择网络配置的名称。

  8. (可选)配置私有GKE集群详细信息。

    • 默认情况下,Databricks创建私有GKE集群,而不是公共GKE集群。私有集群的GKE节点在公共互联网上没有可路由的公共IP。该选项需要Databricks创建一个额外的谷歌云云NAT。对于私有集群,您可以选择为GKE主资源的IP范围设置一个自定义值。点击高级配置然后设置GKE主资源的IP范围字段。所有IP地址必须完全在以下范围内:10.0.0.0/8100.64.0.0/10172.16.0.0/12192.168.0.0/16,240.0.0.0/4.范围必须有大小/ 28

    • 如果要使用公共GKE集群,请单击高级配置和取消选择启用私有集群

  9. 点击保存

  10. 如果这是您第一次创建工作空间,则会弹出谷歌窗口要求您选择谷歌帐户。完成下面的说明。

    重要的

    如果您没有看到谷歌帐户弹出:

    • 如果页面没有改变,你的网页浏览器中可能有一个弹出窗口阻止程序。寻找关于阻塞弹出窗口的通知。配置您的弹出窗口阻止程序,以允许弹出窗口从域accounts.gcp.www.neidfyre.com

    • 如果您没有看到谷歌对话框,但您的浏览器现在显示了一个工作区列表,则继续执行下一步。

    1. 在谷歌对话框中,选择您用来登录帐户控制台的谷歌帐户。

    2. 在下一个屏幕上,回复请求附加范围的同意请求。点击允许

      增量授权

      在您第一次尝试创建工作区时,将显示同意屏幕。对于连续的新工作区,谷歌不显示同意屏幕。如果使用谷歌帐户工具撤销对数据库的同意,谷歌将重新显示同意界面。

  11. 确认您的工作空间已成功创建。在工作区列表中的工作区旁边,单击开放.要查看工作空间状态并测试工作空间,请参见查看工作空间状态并测试新工作空间

  12. 保护工作区的GCS桶。看到在项目中保护工作空间的GCS桶

    当您创建工作空间时,谷歌Cloud上的Databricks会在谷歌Cloud项目中创建两个谷歌云存储(GCS)桶。Databricks强烈建议您保护这些GCS桶,使它们不能从谷歌Cloud上的Databricks外部访问。

在工作空间创建期间,Databricks在项目上启用了一些必需的谷歌api(如果它们尚未启用的话)。看到在工作区的项目上启用谷歌api

在工作区的项目上启用谷歌api

在创建工作空间期间,Databricks会自动在谷歌Cloud项目上启用以下必需的谷歌api(如果它们尚未启用):

在工作空间删除期间,这些api不会自动禁用。

工作空间创建限制

在同一个谷歌Cloud项目中,每周最多可以创建200个工作区。如果超过此限制,创建工作区将失败,并显示错误消息:“创建自定义云IAM角色 in project rejected”。

查看工作空间状态并测试新工作空间

创建工作区(或更新失败的工作区配置)后,可以在工作区页面。查询工作空间的创建状态。

  1. 查看状态为您的新工作区列:

    • 供应:正在进行中。等待几分钟,刷新页面。

    • 运行:工作空间部署成功。继续执行此过程中的下一步。

    • 失败的:部署失败。

    • 禁止:请与您的Databricks代表联系。

    • 取消:在取消过程中。

  2. 当你的新工作场所运行,测试你的工作空间:

    1. 从工作区行的Actions菜单中选择访问工作区

    2. 使用您的帐户所有者或帐户管理员电子邮件地址和密码登录。

如果新工作区的状态为失败的,单击工作区可查看详细的错误消息。如果您不明白这个错误,请与Databricks代表联系。

不能更新失败工作区的配置。您必须删除它,并尝试创建一个新的工作空间。

登录到工作区

  1. 作为创建工作区的用户,登录到账户控制台然后点击工作区图标。

  2. 在显示工作区的行上,单击行动,然后访问工作区.或者,单击工作区名称,然后单击URL标签。

  3. 使用您的帐户所有者或帐户管理员电子邮件地址和密码登录。如果你配置了单点登录,按单点登录选项卡,然后单击大蓝色单点登录按钮。

在项目中保护工作空间的GCS桶

当您创建工作空间时,谷歌Cloud上的Databricks会在您的GCP项目中创建两个谷歌Cloud Storage GCS桶:

  • 一个GCS桶存储在使用各种Databricks特性(如创建笔记本)时生成的系统数据。此桶包括notebook修订、job运行详细信息、命令结果和Spark日志。

  • 的工作空间的根存储是另一个GCS桶存储数据库文件系统(DBFS).DBFS根桶不用于存储生产客户数据。在其他GCS桶中为生产客户数据创建其他数据源和存储。您可以选择作为Databricks File System (DBFS)挂载附加的GCS桶。看到谷歌云存储

Databricks强烈建议您保护这些GCS桶,使它们不能从谷歌Cloud上的Databricks外部访问。

要确保这些GCS桶的安全:

  1. 在浏览器中,转到GCP云控制台

  2. 选择承载Databricks工作空间的谷歌Cloud项目。

  3. 转到该项目的存储服务页面。

  4. 为你的新工作空间寻找水桶。他们的名字是:

    • 砖——<工作区id >

    • 砖——<工作区id >系统

  5. 对于每个桶:

    1. 单击桶查看详细信息。

    2. 单击权限选项卡。

    3. 检查Members列表中的所有条目,并确定是否期望对每个成员进行访问。

    4. 检查我的条件列。某些权限,例如那些名为“工作空间的Databricks服务帐户”的权限,具有IAM条件,将其限制为某些桶。谷歌云控制台UI不评估条件,因此它可能显示实际上无法访问桶的角色。

      特别注意没有IAM条件的角色。考虑在这些方面增加限制:

      • 当添加项目级或以上级别的存储权限时,使用IAM条件排除Databricks桶或只允许特定的桶。

      • 选择所需的最小权限集。例如,如果只需要读访问,则指定Storage Viewer而不是Storage Admin。

        警告

        不要使用基本角色,因为它们太宽泛了。

    5. 启用谷歌云数据访问审计日志。Databricks强烈建议您为Databricks创建的GCS桶启用数据访问审计日志记录。这样可以更快地调查可能出现的任何问题。请注意,数据访问审计日志记录可能会增加GCP的使用成本。有关说明,请参见配置数据访问审计日志

如果您对保护这些GCS桶有疑问,请与Databricks代表联系。

删除工作区

  1. 账户控制台然后点击工作区图标。

  2. 在工作区所在行上,单击行动,然后删除.或者,单击工作区名称,单击配置按钮,并选择删除工作空间

  3. 在确认对话框中,键入工作区名称并单击确认删除

    警告

    工作区删除是不可逆的。

  4. 检查删除工作区后可能需要的清理步骤。看到删除工作区后清理谷歌云对象

删除工作区后清理谷歌云对象

删除工作空间后,Databricks创建的两个GCS桶如果不为空,可能不会自动删除。例如,在包含工作区的bucket中,可能存在您直接或间接添加的文件,如库或其他文件DBFS根

删除工作区后,您可以在项目的谷歌Cloud Console中手动查找并删除其余对象。进入如下页面,将替换为您的项目ID:https://console.cloud.google.com/dm/deployments?project= <项目id >