堆棧CLI

β

這個特性是在β

請注意

堆棧CLI需要磚CLI 0.8.3或以上。

堆棧CLI提供了一種方法來管理一堆磚資源,比如工作,筆記本電腦,和DBFS文件。你可以在本地存儲筆記本和DBFS文件並創建一個堆棧配置JSON模板定義映射從您的本地文件路徑在磚工作區,配置運行的工作筆記本。

使用堆棧CLI堆棧配置JSON模板部署和管理你的堆棧。

你跑磚煙囪的CLI子命令通過添加堆棧

磚煙囪——幫助
用法:磚煙囪的[選項]命令(ARGS)……(β)實用程序來部署和下載資源堆磚。選項:- v、版本(版本)——調試調試模式。顯示完整的堆棧跟蹤誤差。——概要文本使用CLI連接配置文件。默認的配置文件是“默認”。- h,幫助顯示此消息並退出。命令:部署部署一個堆棧的資源給一個JSON配置堆棧的用法:磚煙囪的部署[選項]CONFIG_PATH選項:- o,覆蓋包括覆蓋現有的工作區筆記本和DBFS文件(默認值:False)下載下載工作區筆記本一個堆棧的本地文件係統給定一個JSON堆棧配置模板。用法:磚堆下載[選項]CONFIG_PATH選項:- o,覆蓋包括覆蓋現有的工作區筆記本在本地文件係統(默認值:False)

部署一個堆棧,以一個工作區

這個子命令部署一個堆棧。看到堆棧設置學習如何建立一個堆棧。

磚煙囪的部署。/ json

堆棧配置JSON模板給一個例子json

下載堆棧筆記本變化

此子命令下載一個堆棧的筆記本。

磚堆下載。/ json

例子

堆棧設置

一個堆棧的文件結構

。├──筆記本|├──常見| |└──筆記本。scala |└──配置|├──環境。scala |└──設置。sql├──自由|└──圖書館。jar└──json

這個例子堆棧包含一個主要的筆記本筆記本/共同/ notebook.scala以及配置的筆記本電腦筆記本/配置文件夾中。有一個JAR庫依賴的堆棧lib / library.jarjson是協議棧的堆棧配置JSON模板。這就是傳遞到堆棧CLI堆棧的部署。

堆棧配置JSON模板

堆棧配置模板描述了堆棧配置。

貓json
{“名稱”:“example-stack”,“資源”:({“id”:“example-workspace-notebook”,“服務”:“工作區”,“屬性”:{“source_path”:“筆記本/共同/ notebook.scala”,“路徑”:“/用戶/ example@example.com/dev/notebook”,“object_type”:“筆記本”}},{“id”:“example-workspace-config-dir”,“服務”:“工作區”,“屬性”:{“source_path”:“筆記本/配置”,“路徑”:“/用戶/ example@example.com/dev/config”,“object_type”:“目錄”}},{“id”:“example-dbfs-library”,“服務”:“dbfs”,“屬性”:{“source_path”:“lib / library.jar”,“路徑”:“dbfs: / tmp / lib / library.jar”,“is_dir”:}},{“id”:“example-job”,“服務”:“工作”,“屬性”:{“名稱”:“例子堆棧CLI工作”,“new_cluster”:{“spark_version”:“7.3.x-scala2.12”,“node_type_id”:“i3.xlarge”,“aws_attributes”:{“可用性”:“現貨”},“num_workers”:3},“timeout_seconds”:7200年,“max_retries”:1,“notebook_task”:{“notebook_path”:“/用戶/ example@example.com/dev/notebook”}}}]}

每個工作,工作區筆記本,工作區目錄,DBFS文件,或者DBFS目錄是定義為一個ResourceConfig。每一個ResourceConfig代表一個工作區或DBFS資產包含的映射文件或目錄,它存在在本地(source_path),它將存在於工作區或DBFS (路徑)。

堆棧配置模板模式概述了堆棧配置模板的模式。

部署一個堆棧

你部署一個堆棧使用堆棧部署<配置文件>命令。

磚煙囪的部署。/ json

堆棧部署期間,DBFS和工作區資產上傳到你的磚創建工作空間和工作。

在堆棧部署時,StackStatusJSON文件部署保存在相同的目錄堆棧配置模板名稱,添加部署立即在. json擴展:(例如,。/ config.deployed.json)。這個文件是使用的堆棧CLI跟蹤過去的部署資源在您的工作區中。

堆棧狀態模式概述了模式的堆棧配置。

重要的

不要試圖編輯或移動堆棧狀態文件。如果你得到任何錯誤關於堆棧狀態文件,刪除文件和部署再試。

貓。/ config.deployed.json
{“cli_version”:“0.8.3”,“deployed_output”:({“id”:“example-workspace-notebook”,“databricks_id”:{“路徑”:“/用戶/ example@example.com/dev/notebook”},“服務”:“工作區”},{“id”:“example-workspace-config-dir”,“databricks_id”:{“路徑”:“/用戶/ example@example.com/dev/config”},“服務”:“工作區”},{“id”:“example-dbfs-library”,“databricks_id”:{“路徑”:“dbfs: / tmp / lib / library.jar”},“服務”:“dbfs”},{“id”:“example-job”,“databricks_id”:{“job_id”:123456年},“服務”:“工作”}),“名稱”:“example-stack”}

StackConfig

這些都是外領域的堆棧配置模板。所有字段是必需的。

字段名

類型

描述

的名字

字符串

的名字堆棧。

資源

的列表ResourceConfig

磚的資產。資源相關的三個服務(REST API名稱空間):工作區、工作,dbfs。

ResourceConfig

字段為每個ResourceConfig。所有字段是必需的。

字段名

類型

描述

id

字符串

資源的一個惟一的ID。ResourceConfig的獨特性是執行。

服務

ResourceService

REST API服務資源的運作。之一:工作,工作空間,或dbfs

屬性

ResourceProperties

字段是不同的不同的ResourceConfig服務。

ResourceProperties

資源的屬性ResourceService。田野被歸類為那些使用或不使用磚REST API。列出所有字段都是必需的。

服務

字段中使用的REST API堆棧CLI

字段隻在堆棧使用CLI

工作空間

路徑:字符串——遠程工作區筆記本或目錄的路徑。(交貨。/用戶/ example@example.com/notebook)

object_type:ObjectType——筆記本對象類型。隻能筆記本目錄

source_path:字符串——當地的源路徑工作區筆記本或目錄。堆棧配置模板文件的相對路徑或絕對路徑在您的文件係統。

工作

任何領域的設置或new_settings結構。唯一字段不是必需的設置或new_settings結構但需要堆棧CLI是:

名稱:字符串——工作部署的名稱。為了沒有創造太多的重複工作,堆棧CLI實施獨特的名字堆棧部署工作。

一個也沒有。

dbfs

路徑:字符串——遠程DBFS匹配路徑。必須從dbfs: /。(交貨。dbfs: / / / /樣本/路徑)

is_dir:BOOL——無論是DBFS路徑是一個目錄或一個文件中。

source_path:字符串——當地來源DBFS文件或目錄的路徑。堆棧配置模板文件的相對路徑或絕對路徑在您的文件係統。

ResourceService

每個資源屬於一個特定的服務與磚REST API。這些服務支持的堆棧CLI。

服務

描述

工作空間

一個工作區筆記本或目錄。

工作

磚的工作。

dbfs

DBFS文件或目錄。

堆棧狀態模式

StackStatus

創建一個堆棧狀態文件後一個堆棧使用CLI部署。頂級字段:

字段名

類型

描述

的名字

字符串

的名字堆棧。這個字段是在相同的領域StackConfig

cli_version

字符串

磚CLI用於部署的版本的堆棧。

deployed_resources

的列表ResourceStatus

每個部署資源的狀態。中定義的每個資源StackConfig,相應的ResourceStatus生成。

ResourceStatus

字段名

類型

描述

id

字符串

stack-unique ID的資源。

服務

ResourceService

REST API服務資源的運作。之一:工作,工作空間,或dbfs

databricks_id

DatabricksId

物理部署資源的ID。實際的模式取決於資源的類型(服務)。

DatabricksId

取決於服務一個JSON對象的字段。

服務

在JSON

類型

描述

工作空間

路徑

字符串

筆記本或目錄的絕對路徑在一個磚工作區。命名是一致的工作區API 2.0

工作

job_id

字符串

工作標識所示一個磚的工作區。這可以用於更新已部署工作。

dbfs

路徑

字符串

筆記本或目錄的絕對路徑在一個磚工作區。命名是一致的DBFS API 2.0