本文涵蓋以 Kubernetes 為基礎的 Linux 新 SHIR 功能的詳細數據,可改善基礎基礎結構以提供數個優點:
- 可擴展性:能夠擴展到數百台機器。
- 效能:改善掃描工作負載的效能。
- 容器化) (安全性:能夠在 Kubernetes 叢集上具有容器化安全性,而不是直接在 Windows 機器上裝載 SHIR
本文涵蓋安裝和管理 Kubernetes 支援的自我裝載整合執行階段的詳細數據。
支援的資料來源
如需所有支援來源的清單,請參閱 每個整合執行階段資料表支援的資料來源。
架構
在高階架構檢視中,安裝 Kubernetes 型 SHIR 時,會在使用者 Kubernetes 叢集的節點上自動建立數個 Pod。 此安裝可由名為 IRCTL 的命令列工具觸發 (以下各節) 中詳細說明。 IRCTL 會連線到 Microsoft Purview 服務以註冊 SHIR,並連線到 Kubernetes 叢集以安裝 SHIR。
在安裝期間,SHIR 映像檔會從 MCR (Microsoft Container Registrytries) SHIR Pod 下載。 安裝完成後,使用者叢集中的網繭會連線到 Microsoft Purview 服務以提取掃描作業。 提取掃描工作時,它可以連接使用者的內部部署資料來源以進行資料掃描。
必要條件
使用 企業 數據控管解決方案的 Microsoft Purview 帳戶。
Kubernetes 叢集:您需要有一個現有的 Linux 型 Kubernetes 叢集或準備一個叢集。 節點可由節點選取器識別,該選取器遵循 Kubernetes 節點選取器的定義。 最低配置:
- 容器類型:Linux
- Kubernetes 版本:1.24.9 或更高版本
- 節點操作系統:在 x86 架構上運行的基於 Linux 的操作系統
- 節點規格:最少八個核心 CPU、32 GB 記憶體和至少 80 GB 可用硬碟空間
- 節點計數: >=1 (應該固定, 而不是 啟用叢集自動調整器)
- 每個節點的 Pod 數量: >= 20 (最大 Pod 數量 – 不屬於 Self-Hosted IR) 的其他 Pod 的計數
注意事項
每個節點的資料夾 /var/irstorage/ 保留給 SHIR。 SHIR 可讀寫。 您可以從此資料夾取得保存的記錄,或將外部驅動程式上傳至此資料夾。 如果不存在,則由SHIR創建,SHIR刪除後不會刪除。 SHIR 使用的容器映像是由 Kubernetes 記憶體回收管理,SHIR 不會清除這些映像。 為您的 Kubernetes 叢集設定適當的臨界值。
Kubernetes 叢集網路:您擁有的 Kubernetes 叢集應該能夠連線到 網路需求中列出的端點。
整合執行階段命令列工具:若要在本機管理 Microsoft Purview Kubernetes SHIR,您需要名為 IRCTL 的命令列工具。 您可以在 SHIR 建立過程中下載此工具。 IRCTL 是管理 Microsoft Purview SHIR 的命令列工具。 如需詳細資訊,請參閱 IRCTL 文件。
-
Kubernetes 內容:需要 Kubernetes 內容,其中包含 Kubernetes 叢集資訊,以及使用者對此叢集的許可權和認證,才能與 Kubernetes 叢集通訊。 若要簡化使用者 SHIR 管理權限的設定,您可以從 Kubernetes 管理員角色開始。 此內容是透過設定 Kubernetes 叢集產生,並儲存在設定檔中。 取得此檔案的位置和方式取決於您設定的 Kubernetes 叢集。
- 如果您用於
kubeadm init設定 Kubernetes 叢集,您可以在 下找到設定檔/etc/Kubernetes/admin.conf。 - 如果您使用 AKS,您可以遵循 AKS 的指引,使用 Az PowerShell module 命令,將此叢集的認證取得至本機電腦。 上下文可以直接合併到下面的
$HOME/.kube/config配置文件。 - 如果您使用其他工具來設定 Kubernetes 叢集,請參閱 Kubernetes 文件。
- 當您擁有 Kubernetes 內容的設定檔時,請將其合併至您要執行 IRCTL 命令的電腦上的設定檔,即
$HOME/.kube/config。 或者,您也可以在名為 KUBECONFIG 的環境變數中設定 Kubernetes 內容的設定檔。 如需 Kubernetes 內容的詳細資訊,請參閱 設定對多個叢集的存取權。
- 如果您用於
建立 Kubernetes 支援的自我裝載整合執行階段
要控制和管理 Kubernetes SHIR,用戶可以下載名為 IRCTL 的命令行工具。 以下是 Kubernetes 支援的自我裝載整合執行階段的步驟。
這些步驟會引導您下載 IRCTL,但如需直接連結,請參閱 IRCTL 文件。
設定 Kubernetes 支援的自我裝載整合執行階段
開啟 Microsoft Purview 資料對應中的 [整合執行階段] 視窗
- 如果您使用新的 Microsoft Purview 入口網站:
- 開啟 資料對應
- 選取 來源管理
- 選取 [整合執行階段]
- 如果您使用傳統 Microsoft Purview 治理入口網站:
- 開啟 資料對應
- 選取 [整合執行階段]
- 如果您使用新的 Microsoft Purview 入口網站:
選取 [+ 新增 ] 按鈕
選取 [自我裝載] ,然後選取 [繼續]
為您的執行階段命名,然後選取 Kubernetes 服務支援 切換以啟用
選取 [建立]
選取 [取得註冊金鑰]
複製索引鍵值。 您需要它才能稍後在 IRCTL 中運行命令。
提示
如有需要,您可以重新產生金鑰或撤銷產生的金鑰。
選取 [ 下載 IRCTL 並安裝整合執行階段 ] 連結,以下載 IRCTL 工具。 (您也可以按照以下步驟直接下載 IRCTL。)
在您要執行 IRCTL 命令列的電腦上,從下載安裝 IRCTL。 IRCTL 會依 Kube 設定的內容連線至 Kubernetes 叢集。如果未指定內容,IRCTL 會使用目前的內容。 您可以透過以下兩種方式之一設定內容:
執行 kubectl 命令列並執行此命令以確認目前的上下文:
kubectl config get-contexts – List all contexts configured on the machinekubectl config current-context – Get the current context namekubectl config use-context <name of context>執行 IRCTL 並執行
--context以在 Kube 設定中指定上下文
執行IRCTL命令列,並使用您複製的註冊金鑰執行此命令。
./irctl create --registration-key <registration key copied from the portal>注意事項
如果未指定 節點選取器 ,則會使用 Kubernetes 叢集的所有節點。 針對 AKS,建議您使用 AKS 節點集區的標籤作為節點選取器,或者您可以自訂 SHIR 節點的不同標籤。
您會看到以下列印輸出:
[Info] Start to create SHIR with Kubernetes context [your-context]...... [Info] Environment validation passed! [Info] Registering SHIR[example-k8s-shir] for Microsoft Purview Account [yourpurviewaccount]...... [Info] SHIR Registration done! [Info] Provisioning SHIR, it may take about 5-30 minutes......done! [Info] SHIR creation succeeded!提示
如果安裝進度被Ctrl-C或其他原因破壞,可以使用以下指令來監控安裝進度:
./irctl install status安裝完成後,若要檢查 SHIR 的當前狀態,請執行以下命令:
./irctl describe您也可以在 Microsoft Purview 入口網站的 [整合執行階段 ] 頁面上檢查 SHIR 的狀態。
使用外部驅動程式設定掃描
掃描某些數據源時,您必須在安裝 SHIR 的計算機上安裝對應的驅動程式,以便 Microsoft Purview 與數據源連線。 以下是 Db2 掃描的範例。 如需特定必要條件,請參閱個別的連接器文章。
注意事項
需要這些外部驅動程式的資料來源具有其必要條件中列出的資訊。
在此範例中,我們正在安裝 Db2 驅動程式。 其他驅動程式的步驟類似。
下載驅動程式 (每一個來源都會列出其個別驅動程式。) 例如,您可以在此處找到 DB2 驅動程式: 連接及管理 Db2。
將驅動程式上傳至整合執行階段的每個節點。 您可以使用如下命令:
./irctl storage upload --source jdbc_sqlj/db2_driver --destination driver/db2成功上傳確認如下所示:
========== Context ========== Kubernetes Context : k8s-shir-test-cluster Purview Account : test-purview-1 Self-hosted Intrgration Runtime: k8s-shir-demo ========== Progress ========== Processing 2/2 nodes... aks-shirpool-27141791-vmss000000: SUCCEEDED aks-shirpool-27141791-vmss000001: SUCCEEDED ========== Results ========== jdbc_sqlj/db2_driver -> /var/irstorage/driver/db2注意事項
如果您取代節點或向外延展至新節點,則必須再次上傳外部驅動程式。
驗證使用以下命令上傳的檔案:
./irctl storage list driver/db2您應該會看到如下回應:
========== Context ========== Kubernetes Context : k8s-shir-test-cluster Purview Account : test-purview-1 Self-hosted Intrgration Runtime: k8s-shir-demo ========== Progress ========== Processing 2/2 nodes... aks-shirpool-27141791-vmss000000: SUCCEEDED aks-shirpool-27141791-vmss000001: SUCCEEDED ========== Results ========== Node: aks-shirpool-27141791-vmss000000 - Succeeded /var/irstorage/driver/db2 total 9364 drwxr-xr-x 2 root root 4096 May 15 14:23 . drwxr-xr-x 3 root root 4096 May 15 14:23 .. -rwxrwxr-x 1 root root 6568346 May 15 14:23 db2jcc4.jar Node: aks-shirpool-27141791-vmss000001 - Succeeded /var/irstorage/driver/db2 total 9364 drwxr-xr-x 2 root root 4096 May 15 14:23 . drwxr-xr-x 3 root root 4096 May 15 14:23 .. -rwxrwxr-x 1 root root 6568346 May 15 14:23 db2jcc4.jar使用 DriverLocation 的值以及步驟 3 中的 Destination 值建立掃描。
高可用性和可擴展性
您可以在 Kubernetes 支援的自我裝載整合執行階段安裝期間,使用節點選取器,指派 Kubernetes 叢集的多個節點,以具有高可用性。 擁有多個節點的好處是:
- 自我裝載整合執行階段的可用性更高,使其不再是掃描的單一失敗點。
- 執行更多並行掃描。 每個節點都可以同時啟用多個掃描執行。 如果您需要更多並行掃描,您可以手動向外延展 Kubernetes 叢集的節點。
- 掃描某些來源 (例如 Azure Blob、Azure Data Lake Storage Gen2 和 Azure 檔案儲存體) 時,每個掃描執行都可以使用多個節點來提升掃描效能。 對於其他來源,掃描只會在其中一個節點上執行。
Kubernetes 支援的自我裝載整合執行階段功能可以透過手動相應放大/縮減 Kubernetes 叢集的節點來更新。
注意事項
您必須上傳所有必要的驅動程式,以便在每個新節點上進行掃描。
網路需求
| 網域名稱 | 輸出埠 | 描述 |
|---|---|---|
公有雲: <tenantID>-api.purview-service.microsoft.comAzure Government: <tenantID>-api.purview-service.microsoft.us中國: <tenantID>-api.purview-service.microsoft.cn |
443 | 需要連線到 Microsoft Purview 服務。 如果您使用 Microsoft Purview 私人端點,則此端點會受到帳戶私人端點的涵蓋。 |
公有雲: <purview_account>.purview.azure.comAzure Government: <purview_account>.purview.azure.us中國: <purview_account>.purview.azure.cn |
443 | 需要連線到 Microsoft Purview 服務。 如果您使用 Microsoft Purview 私人端點,則此端點會受到帳戶私人端點的涵蓋。 |
公有雲: <managed_storage_account>.blob.core.windows.net 或 <ingestion_storage_account>.*.blob.storage.azure.netAzure Government: <managed_storage_account>. blob.core.usgovcloudapi.net或<ingestion_storage_account>. blob.core.usgovcloudapi.net中國: <managed_storage_account>.blob.core.chinacloudapi.cn或 <ingestion_storage_account>.blob.core.chinacloudapi.cn |
443 | 需要連線到 Microsoft Purview 受控 Azure Blob 儲存體帳戶。 |
公有雲: <managed_storage_account>.queue.core.windows.net 或 <ingestion_storage_account>.*.queue.storage.azure.netAzure Government: <managed_storage_account>. queue.core.usgovcloudapi.net或<ingestion_storage_account>. queue.core.usgovcloudapi.net中國: <managed_storage_account>.queue.core.chinacloudapi.cn或 <ingestion_storage_account>.queue.core.chinacloudapi.cn |
443 | 需要連線到 Microsoft Purview 受控 Azure 佇列儲存體帳戶。 |
公有雲: *.compute.governance.azure.comAzure Government: *.compute.governance.azure.us中國: *.compute.governance.azure.cn |
443 | 需要連線到 Microsoft Purview 服務。 目前需要萬用字元,因為沒有專用資源。 |
| mcr.microsoft.com | 443 | 下載圖像需要。 |
| *.data.mcr.microsoft.com | 443 | 下載圖像需要。 |
注意事項
根據使用者想要掃描的來源,他們也需要允許其他網域和輸出埠用於其他 Azure 或外部來源。
版本
一般而言,我們每個月都會發行一個新的自我裝載整合執行階段次要版本,其中包含功能、增強功能和錯誤修正。
每個版本的自我裝載整合執行階段都會在一年後到期。
如何查看當前版本
您可以在 入口網站上或使用 IRCTL 檢查 Kubernetes 自我裝載整合執行階段的版本。
入口網站
- 在 Microsoft Purview 入口網站中,流覽至 [資料對應]。
- 選取 [整合執行階段]
- 整合執行階段描述行中的第四欄會是 [版本],您可以在那裡檢查版本。
IRCTL (1.1.0 及以上版本)
描述命令會傳回整合執行階段的版本。
./irctl describe
自動更新
從 1.1.0 版開始,Kubernetes 自我裝載整合執行階段支援自動更新,預設會啟用。 這項功能可確保您的整合執行階段大約每月一次自動升級至最新的 Microsoft 管理版本。
選擇退出
我們建議保持啟用自動更新,以受益於最新的功能和增強功能。 但是,您可以選擇退出使用 IRCTL 自動更新。 自動更新組態會在重新安裝後持續存在,因此您不需要在每次安裝時停用它。
./irctl config set autoUpdate.enabled false
./irctl config view
自動更新版本與最新版本
為了確保穩定性,自動更新通常落後於最新版本,延遲一個月。 自動更新版本由 Microsoft 管理。
如果您想要將整合執行階段升級至較新版本,則應該使用 特定版本的 IRCTL 執行手動升級。