Zatrzymywanie i uruchamianie klastra usługi Azure Kubernetes Service (AKS)
Może nie być konieczne ciągłe uruchamianie obciążeń usługi Azure Kubernetes Service (AKS). Na przykład może istnieć klaster deweloperów, którego używasz tylko w godzinach pracy. Oznacza to, że czasami klaster może być w stanie bezczynności, nie uruchamiając nic więcej niż składniki systemowe. Możesz zmniejszyć zużycie klastra przez skalowanie wszystkich User
pul węzłów do 0, ale System
pula jest nadal wymagana do uruchamiania składników systemowych podczas działania klastra.
Aby lepiej zoptymalizować koszty w tych okresach, możesz wyłączyć lub zatrzymać klaster. Ta akcja zatrzymuje płaszczyznę sterowania i węzły agenta, co pozwala zaoszczędzić na wszystkich kosztach obliczeń przy zachowaniu wszystkich obiektów z wyjątkiem autonomicznych zasobników. Stan klastra jest przechowywany po ponownym uruchomieniu, co umożliwia wybranie miejsca, w którym została przerwana.
Uwaga
Zatrzymanie klastra cofa przydział płaszczyzny sterowania i zwalnia pojemność. W regionach, w których występują ograniczenia pojemności, klienci mogą nie być w stanie uruchomić zatrzymanego klastra. Z tego powodu nie zalecamy zatrzymywania obciążeń o znaczeniu krytycznym.
Uwaga
Operacje uruchamiania usługi AKS spowodują przywrócenie wszystkich obiektów z etcD z wyjątkiem autonomicznych zasobników o takich samych nazwach i wieku. oznacza to, że wiek zasobnika będzie nadal obliczany na podstawie pierwotnego czasu tworzenia. Ta liczba będzie się zwiększać wraz z upływem czasu, niezależnie od tego, czy klaster jest w stanie zatrzymania.
Zanim rozpoczniesz
W tym artykule założono, że masz istniejący klaster usługi AKS. Jeśli potrzebujesz klastra usługi AKS, możesz go utworzyć przy użyciu interfejsu wiersza polecenia platformy Azure, programu Azure PowerShell lub witryny Azure Portal.
Informacje o funkcji zatrzymywania/uruchamiania klastra
W przypadku korzystania z funkcji zatrzymywania/uruchamiania klastra obowiązują następujące warunki:
- Ta funkcja jest obsługiwana tylko w przypadku klastrów opartych na zestawie skalowania maszyn wirtualnych.
- Nie można zatrzymać klastrów korzystających z funkcji automatycznej aprowizacji węzła (NAP).
- Stan klastra zatrzymanego klastra usługi AKS jest zachowywany przez maksymalnie 12 miesięcy. Jeśli klaster jest zatrzymany przez ponad 12 miesięcy, nie można odzyskać stanu. Aby uzyskać więcej informacji, zobacz zasady pomocy technicznej usługi AKS.
- Operacje uruchamiania lub usuwania można wykonywać tylko w zatrzymanym klastrze usługi AKS. Aby wykonać inne operacje, takie jak skalowanie lub uaktualnianie, należy najpierw uruchomić klaster.
- Jeśli aprowizowano punkty PrivateEndpoint połączone z klastrami prywatnymi, należy je usunąć i ponownie utworzyć po uruchomieniu zatrzymanego klastra usługi AKS.
- Ponieważ proces zatrzymania opróżnia wszystkie węzły, wszystkie autonomiczne zasobniki (tj. zasobniki, które nie są zarządzane przez element Deployment, StatefulSet, DaemonSet, Job itp.), zostaną usunięte.
- Po uruchomieniu kopii zapasowej klastra oczekiwane jest następujące zachowanie:
- Adres IP serwera interfejsu API może ulec zmianie.
- Jeśli używasz narzędzia do automatycznego skalowania klastra, podczas uruchamiania klastra bieżąca liczba węzłów może nie należeć do ustawionych wartości minimalnych i maksymalnych zakresów. Klaster rozpoczyna z liczbą węzłów potrzebną do uruchomienia obciążeń, na którą nie wpływają ustawienia autoskalowania. Gdy klaster wykonuje operacje skalowania, wartość minimalna i maksymalna będzie mieć wpływ na bieżącą liczbę węzłów, a klaster ostatecznie znajdzie się w żądanym zakresie i pozostanie w nim do momentu zatrzymania klastra.
Zatrzymywanie klastra usługi AKS
Użyj polecenia ,
az aks stop
aby zatrzymać uruchomiony klaster usługi AKS, w tym węzły i płaszczyznę sterowania. Poniższy przykład zatrzymuje klaster o nazwie myAKSCluster:az aks stop --name myAKSCluster --resource-group myResourceGroup
Sprawdź, czy klaster przestał używać
az aks show
polecenia i potwierdź, że jest wyświetlanypowerState
jakoStopped
.az aks show --name myAKSCluster --resource-group myResourceGroup
Dane wyjściowe powinny wyglądać podobnie do następujących skróconych przykładowych danych wyjściowych:
{ [...] "nodeResourceGroup": "MC_myResourceGroup_myAKSCluster_westus2", "powerState":{ "code":"Stopped" }, "privateFqdn": null, "provisioningState": "Succeeded", "resourceGroup": "myResourceGroup", [...] }
Jeśli zostanie
provisioningState
wyświetlony elementStopping
, klaster nie został jeszcze w pełni zatrzymany.
Ważne
Jeśli używasz budżetów zakłóceń zasobników, operacja zatrzymania może potrwać dłużej, ponieważ proces opróżniania zajmie więcej czasu.
Uruchamianie klastra usługi AKS
Uwaga
Po użyciu funkcji uruchamiania/zatrzymywania w usłudze AKS należy odczekać 15–30 minut przed ponownym uruchomieniem klastra usługi AKS. Ten okres oczekiwania jest niezbędny, ponieważ pełne zatrzymanie odpowiednich usług trwa kilka minut. Próba ponownego uruchomienia klastra podczas tego procesu może zakłócić proces zamykania i potencjalnie powodować problemy z klastrem lub jego obciążeniami.
Użyj polecenia ,
az aks start
aby uruchomić zatrzymany klaster usługi AKS. Klaster jest uruchamiany ponownie przy użyciu poprzedniego stanu płaszczyzny sterowania i liczby węzłów agenta. Poniższy przykład uruchamia klaster o nazwie myAKSCluster:az aks start --name myAKSCluster --resource-group myResourceGroup
Sprawdź, czy klaster zaczął używać
az aks show
polecenia i potwierdzić, że jest wyświetlanypowerState
Running
element .az aks show --name myAKSCluster --resource-group myResourceGroup
Dane wyjściowe powinny wyglądać podobnie do następujących skróconych przykładowych danych wyjściowych:
{ [...] "nodeResourceGroup": "MC_myResourceGroup_myAKSCluster_westus2", "powerState":{ "code":"Running" }, "privateFqdn": null, "provisioningState": "Succeeded", "resourceGroup": "myResourceGroup", [...] }
Jeśli zostanie wyświetlony komunikat
provisioningState
Starting
, klaster nie został jeszcze w pełni uruchomiony.
Następne kroki
- Aby dowiedzieć się, jak skalować
User
pule do 0, zobacz SkalowanieUser
pul do 0. - Aby dowiedzieć się, jak zaoszczędzić koszty przy użyciu wystąpień typu spot, zobacz Dodawanie puli węzłów typu spot do usługi AKS.
- Aby dowiedzieć się więcej na temat zasad pomocy technicznej usługi AKS, zobacz Zasady pomocy technicznej usługi AKS.
Azure Kubernetes Service