砖CLI的迁移

本文描述了如何从砖CLI或低于0.17版本迁移到砖CLI版本0.200或更高版本。砖CLI版本0.200及以上公共预览

为了简单起见,本文引用砖CLI版本0.17及以下的“遗留”CLI,和砖CLI 0.200及以上版本的“新”CLI。

更多关于遗留和新综合领先指标的信息,见:

卸载遗留CLI

如果你有你想要的遗留CLI安装和卸载它,使用皮普(或pip3,这取决于您的Python版本)运行卸载命令,如下所示:

皮普卸载databricks-cli

安装新的CLI

如果你不已经有了新的CLI安装,安装它,明白了设置CLI

验证CLI安装

如果你不确定你是否使用新的CLI,按照说明在本节中,根据需要来验证和调整。你遵循这些指令之前,确保退出任何Python虚拟环境,conda环境,或类似的环境。

检查默认安装CLI的版本,运行以下命令:

砖- v

如果版本号不是你期望什么,做以下之一:

  • 如果你想使用CLI的只有一个版本:卸载以前版本的CLI不再需要使用。您可能需要更新您的操作系统的路径这剩余的版本的CLI的路径,你想用上市。

  • 如果你想继续使用CLI的多个版本:预谋的完整路径CLI的版本,您想要使用每个调用CLI。

  • 如果你想继续使用CLI的多个版本,但你不想保持将完整路径CLI是你最经常使用的版本:确保完整路径,首先列出在你的操作系统的版本路径。请注意,您必须预先考虑的完整路径中未列出的第一个版本的CLI您的操作系统路径

更新操作系统的路径,请执行以下操作:

  1. 的路径列表安装通过运行以下命令之一:

    这一砖#或:在砖
  2. 得到你想要的路径安装使用没有将完整路径每对CLI的调用。如果你不确定这是路径,运行每个位置的完整路径,紧随其后- v,例如:

    /usr/local/bin/databricks - v
  3. 把安装的路径,你想先使用路径运行以下命令,更换/usr/local/bin您想要使用的路径。不添加的这条路。例如:

    出口路径=“/ usr /地方/ bin:美元的路径
  4. 来验证路径是正确地设置为当前终端会话,运行紧随其后的是- v并检查版本号:

    砖- v
  5. 路径这样每次你启动终端,从步骤3添加命令shell初始化文件。例如,对于Zshell,该文件通常位于~ / . zshrc。Bash,该文件通常位于~ / . bashrc。对于其他外壳,看到您的shell提供者的文档。

  6. 你更新你的初始化文件之后,必须重新启动您的终端应用更新路径价值。

  1. 右键单击安装没有将您想要使用完整路径每对CLI的调用。

  2. 点击打开文件位置

  3. 注意,路径例如,C:\Windows

  4. 开始菜单、搜索环境变量

  5. 点击编辑环境变量为您的帐户

  6. 选择路径变量用户变量<用户名>部分。

  7. 点击编辑

  8. 点击

  9. 输入您想要添加的路径,没有databricks.exe(如C:\Windows)。

  10. 使用向上移动按钮来移动路径,只需添加到列表的开始。

  11. 点击好吧

  12. 来验证路径正确设置,打开一个新命令提示符运行紧随其后的是- v,检查版本号:

    砖- v

使用额外的身份验证类型

遗留CLI和新的CLI都支持砖个人访问令牌的身份验证。然而,砖建议你使用其他的砖的身份验证类型如果可能,只有新的CLI支持。

个人访问令牌认证,如果你必须使用砖砖建议你使用一个相关的服务主体而不是砖帐户或用户工作区。看到提供一个服务主体为砖自动化UI -砖

新的CLI支持OAuth标记除了砖个人访问令牌。这些额外的标记是更安全的,因为他们通常在一小时内到期,而砖个人访问令牌可以无限期有效从一天到。这一点尤其重要,如果令牌是不小心签入到版本控制系统,由其他人可以访问。此外,新的CLI可以到期时自动刷新这些额外的令牌,而刷新数据砖个人访问令牌是一个手动过程或很难自动化。

有关更多信息,请参见设置身份验证

命令组和命令的比较

下表列出了遗留CLI命令组和他们的新CLI命令组的等价物。综合领先指标之间存在显著差异,额外的表遗留CLI命令或选项列表及其新的CLI命令或选项的等价物。

命令组

遗留命令组

新命令组

cluster-policies

cluster-policies。所有的命令名称都是一样的。

集群

集群。所有的命令名称都是一样的。

配置

配置。看到配置选项

fs

fs。看到fs命令

。看到组织的命令

instance-pools

instance-pools。所有的命令名称都是一样的。

工作

工作。所有的命令名称都是一样的。

。所有的命令名称都是一样的除了列表。的列表命令不再可用;使用all-cluster-statuses集群状态而不是命令。

管道

管道。看到管道命令

回购

回购。所有的命令名称都是一样的。

运行

工作。看到运行命令

秘密

秘密。看到秘密的命令

堆栈

在新的CLI。砖建议您使用砖起程拓殖的提供者代替。

令牌

令牌。看到令牌的命令

unity-catalog

各种各样的。看到unity-catalog命令组

工作空间

工作空间。看到工作区命令

配置选项

遗留的选择

新选项

- o

遗留CLI使用- oOAuth身份验证。新的CLI OAuth的看OAuth机器对机器(M2M)身份验证OAuth user-to-machine (U2M)身份验证。新的CLI重新改- o指定是否CLI在文本或JSON格式输出。

——oauth

新的CLI OAuth的看OAuth机器对机器(M2M)身份验证OAuth user-to-machine (U2M)身份验证

- s——范围

新的CLI OAuth的看OAuth机器对机器(M2M)身份验证OAuth user-to-machine (U2M)身份验证

- t——令牌

- t——令牌(相同)

- f——token-file

在新的CLI。

——主机

——主机(相同)

——aad-token

使用——主机并指定一个Azure Active Directory (Azure)令牌当提示,而不是砖个人访问令牌。

——不安全

在新的CLI。

——jobs-api-version

在新的CLI。新的CLI API 2.1只使用工作。调用遗留工作遗留CLI API 2.0使用看看乔布斯CLI(遗留)

——调试

新的CLI的调试和日志记录调试模式

——简介

——简介(同样的)或- p

- h——帮助

- h——帮助(相同)

fs命令

所有fs在遗留CLI命令是相同的在新的CLI,除了fsmv这不是新的CLI中可用。

遗留的命令

新命令

fs

fs(相同)

fscp

fscp(相同)

fsls

fsls(相同)

fsmkdir

fsmkdir

fsmv

在新的CLI。

fsrm

fsrm(相同)

组织的命令

遗留的命令

新命令

添加成员

补丁

创建

创建(相同)

删除

删除(相同)

列表

列表(相同)

国家

列表

list-parents

列表

remove-member

补丁

管道命令

遗留的命令

新命令

管道创建

管道创建(相同)

管道删除

管道删除(相同)

管道部署

管道创建管道编辑

管道编辑

管道更新

管道得到

管道得到(相同)

管道列表

管道list-pipeline-events管道list-pipelines管道列表

管道重置

管道重置(相同)

管道开始

管道开始更新

管道停止

管道停止(相同)

管道更新

管道更新(相同)

运行命令

遗留的命令

新命令

运行取消

工作cancel-run

运行得到

工作运行

运行输出

工作get-run-output

运行列表

工作列表用

运行提交

工作提交

秘密的命令

遗留的命令

新命令

秘密创建范围

秘密创建范围(相同)

秘密删除

秘密delete-secret

秘密delete-acl

秘密delete-acl(相同)

秘密delete-scope

秘密delete-scope(相同)

秘密get-acl

秘密get-acl(相同)

秘密列表

秘密list-secrets

秘密list-acls

秘密list-acls(相同)

秘密list-scopes

秘密list-scopes(相同)

秘密

秘密put-secret

秘密put-acl

秘密put-acl(相同)

秘密

秘密put-secret

秘密write-acl

秘密put-acl

令牌的命令

遗留的命令

新命令

令牌创建

令牌创建(相同)

令牌列表

令牌列表(相同)

令牌撤销

令牌删除

unity-catalog命令组

unity-catalog<命令>在遗留CLI变成<命令>新的CLI。

遗留命令组

新命令组

unity-catalog目录

目录(相同但下降unity-catalog)

unity-catalogexternal-locations

external-locations(相同但下降unity-catalog)

unity-catalog血统

在新的CLI。看到数据沿袭API

unity-catalogmetastores

metastores(相同但下降unity-catalog)

unity-catalog权限

奖助金

unity-catalog供应商

供应商(相同但下降unity-catalog)

unity-catalog收件人

收件人(相同但下降unity-catalog)

unity-catalog模式

模式(相同但下降unity-catalog)

unity-catalog股票

股票(相同但下降unity-catalog)

unity-catalogstorage-credentials

storage-credentials(相同但下降unity-catalog)

unity-catalog

(相同但下降unity-catalog)

工作区命令

遗留的命令

新命令

工作空间删除

工作空间删除(相同)

工作空间出口

工作空间出口(相同)

工作空间export_dir

工作空间出口

工作空间进口

工作空间进口(相同)

工作空间import_dir

工作空间进口

工作空间列表

工作空间列表(相同)

工作空间ls

工作空间列表

工作空间mkdir

工作空间mkdir(相同)

工作空间rm

工作空间删除

违约和位置参数

大多数新的CLI命令至少有一个默认参数没有一篇选项。一些新的CLI命令有两个或两个以上的位置参数,必须指定一个特定的顺序,没有相应的选项。这不同于遗留CLI,大多数命令对所有参数需要指定选项。例如,新的CLI集群得到命令以一个集群ID作为默认参数。然而,遗留CLIclusers得到命令要求您指定一个——cluster-id随着集群ID选项。例如:

遗留CLI:

#这是遗留CLI。砖集群——cluster-id1234年567890 - a1b23c4d#这* *不* *处理遗留CLI——“错误:#失踪。之一(“cluster-id”、“集群名称”)必须提供。”砖集群获得1234年567890 - a1b23c4d

新的CLI:

#这是新的CLI。砖集群获得1234年567890 - a1b23c4d#这* *不* *使用新的CLI -“错误:未知的国旗:——cluster-id”砖集群——cluster-id1234年567890 - a1b23c4d

另外一个例子,新的CLI奖助金得到命令有两个默认参数:可获得的类型可到手的的全名紧随其后。然而,遗留CLIunity-catalog权限得到命令要求您指定一个——< securable-type >选择以及可获得的的全名。例如:

遗留CLI:

砖unity-catalog main.default权限得到——模式

新的CLI:

#这是新的CLI。砖拨款模式main.default#这* *不* *使用新的CLI -“错误:未知的国旗:——模式”砖main.default赠款,模式

调试模式

遗留CLI提供了一个——调试选择显示整个堆栈跟踪错误。新的CLI,——调试选择是不认可。相反,使用以下选项:

  • 使用——日志文件<路径>写日志信息到文件中指定<路径>。如果不提供这个选项,日志信息输出到stderr。指定——日志文件还没有指定——进行日志级别导致没有日志信息被写入到文件中。

  • 使用——日志格式<类型>指定的格式记录的信息。<类型>可以文本(默认,如果未指定)json

  • 使用——进行日志级别<格式>指定级别的信息记录。允许的值是禁用(默认,如果未指定)跟踪,调试,信息,警告,错误

遗留CLI,下面的例子显示了完整的堆栈跟踪误差:

砖fs ls /调试#输出:## HTTP调试启用# NoneType:没有#错误:路径/必须从“dbfs: /

新的CLI,下面的例子完整的堆栈跟踪记录到一个文件中命名new-cli-errors.log在当前工作目录中。堆栈跟踪写入JSON格式的文件:

砖fs ls /日志文件new-cli-errors。日志,日志格式json,进行日志级别跟踪#输出:##错误:预期dbfs路径(dbfs: /前缀):/##(完整的堆栈跟踪也写入new-cli-errors。日志文件)。

常见问题

本节列出了常见问题从遗留迁移到新的CLI。

遗留CLI正在发生什么?

遗留CLI仍然可用,但是不接受任何非关键更新。的遗留CLI文件反映了这一点。砖建议用户迁移到新的CLI尽快。

遗留CLI一直在实验有免责声明,砖计划没有新功能工作遗留CLI和遗留CLI通过砖支持渠道不支持。

当遗产CLI会过时吗?

遗留CLI一直在实验有免责声明,砖计划没有新功能工作遗留CLI和遗留CLI通过砖支持渠道不支持。

砖还没有建立一个日期或时间分解遗留CLI。然而,砖建议用户迁移到新的CLI尽快。

新的CLI会被释放时一般可用(GA) ?

发布日期或时间释放新的CLI GA尚未建立。这将取决于砖接收来自用户的反馈在公共预览。

关键的区别是什么遗留和新综合领先指标?

  • 遗留CLI作为一个Python包被释放。新的CLI发布作为一个独立的可执行文件,不需要安装任何运行时依赖关系。

  • 新的CLI砖REST api的完全覆盖。遗留CLI没有。

  • 新的CLI可用作为公共预览。遗留CLI仍处于试验状态。

新的CLI完全特性CLI 1:1的遗产?

新的CLI覆盖几乎所有的遗留CLI命令。然而,值得注意的是,在新的CLI在遗留CLI命令组。同时,一些遗留CLI命令等组织unity-catalog运行被重构为新新的CLI命令组。移民的指导,请参阅本文前面提供的信息。

我怎么从遗留迁移到新的CLI吗?

移民的指导,请参阅本文前面提供的信息。注意新的CLI不是作为遗产CLI的替代,需要一些设置从遗留到新的CLI。

遗留和新综合领先指标存在的可以安装在同一台机器上吗?

是的。安装的遗留和新综合领先指标可以在同一台机器上存在,但他们必须位于不同的目录。因为可执行文件都是命名你必须控制,运行可执行文件默认情况下通过配置您的机器路径。如果你想要新的CLI但不知何故不小心跑遗留CLI相反,默认情况下遗留CLI将运行新的CLI使用相同的参数和显示以下警告消息:

砖CLI的<新版本号>在<新路径>当前路径找到喜欢跑步CLI < old-version-number > <旧路>因为安装和可用的路径,我假设你试图运行新版本。如果你想禁用此行为可以设置DATABRICKS_CLI_DO_NOT_EXECUTE_NEWER_VERSION = 1。执行CLI <新版本号>…- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -砖CLI的<新版本号>

如前面所示警告消息,您可以设置DATABRICKS_CLI_DO_NOT_EXECUTE_NEWER_VERSION环境变量来1禁用此行为和运行遗留CLI。

砖资产包也可作为公共预览?

不。砖资产包在一个私人预览新的CLI中的状态,即使在公共预览新的CLI。尝试砖资产包私人的预览,伸出你的砖接触。

得到帮助

得到帮助从遗留CLI迁移到新的CLI,看到以下资源: