沙箱
Kusto 可以針對必須在安全且隔離的環境中執行的特定流程執行沙盒。 這些流程的範例是使用 Python 外掛程式或 R 外掛程式執行的使用者定義指令碼。
沙箱會在本機執行 (表示,處理會接近數據) ,遠端呼叫不會有額外的延遲。
先決條件和限制
- 在 支援巢狀虛擬化的 VM 大小 上執行的沙箱會使用 Hyper-V 技術 來實作,而且沒有任何限制。
- 在 不支援巢狀虛擬化的 VM 大小 上執行的沙箱會使用專屬的舊版技術來實作,並受限於 一些限制。
- 執行沙箱的映像會部署到每個叢集節點,而且需要專用的 SSD 空間才能執行。
- 估計的大小介於 10-20 GB 之間。
- 這會影響叢集的資料容量,而且可能會影響叢集的成本。
執行階段
- 沙箱查詢運算子的執行可能會使用一或多個沙箱。
- 沙箱僅用於單一查詢,而且會在該查詢完成之後處置。
- 當節點重新啟動時 (例如服務升級的一部分),其上所有執行中的沙箱都會被處置。
- 每個節點都會維持預先定義的沙箱數目,以備妥供執行傳入要求。
- 使用一個沙箱之後,會自動提供新的沙箱來取代。
- 如果沒有預先配置的沙箱可供查詢運算子使用,則會進行節流,直到有新的沙箱可用為止。 如需詳細資訊,請參閱錯誤。 根據資料節點上的 SKU 和可用資源,新的沙箱配置最多可能需要每個沙箱10-15 秒。
沙盒參數
您可以針對每種沙盒類型,使用叢集層級 沙盒原則來控制部分參數。
- 每個節點的沙箱數目:每個節點的沙箱數目有限。
- 當沒有任何可用的沙箱時,提出的要求將會受到節流。
- 啟動時初始化: 如果設定為
false
(預設) ,則沙盒會在節點上延遲初始化,第一次查詢需要沙箱才能執行。 否則,如果設定為true
,沙箱會初始化為服務啟動的一部分。- 這表示會在節點上使用沙箱的外掛程式第一次執行時將包含短暫的準備期間。
- CPU:沙箱可以取用其主機處理器的 CPU 比率上限有限 (預設為
50%
)。- 達到限制時,沙箱的 CPU 使用會受到節流,但會繼續執行。
- 記憶: 沙箱可以取用其主機 RAM 的最大 RAM 數量有限。
- Hyper-V 技術的預設記憶體為 1 GB,而舊版沙盒則為 20 GB。
- 達到限制會導致沙箱終止,且查詢執行錯誤。
沙箱限制
- 網路:沙箱無法與虛擬機器 (VM) 上或外部的任何資源進行互動。
- 沙箱無法與另一個沙箱互動。
注意
搭配沙箱使用的資源,不僅取決於在要求中處理的資料大小,也會根據在沙箱中執行的邏輯,以及其所使用程式庫的實作。
例如,針對 python
和 r
外掛程式,後者表示使用者提供的指令碼,以及其在執行階段取用的 Python 或 R 程式庫。
錯誤
錯誤碼 | 狀態 | 訊息 | 可能的原因 |
---|---|---|---|
E_SB_QUERY_THROTTLED_ERROR | TooManyRequests (429) | 沙箱查詢因為節流而中止。 部分輪詢後重試可能會成功 | 目標節點上沒有可用的沙箱。 新沙箱應該會在幾秒鐘內變成可用 |
E_SB_QUERY_THROTTLED_ERROR | TooManyRequests (429) | 類型 '{kind}' 的沙箱尚未初始化 | 沙箱原則最近已變更。 遵守新原則的新沙箱會在幾秒鐘內變成可用 |
InternalServiceError (520) | 沙箱查詢因為初始化沙箱失敗而中止 | 非預期的基礎結構失敗。 |
支援巢狀虛擬化的 VM 大小
下表列出支援 Hyper-V 沙盒技術的所有新式 VM 大小。
名稱 | 類別 |
---|---|
Standard_L8s_v3 | 儲存體最佳化 |
Standard_L16s_v3 | 儲存體最佳化 |
Standard_L8as_v3 | 儲存體最佳化 |
Standard_L16as_v3 | 儲存體最佳化 |
Standard_E8as_v5 | 儲存體最佳化 |
Standard_E16as_v5 | 儲存體最佳化 |
Standard_E8s_v4 | 儲存體最佳化 |
Standard_E16s_v4 | 儲存體最佳化 |
Standard_E8s_v5 | 儲存體最佳化 |
Standard_E16s_v5 | 儲存體最佳化 |
Standard_E2ads_v5 | 計算最佳化 |
Standard_E4ads_v5 | 計算最佳化 |
Standard_E8ads_v5 | 計算最佳化 |
Standard_E16ads_v5 | 計算最佳化 |
Standard_E2d_v4 | 計算最佳化 |
Standard_E4d_v4 | 計算最佳化 |
Standard_E8d_v4 | 計算最佳化 |
Standard_E16d_v4 | 計算最佳化 |
Standard_E2d_v5 | 計算最佳化 |
Standard_E4d_v5 | 計算最佳化 |
Standard_E8d_v5 | 計算最佳化 |
Standard_E16d_v5 | 計算最佳化 |
Standard_D32d_v4 | 計算最佳化 |
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應