監視虛擬機器 (用於虛擬化網路功能)
本節討論電信業者可用來監視虛擬化網路功能 (VNF) 工作負載的選擇性工具。 透過 Azure 監視代理程式 (AMA),可以從執行 VNF 的虛擬機器 (VM) 收集記錄和效能計量。 AMA 的其中一個必要條件,是 Arc 重新連線至 Azure (使用適用於伺服器的 Azure Arc)。
透過 CLI 使用受控識別驗證將延伸模組上線
使用 CLI 在 VM 上啟用監視代理程式時,請確定已安裝適當的 CLI 版本:
- azure-cli:2.39.0+
- azure-cli-core:2.39.0+
- Resource-graph:2.1.0+
關於開始使用 Azure CLI、如何將其安裝在多個作業系統,以及如何安裝 CLI 延伸模組的文件。
Arc 連線
已啟用 Azure Arc 的伺服器可讓您管理裝載於 Azure 外部的 Linux 實體伺服器和虛擬機器,例如運算子連接點之類的內部部署雲端環境。 混合式機器是任何未在 Azure 中執行的機器。 混合式機器連線至 Azure 時就會變成已連線的機器,且被視為 Azure 中的資源。 每個連線的機器都有一個資源識別碼,可讓機器包含在資源群組中。
必要條件
開始之前,請務必檢閱必要條件,並確認訂用帳戶和資源已符合需求。 部分必要條件如下:
- 您的 VNF VM 連線至 CloudServicesNetwork (VM 用來與運算子連接點服務通訊的網路)。
- 您有權透過 SSH 存取 VNF VM。
- Proxy 與 wget 安裝:
- 確定已安裝 wget。
- 若要將 Proxy 設定為環境變數,請執行:
echo "http\_proxy=http://169.254.0.11:3128" \>\> /etc/environment
echo "https\_proxy=http://169.254.0.11:3128" \>\> /etc/environment
- 您在 VNF VM 上有適當的權限能夠執行指令碼、安裝套件相依性等等。如需詳細資訊,請造訪連結。
- 若要使用已啟用 Azure Arc 的伺服器,您必須在您的訂用帳戶中註冊以下 Azure 資源提供者:
- Microsoft.HybridCompute
- Microsoft.GuestConfiguration
- Microsoft.HybridConnectivity
如果尚未註冊這些資源提供者,您可以使用以下命令來註冊:
az account set --subscription "{Your Subscription Name}"
az provider register --namespace 'Microsoft.HybridCompute'
az provider register --namespace 'Microsoft.GuestConfiguration'
az provider register --namespace 'Microsoft.HybridConnectivity'
部署
您可以手動執行一組步驟,以在環境中透過 Arc 連接伺服器。 VNF VM 可以使用部署指令碼連線至 Azure。 或者,您可以執行範本指令碼,藉以使用自動化方法。 此指令碼可用來自動下載和安裝代理程式。
若要使用這種方法,您必須擁有機器上的系統管理員權限,才能安裝和設定代理程式。 在 Linux 機器上,您可以使用根帳戶來部署必要的代理程式。
用來自動下載和安裝以及用來與 Azure Arc 建立連線的指令碼,可從 Azure 入口網站取得。 若要完成此程序,請執行下列步驟:
在瀏覽器中,移至 Azure 入口網站。
在 [選取方法] 頁面上,選取 [新增單一伺服器] 圖格,然後選取 [產生指令碼]。
在 [必要條件] 頁面上,選取 [下一步]。
在 [資源詳細資料] 頁面上,提供下列資訊:
在 [訂用帳戶] 下拉式清單中,選取將用來管理機器的訂用帳戶。
在 [資源群組] 下拉式清單中,選取將受到管理的機器所屬的資源群組。
在 [區域] 下拉式清單中,選取要儲存伺服器中繼資料的 Azure 區域。
在 [作業系統] 下拉式清單中,選取 VNF VM 的作業系統。
如果機器透過 Proxy 伺服器進行通訊以連線至網際網路,請指定 Proxy 伺服器 IP 位址。 如果使用名稱和連接埠號碼,請指定這些資訊。
選取 [下一步:標記]。
在 [標籤] 頁面上,檢閱建議的預設 [實體位置標籤] 並輸入值,或指定一或多個 [自訂標籤] 以支援您的標準。
選取 [下一步:下載並執行指令碼]。
在 [下載並執行指令碼] 頁面上檢閱摘要資訊,然後選取 [下載]。 如果您還需要變更,請選取 [上一步]。
注意:
- 在指令碼頂端設定「錯誤時終止」旗標,以確保指令碼失敗時不會浪費時間,且最終不會誤判為成功。 例如,在殼層指令碼中,請使用在指令碼頂端使用 "set -e"。
- 在指令碼中新增 export http_proxy=<PROXY_URL> 和 export https_proxy=<PROXY_URL>,並在 Arc 連線指令碼中新增匯出陳述式。 (Proxy IP - 169.254.0.11:3128)。
若要在伺服器上部署 azcmagent
,請使用具有根存取權的帳戶登入伺服器。 切換至您先前將指令碼複製到的資料夾,並執行 ./OnboardingScript.sh 指令碼,以在伺服器上執行該指令碼。
如果此代理程式在安裝完成之後無法啟動,請檢查記錄以取得詳細的錯誤資訊。 記錄目錄為 /var/opt/azcmagent/log
。
在安裝代理程式,並設定為連線至已啟用 Azure Arc 的伺服器之後,請在 Azure 入口網站確認伺服器已成功連線。
圖:已註冊 Arc 的 VM 範例
疑難排解
注意:如果您在執行指令碼時看到錯誤,請先修正錯誤並重新執行指令碼,再繼續進行後續步驟。
錯誤的常見原因包括:
- 您沒有 VM 上的必要權限。
- 未在 VM 上安裝 wget 套件。
- 如果無法安裝套件相依性,其原因是 Proxy 未將必要的網域新增至允許的 URL。 例如,在 Ubuntu 上,apt 安裝相依性失敗,因其無法連線到 ".ubuntu.com"。 請將必要的輸出端點新增至 Proxy。
Azure 監視器代理程式
Azure 監視器代理程式會在 Arc 連線機器上實作為 Azure VM 延伸模組。 此外也會列出建立與資料收集規則相關聯的選項,定義代理程式應收集的資料。 安裝、升級或解除安裝 Azure 監視器代理程式不需要重新啟動伺服器。
請務必使用資料收集規則來設定記錄和計量的收集。
圖:DCR 新增來源
注意:使用 DCR 設定的計量應已將目的地設定為 Log Analytics 工作區,因為在 Azure 監視器計量上尚不支援。
圖:DCR 新增目的地
必要條件
安裝 Azure 監視器代理程式之前,必須符合下列必要條件:
- 權限:對於使用 Azure 入口網站以外的方法,您必須具有下列角色指派才能安裝代理程式:
內建角色 | 範圍 | 原因 |
---|---|---|
虛擬機器參與者、Azure Connected Machine 資源管理員 | 已啟用 Azure Arc 的伺服器 (英文) | 若要部署代理程式 |
包含動作 Microsoft.Resources/deployments/* 的任何角色 | 訂用帳戶和/或資源群組和/或 | 部署 Azure Resource Manager 範本 |
安裝 Azure 監視代理程式
虛擬機器連線至 Arc 後,請確實從 Azure Cloud Shell 建立名為 "settings.json" 的本機檔案,以提供 Proxy 資訊:
圖:settings.json 檔案
然後,使用下列命令,在這些已啟用 Azure Arc 的伺服器上安裝 Azure 監視代理程式:
az connectedmachine extension create --name AzureMonitorLinuxAgent --publisher Microsoft.Azure.Monitor --type AzureMonitorLinuxAgent --machine-name \<arc-server-name\> --resource-group \<resource-group-name\> --location \<arc-server-location\> --type-handler-version "1.21.1" --settings settings.json
若要使用 Azure 監視器代理程式從虛擬機器收集資料,您必須:
建立資料收集規則 (DCR),以定義 Azure 監視器代理程式傳送資料的目的地。
將資料收集規則與特定虛擬機器建立關聯。
透過入口網站建立資料收集規則
您可以在這裡找到建立 DCR 並將其關聯至 Log Analytics 工作區的步驟。
最後,確認您是否可在指定的 Log Analytics 工作區中取得記錄。
透過 CLI 建立資料收集規則
以下是建立 DCR 並產生其關聯以便從這些虛擬機器收集記錄和計量的命令。
建立 DCR:
az monitor data-collection rule create --name \<name-for-dcr\> --resource-group \<resource-group-name\> --location \<location-for-dcr\> --rule-file \<rules-file\> [--description] [--tags]
範例 rules-file:
建立 DCR 關聯:
az monitor data-collection rule association create --name \<name-for-dcr-association\> --resource \<connected-machine-resource-id\> --rule-id \<dcr-resource-id\> [--description]
其他資源
- 檢閱活頁簿文件,然後使用運算子連接點遙測範例運算子連接點活頁簿。
- 檢閱 Azure 監視器警示,了解如何建立 Azure 監視器警示規則,並使用範例運算子連接點警示範本。