使用 CLI 管理快取節點
本文概述如何使用 Azure CLI 建立、設定及部署Microsoft連線快取企業快取節點。
必要條件:
- 安裝 Azure CLI: 如何安裝 Azure CLI
- 安裝連線快取擴充功能:透過下列命令安裝連線快取擴充功能
az extension add --name mcc
若要深入瞭解如何安裝擴充功能,請參閱 安裝連線快取擴充功能。
1.建立資源群組
如果您還沒有資源群組,第一個步驟是建立資源群組。 Azure 資源群組是部署和管理 Azure 資源的邏輯容器。
若要建立資源群組,請使用 az group create
。 您可以在這裡找到此 CLI 命令的詳細 資料。
az group create --name myrg --location westus
建立資源群組之後,您必須建立Microsoft連線的企業快取資源。
2.建立連線快取 Azure 資源
連線快取 Azure 資源是可建立快取節點的最上層 Azure 資源。
若要建立連線快取 Azure 資源,請使用 az mcc ent resource create
az mcc ent resource create --mcc-resource-name mymccresource --resource-group myrg
重要
在輸出中,尋找 operationStatus。 operationStatus = Succeeded 表示我們的服務已成功開始建立您的聯機快取資源。
下一個步驟是在此資源下建立快取節點。
3.建立快取節點
若要建立快取節點,請使用 az mcc ent node create
az mcc ent node create --cache-node-name mycachenode --mcc-resource-name mymccresource --resource-group myrg --host-os <linux or windows>
重要
在輸出中,尋找 operationStatus。 operationStatus = Succeeded 表示我們的服務已成功開始建立快取節點。
4.確認快取節點建立
您必須先確認已成功建立快取節點,才能開始設定快取節點。
若要確認快取節點的建立,請使用 az mcc ent node show
az mcc ent node show --cache-node-name mycachenode --mcc-resource-name mymccresource --resource-group myrg
重要
在輸出中尋找 cacheNodeState。 如果 cacheNodeState = 未設定,您可以繼續進行快取節點設定。 如果 cacheNodeState = 註冊正在進行中,則快取節點仍在建立中。 請稍候一兩分鐘,然後再次執行命令。
確認成功建立快取節點之後,您可以繼續設定快取節點。
5.設定快取節點
若要設定快取節點,請使用 az mcc ent node update
下列範例會設定已啟用 Proxy 的 Linux 快取節點:
az mcc ent node update --cache-node-name <mycachenode> --mcc-resource-name <mymccresource> --resource-group <myrg>
--cache-drive "[{physical-path:</physical/path>,size-in-gb:<size of cache drive>},{</physical/path>,size-in-gb:<size of cache drive>}...]"> --proxy <enabled> --proxy-host <"proxy host name"> --proxy-port <proxy port> --auto-update-day <day of week> --auto-update-time <time of day> --auto-update-week <week of month> --auto-update-ring <update ring>
注意
- 對於要部署在 Windows 主機 OS 上的快取節點,快取磁碟驅動器的實體路徑 必須 是 /var/mcc。
- 在輸出中,尋找 operationStatus。
operationStatus = Succeeded 表示我們的服務已成功更新快取節點。 您也會看到 cacheNodeState 會顯示 [未布建]。
- 請儲存 physicalPath、sizeInGb、proxyPort、proxyHostName 的值,因為建構布建腳本需要這些值。
6.取得快取節點的布建詳細數據
成功設定快取節點之後,下一個步驟是將快取節點部署至主計算機。 若要部署快取節點,您必須建立具有相關信息的布建腳本。
若要取得布建腳本的相關信息,請使用 az mcc ent node get-provisioning-details
az mcc ent node get-provisioning-details --cache-node-name mycachenode --mcc-resource-name mymccresource --resource-group myrg
重要
- 儲存 cacheNodeId、customerKey、mccResourceId、registrationKey 的結果值。 建立布建腳本需要這些 GUID。
- 在輸出中尋找 cacheNodeState。 如果 cacheNodeState = 未布建,您可以繼續進行快取節點布建。
- 如果 cacheNodeState = 未設定,則尚未設定快取節點。 在布建之前設定快取節點。
下一步
若要將快取節點部署至 Windows 主電腦,請參閱
若要將快取節點部署至 Linux 主電腦,請參閱
大量建立和設定多個快取節點的範例腳本:
以下是虛擬程式代碼範例,說明如何編寫大量建立和設定連線快取 Azure 資源和多個連線快取節點的腳本:
#Define variables
$mccResourceName = "myMCCResource"
$cacheNodeName = "demo-node"
$cacheNodeOperatingSystem = "Windows"
$resourceGroup = "myRG"
$resourceLocation = "westus"
$cacheNodesToCreate = 2
$proxyHost = "myProxy.com"
$proxyPort = "8080"
$waitTime = 3
# Create Microsoft Connected Cache Azure resource
az mcc ent resource create --mcc-resource-name $mccResourceName --location $resourceLocation --resource-group $resourceGroup
#Loop through $cacheNodesToCreate iterations
for ($cacheNodeNumber = 1; $cacheNodeNumber -le $cacheNodesToCreate; $cacheNodeNumber++) {
$iteratedCacheNodeName = $cacheNodeName + "-" + $cacheNodeNumber
#Create cache node
az mcc ent node create --cache-node-name $iteratedCacheNodeName --mcc-resource-name $mccResourceName --host-os $cacheNodeOperatingSystem --resource-group $resourceGroup
#Get cache node state
$cacheNodeState = $(az mcc ent node show --cache-node-name $iteratedCacheNodeName --mcc-resource-name $mccResourceName --resource-group $resourceGroup --query "cacheNodeState") | ConvertFrom-Json
$howLong = 0
#Wait until cache node state returns "Not Configured"
while ($cacheNodeState -ne "Not Configured") {
Write-Output "Waiting for cache node creation to complete...$howLong seconds"
Start-Sleep -Seconds $waitTime
$howLong += $waitTime
$cacheNodeState = $(az mcc ent node show --cache-node-name $iteratedCacheNodeName --mcc-resource-name $mccResourceName --resource-group $resourceGroup --query "cacheNodeState") | ConvertFrom-Json
}
#Configure cache node
az mcc ent node update --cache-node-name $iteratedCacheNodeName --mcc-resource-name $mccResourceName --resource-group $resourceGroup --cache-drive "[{physical-path:/var/mcc,size-in-gb:50}]" --proxy enabled --proxy-host $proxyHost --proxy-port $proxyPort
}