共用方式為


使用 CLI 管理快取節點


本文概述如何使用 Azure CLI 建立、設定及部署Microsoft連線快取企業快取節點。

必要條件:

  1. 安裝 Azure CLI如何安裝 Azure CLI
  2. 安裝連線快取擴充功能:透過下列命令安裝連線快取擴充功能
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
}