自動化Azure磚平台配置和配置Beplay体育安卓版本
2020年9月16日 在工程的博客
表的內容
介紹
在我們的以前的博客,我們討論了現實的挑戰與擴展出一個數據平台跨多個團隊和如何缺乏自動化創新和減緩市場推廣造成不利影響。Beplay体育安卓版本企業需要一致的和可擴展的解決方案,可以利用可重複的模板來無縫地遵守企業治理政策,與目標引導統一數據分析環境跨數據團隊。與微軟Azure磚,我們已經采取了所有對象的api方法,使快速配置和引導雲計算的數據環境,通過集成到現有的企業DevOps工具不需要客戶重新發明輪子。beplay体育app下载地址在這篇文章中,我們將介紹這樣一個雲部署的自動化過程使用不同的Azure磚api。
配置Azure磚的過程數據環境看起來如下:
- 部署Azure磚工作區
- 提供用戶和組
- 創建集群政策和集群
- 添加用戶和組的權限
- 在公司網絡安全訪問工作區(IP訪問列表)
- Beplay体育安卓版本平台訪問令牌管理
完成上麵的,我們將使用api可用下列IaaS特性或功能的Azure磚:
- 令牌管理API允許管理員管理用戶的雲服務提供商的個人訪問令牌(PAT),包括:
- 監控和撤銷用戶的個人訪問令牌。
- 控製未來的一生令牌在你的公共雲的工作區。
- 控製哪些用戶可以創建和使用拍。
- 廣告令牌支持允許使用AAD標記來調用Azure磚api。還可以使用服務主體作為一流的身份。
- IP訪問列表確保用戶隻能通過特權網絡連接到Azure磚形成一個安全的周長。
- 集群政策是一個構造,允許在工作區簡化集群管理用戶,管理員也可以執行不同的安全與成本控製措施。
- 權限API允許自動化設置訪問控製等不同的Azure磚對象集群、就業、池、筆記本、模型等。
自動化的選擇
有幾個選項可以使用Azure磚api:
- 磚起程拓殖的資源提供者可以結合Azure提供者創建一個端到端的架構,利用起程拓殖的依賴和狀態管理功能。
- Python(或任何其他編程語言)可以用來調用api (示例解決方案)提供一種方式來集成與第三方或本土DevOps工具。
- 一個現成的API客戶端郵遞員可以直接用於調用API。
為簡單起見,我們將使用下麵的郵差的方法。
通用工作流
- 使用Azure廣告服務主體創建一個Azure磚工作區。
- 使用服務主體身份設置<我>IP訪問列表我>確保工作區隻能從特權訪問網絡。
- 使用服務主體身份設置<我>集群政策我>為了簡化集群創建工作流。管理員可以定義一組策略,可以分配給特定的用戶或組。
- 使用服務主要提供用戶和組身份使用SCIM API(替代SCIM供應從法)
- 使用服務主體身份限製用戶個人訪問令牌(PAT)權限使用<我>令牌管理我>一個PI
- 所有用戶(較主要的身份)將使用Azure廣告令牌連接到工作區api。這樣可以確保有條件訪問(MFA)總是執行。
的必備條件
創建Azure資源組和虛擬網絡
請繼續,pre-create Azure資源組。我們將部署Azure磚工作區在客戶管理虛擬網絡(聯接)。VNET pre-creation是可選的。請參考這個指南理解VNET需求。
Azure應用程序/服務主體的條款
我們將使用Azure服務主體自動化部署過程,使用這指南,請創建一個服務主體。請生成一個新的客戶秘密,一定要記下以下細節:
- 客戶機Id
- 客戶秘密(服務主體生成的秘密)
- Azure訂閱Id
- Azure承租者Id
將角色分配給服務主體
導航到Azure資源組,你計劃部署Azure磚工作區並添加“貢獻者”角色的服務主體。
配置郵差環境
我們將使用Azure磚手臂的REST API選項提供一個工作區。這不是困惑與REST API為不同的對象在一個工作區。
下載郵差集合在這裏。
收集包括幾個部分
環境配置文件已經導入到郵遞員,請繼續編輯它通過單擊“齒輪”按鈕。
根據您的設置配置環境
變量名 | 價值 | 描述 |
Azure訂閱細節 | ||
tenantId | Azure承租者ID | 找到它在這裏 |
subscriptionId | Azure訂閱ID | 找到它在這裏 |
clientCredential | 服務主體的秘密 | |
clientId | 服務主體的ID | |
resourceGroup | 資源組名 | 用戶定義資源組 |
不斷的使用 | ||
managementResource | https://management.core.windows.net/ | 常數,更多的細節在這裏 |
databricksResourceId | 2 ff814a6 - 3304 - 4 - ab8 - 85 - cb - cd0e6f879c1d | 常數,獨特applicationId標識Azure磚工作區資源在Azure |
Azure磚通過手臂模板部署特定的變量 | ||
workspaceName | 例:adb-dev-workspace | 獨特的名字到Azure磚工作區 |
VNETCidr | 例:11.139.13.0/24 | 更多的細節在這裏 |
VNETName | 例:adb-VNET | 唯一的名稱給亞行部署的聯接,如果存在一個聯接我們將使用它,否則它將創建一個新的。 |
publicSubnetName | 例:adb-dev-pub-sub | 獨特的名字中的子網VNET Azure磚在哪裏部署。我們強烈建議你讓手臂模板創建這個子網而不是您之前創建它。 |
publicSubnetCidr | 例:11.139.13.64/26 | 更多的細節在這裏 |
privateSubnetName | 例:adb-dev-pvt-sub | 唯一的名稱給亞行的子網內VNET部署。我們強烈建議你讓手臂模板創建這個子網而不是您之前創建它。 |
privateSubnetCidr | 例:11.139.13.128/26 | 更多的細節在這裏 |
nsgName | 例:adb-dev-workspace-nsg | 網絡安全組附加到Azure磚子網。 |
pricingTier | 溢價 | 可用選項溢價或標準,更多的細節在這裏,IP-Access-List功能需要溢價層 |
工作區標簽 | ||
標簽1 | 例:dept101 | 演示如何設置標簽Azure磚工作區 |
提供Azure磚工作區
生成AAD訪問令牌
我們將使用Azure廣告訪問令牌要部署工作空間,利用OAuth客戶機憑據工作流,也稱為兩條腿OAuth訪問網站資源通過使用應用程序的身份。這種類型的授權是通常用於服務器到服務器交互,必須在後台運行,不直接與用戶交互。
執行<我>廣告令牌管理資源我>一個PI返回AAD訪問令牌將被用於部署到Azure磚工作區,並檢索部署狀態。訪問令牌是有效的<我>599秒我>默認情況下,如果你遇到令牌過期問題,那麼請繼續,重新運行這個API調用再生訪問令牌。
部署工作空間使用手臂的模板
手臂模板為了部署利用Azure磚工作區。手臂模板作為請求體載荷步中<我>提供數據磚工作區我>內部<我>提供工作空間我>如上突出顯示部分。
如果手臂模板中指定子網存在然後我們將使用那些否則將為您創建。Azure磚工作區將部署在你聯接和一個默認的網絡安全組將創建和連接到工作區中所使用的子網。
得到工作空間網址
工作區部署大約需要5 - 8分鍾。執行“部署狀態和工作區url”調用返回工作區在後續的調用中,我們將使用URL。
我們設置一個全局變量<我>“workspaceUrl”我>在測試步驟提取值的響應。我們使用這個全局變量在隨後的API調用。
注意在使用Azure服務主體作為身份在Azure磚我>
請注意,Azure服務主體被認為是一流的身份在Azure磚,可以調用所有的API。使他們有別於用戶身份的一件事是,服務主體沒有訪問web應用程序的UI即不能登錄到工作空間的web應用程序和執行UI功能方式像你和我這樣的典型用戶執行。服務主體主要是用於調用API無頭的方式。
為身份驗證生成訪問令牌
來進行身份驗證和訪問Azure磚REST api,我們可以使用下麵的:
- 法訪問令牌生成的服務主體
- 訪問令牌由Azure廣告
- 默認到期是599秒
- Azure磚個人訪問令牌生成的服務主體
- Beplay体育安卓版本平台訪問令牌由Azure磚
- 默認到期設置由用戶,通常在幾天或幾個月
在本節中,我們證明這兩個標記的使用
為Azure磚API的交互生成AAD訪問令牌
生成油氣服務主體我們將使用的令牌客戶端憑證流AzureDatabricks登錄應用程序的資源使用對象資源id是惟一確定的<我>2 ff814a6 - 3304 - 4 - ab8 - 85 - cb - cd0e6f879c1d我>。
響應包含一個AAD訪問令牌。我們將設置一個全局變量<我>“access_token我>“通過提取這個值。
請注意AAD訪問令牌生成有點不同於我們早點生成創建工作區,AAD工作區部署生成的令牌<我>一個zure管理資源我>而AAD訪問令牌與API是Azure磚工作區資源。
令牌生成Azure磚平台Beplay体育安卓版本
生成Azure磚平台為服務主體我們將使用訪問令牌Beplay体育安卓版本<我>access_token我>最後一步中生成的進行身份驗證。
執行<我>為服務主體生成磚平台的令牌Beplay体育安卓版本我>返回平台訪問令牌Beplay体育安卓版本,然後設置一個全局環境變量<我>sp_pat我>在此基礎上的價值。為了簡單起見,我們將使用sp_pat用於身份驗證的API調用。
用戶和組管理
的SCIM API允許您管理
- 用戶(個人身份)
- Azure服務主體
- 用戶組和/或服務主體
使用SCIM API提供用戶和組
Azure磚支持跨域的身份管理,SCIM或係統的開放標準,允許您使用REST API自動化用戶配置和JSON。Azure磚SCIM API遵循SCIM協議的2.0版本。
- Azure磚管理員可以調用所有SCIM API端點。
- 非管理用戶可以調用我的端點,用戶得到的端點讀取用戶顯示名稱和id和組獲得端點閱讀組顯示名稱和id。
請注意,Azure服務主體被認為是一流的身份在Azure磚,可以調用所有的API。使他們有別於用戶身份的一件事是,服務主體沒有訪問web應用程序的UI即不能登錄到工作空間的web應用程序和執行UI功能方式像你和我這樣的典型用戶執行。服務主體主要是用於調用API無頭的方式。
使用令牌管理API管理帕特
令牌管理Azure磚管理員提供了更多的信息在他們的工作空間和控製個人訪問令牌。請注意,這並不適用於AAD的令牌,因為他們在Azure廣告管理。
通過監測和控製令牌創建,您減少損失的風險令牌或持久的令牌,可能導致數據從工作區中漏出。
集群政策
一個集群政策限製了能夠創建集群基於一組規則。策略定義這些規則限製的屬性用於創建集群。集群政策定義acl來限製他們使用特定的用戶和組。更多細節請參考我們的博客集群政策。
隻有管理員用戶可以創建、編輯和刪除策略。管理用戶也可以訪問所有的政策。
集群的權限
集群API允許許可權限的用戶和組群(包括互動和集群)的工作。相同的過程可以用於工作,池,筆記本,文件夾,注冊表和模型令牌。
常見用例
- 創建集群基於政策和管理員想允許一個用戶或一組視圖集群日誌或工作輸出。
- 為用戶分配“附加”權限通過一個集中的工作提交編製機製,所以他們可以把工作的火花UI和日誌。今天可以實現通過工作崗位/創建端點並運行通過運行/現在或計劃運行。集中的自動化服務可以檢索cluster_id工作運行時,設置權限
- 權限水平已經擴充到包括所有支持的對象即工作,池,筆記本,文件夾,注冊表和令牌模型。
IP訪問列表
你可能有一個安全政策規定,所有進入Azure磚工作區經過網絡和web應用程序的代理。配置IP訪問列表前確保員工通過企業VPN連接訪問一個工作區。
這個特性提供了Azure磚管理員來設置一個“allowlist”和“過濾清單”“CIDR / IPs”,可以訪問一個工作區。
Azure磚平台api不僅使數據團Beplay体育安卓版本隊提供的和安全的企業等級數據平台也幫助自動化的一些最平凡但又至關重要的任務從用戶新員工培訓建立安全的周邊這些平台。
統一數據分析平台擴展跨數據團隊,挑戰的工作區配置,資源配置、Beplay体育安卓版本整體管理和遵守企業治理乘管理員。極力推薦的端到端自動化最佳實踐解決任何此類問題和有更好的重複性和再現性。
我們想使工作區管理超級簡單,這樣你可以做更多的事情,專注於解決一些世界上最嚴格的數據的挑戰。
故障排除
過期的令牌
<b><我>錯誤在解析標記:io.jsonwebtoken。ExpiredJwtException: JWT過期在2019年-08年-08年T13:28:46Z。當前的時間:2019年-08年-08年t16.1:19:10Z,不同的10224117毫秒。允許時鍾歪斜:0毫秒。</我></b>
請重新運行步驟<我>生成aad令牌管理資源我>再生管理訪問令牌。令牌的生存時間為599秒。
速度限製
Azure磚REST API的支持最多30請求/秒/工作區。超過速度限製將收到一個請求429響應狀態碼。
列出常見標記問題在這裏除了緩解