停止並啟動 Azure Kubernetes Service 叢集

適用於:Azure Stack HCI 22H2 上的 AKS、Windows Server 上的 AKS

在 Azure Arc 所啟用的 AKS 中,您的工作負載可能不需要持續執行。 若要節省資源成本,您可以停止 (或關閉) Azure Kubernetes Service (AKS) 叢集。 若要停止叢集,請從您的 Hyper-V 主機執行本文所述的命令,以關閉不同的元件。 本文也會說明如何啟動已停止的叢集,以及如何確認控制平面節點在重新啟動後是否正在執行。

開始之前

本文假設您已在計算機上安裝並設定現有的 Kubernetes 叢集。 如果您需要安裝叢集,請參閱 AKS Arc 快速入門,以 設定 AKS 主機並部署工作負載叢集

停止叢集

若要停止 (或關閉叢集) ,您必須停止叢集服務,然後停止本機和/或遠端電腦。

停止叢集服務

使用 Stop-Cluster PowerShell 命令關閉叢集,並停止叢集中所有節點上的叢集服務。 執行此命令會停止叢集中設定的所有服務和應用程式。

重要

當您執行 Stop-Cluster時,叢集中所有其他節點和 VM 型應用程式都會受到影響。

若要停止本地叢集所有節點上的叢集服務,請以管理員身分開啟 PowerShell,並在叢集中的其中一部機器上執行下列命令:

Stop-Cluster 

執行此命令之後,請輸入 Y [是] 以確認您想要停止叢集。

注意

如果您在相同的計算機上執行兩次,或在叢集中的一部以上的計算機上執行 Stop-Cluster 兩次,您會收到一則訊息,指出「沒有執行叢集服務」。

停止本機和遠端電腦

若要關閉本機和遠端電腦,請使用 Stop-Computer PowerShell 命令:

Stop-Computer 

啟動叢集

若要啟動已停止的叢集,請先在本機和/或遠端電腦上重新啟動作業系統,然後重新啟動叢集。

若要在本地電腦和遠端電腦上重新啟動作業系統,請使用下列 Restart-Computer PowerShell 命令:

Restart-Computer 

若要重新啟動叢集的所有節點,請使用 Start-Cluster PowerShell 命令:

Start-Cluster 

當叢集服務正在執行時,節點只能做為叢集的一部分。

注意

您無法在沒有 CredSSP 驗證的伺服器機器上從遠端執行 Start-Cluster

若要確認叢集已啟動,請使用 Get-ClusterNode PowerShell 命令,如下列範例所示:

Get-ClusterNode -ErrorAction SilentlyContinue | foreach-object { 
   $node = $_.Name 
   $state = $_.State 
   Write-Host "$node State = $state" 
   } 

輸出類似於下列叢集節點清單:

TK5-3WP15R1625 State = Up
TK5-3WP15R1627 State = Up
TK5-3WP15R1629 State = Up
TK5-3WP15R1631 State = Up

確認控制平面節點正在執行

若要確認控制平面節點正在執行,請列舉 VM,並確定其狀態正在 執行

若要從您的 Hyper-V 主機檢視控制平面 VM 的狀態,請在包括管理叢集控制平面 VM 的實體電腦上執行下列 PowerShell 命令:

$controlPlanes = Get-VM | ? { $_.Name -like '*-control-plane-*' -and $_.State -eq 'Running' } | % { $_.Name } 

此處會顯示範例輸出。 如果您在具有控制平面 VM 的機器上執行此命令,您會收到 Null 輸出:

c8bf39ad-67bd-4a7d-ac77-638be6eecf46-control-plane-0-d38498de
my-cluster-control-plane-q9mbp-ae97a3e5

如果控制平面節點未執行,請執行下列 PowerShell 命令來重新啟動 VM:

Restart-VM -name $vmName -force 

下一步