Typy węzłów klastra zarządzanego usługi Service Fabric
Zestaw skalowania maszyn wirtualnych przywraca każdy typ węzła w klastrze zarządzanym usługi Service Fabric. W przypadku klastrów zarządzanych wprowadzasz wszelkie wymagane zmiany za pośrednictwem dostawcy zasobów klastra zarządzanego usługi Service Fabric. Dostawca klastra zarządzanego tworzy i abstrahuje wszystkie bazowe zasoby klastra w Twoim imieniu. Dostawca zasobów zarządza zasobami ułatwia uproszczenie wdrażania typu węzła klastra i zarządzania nimi. Zarządzanie zapobiega błędom operacji, takim jak usuwanie węzła inicjacji i pomaga zastosować najlepsze rozwiązania, takie jak weryfikowanie jednostki SKU maszyny wirtualnej jest bezpieczne do użycia.
W pozostałej części tego dokumentu opisano sposób dostosowywania różnych ustawień, w tym:
- Tworzenie typu węzła
- Dostosowywanie liczby wystąpień typu węzła
- Włączanie automatycznych uaktualnień obrazów systemu operacyjnego
- Zmienianie obrazu systemu operacyjnego
- Konfigurowanie właściwości umieszczania
- Ustawianie prefiksu nazwy komputera
Ten dokument koncentruje się na używaniu witryny Azure Portal i szablonów usługi Azure Resource Manager do wprowadzania zmian.
Ważne
Obecnie klastry zarządzane usługi Service Fabric nie obsługują niestandardowych obrazów systemu operacyjnego.
Uwaga
Nie będzie można zmodyfikować typu węzła, gdy zmiana jest w toku. Zaleca się, aby wszelkie żądane zmiany zostały ukończone przed wykonaniem innego.
Dodawanie typu węzła
Typ węzła można dodać do klastra zarządzanego usługi Service Fabric za pomocą portalu, szablonu usługi Azure Resource Manager lub programu PowerShell.
Dodawanie za pomocą portalu
Uwaga
Można dodawać tylko typy węzłów pomocniczych przy użyciu portalu
Zaloguj się w witrynie Azure Portal
Przejdź do strony Przegląd zasobu klastra.
Wybierz
Node types
wSettings
sekcjiWybierz
Add
u góry, wypełnij wymagane informacje, a następnie wybierz pozycję Dodaj u dołu.Poczekaj na ukończenie dodawania nowego typu węzła
Dodawanie przy użyciu szablonu usługi ARM
Dodaj inny typ Microsoft.ServiceFabric/managedclusters/nodetypes
zasobu z wymaganymi wartościami i wykonaj wdrożenie klastra, aby ustawienie miało zastosowanie.
- Wersja interfejsu API zasobów klastra zarządzanego usługi Service Fabric powinna mieć wartość 2021-05-01 lub nowszą.
- Upewnij się, że ustawiono wartość na
isPrimary
true
, jeśli zamierzasz zastąpić istniejący typ węzła podstawowego.
{
"apiVersion": "[variables('sfApiVersion')]",
"type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
"name": "[concat(parameters('clusterName'), '/', parameters('nodeType2Name'))]",
"location": "[resourcegroup().location]",
"dependsOn": [
"[concat('Microsoft.ServiceFabric/managedclusters/', parameters('clusterName'))]"
],
"properties": {
"isPrimary": false,
"vmImagePublisher": "[parameters('vmImagePublisher')]",
"vmImageOffer": "[parameters('vmImageOffer')]",
"vmImageSku": "[parameters('vmImageSku')]",
"vmImageVersion": "[parameters('vmImageVersion')]",
"vmSize": "[parameters('nodeType2VmSize')]",
"vmInstanceCount": "[parameters('nodeType2VmInstanceCount')]",
"dataDiskSizeGB": "[parameters('nodeType2DataDiskSizeGB')]",
"dataDiskType": "[parameters('nodeType2managedDataDiskType')]"
}
}
Aby zapoznać się z przykładową konfiguracją typu węzła, zobacz nasz przykładowy szablon ARM typu dwa węzły.
Dodawanie za pomocą programu PowerShell
Aby utworzyć nowy typ węzła, należy zdefiniować następujące właściwości:
- Grupa zasobów: grupa zasobów, w ramach których znajduje się klaster
- Nazwa klastra: nazwa klastra zarządzanego
- Nazwa typu węzła: nazwa unikatowa od wszystkich istniejących typów węzłów w klastrze.
- Liczba wystąpień: początkowa liczba węzłów nowego typu węzła.
- Rozmiar maszyny wirtualnej: jednostka SKU maszyny wirtualnej dla węzłów. Jeśli nie zostanie określony, zostanie użyta wartość domyślna Standard_D2 .
Uwaga
W przypadku dodawania typu -Primary
węzła podstawowego należy użyć właściwości .
$resourceGroup = "myResourceGroup"
$clusterName = "mysfcluster"
$nodeTypeName = "nt2"
$vmSize = "Standard_D2_v2"
New-AzServiceFabricManagedNodeType -ResourceGroupName $resourceGroup -ClusterName $clusterName -Name $nodeTypeName -InstanceCount 3 -vmSize $vmSize
Usuwanie typu węzła
Typ węzła klastra zarządzanego usługi Service Fabric można usunąć przy użyciu portalu lub programu PowerShell.
Uwaga
Aby usunąć typ węzła podstawowego z klastra zarządzanego usługi Service Fabric, należy użyć programu PowerShell i musi istnieć więcej niż jeden podstawowy typ węzła.
Usuwanie za pomocą portalu
Zaloguj się w witrynie Azure Portal
Przejdź do strony Przegląd zasobu klastra. ! [Przykładowa strona przeglądu][omówienie]
Wybierz
Node types
wSettings
sekcjiWybierz element
Node Type
, który chcesz usunąć, a następnie wybierzDelete
u góry.
Usuwanie za pomocą programu PowerShell
Uwaga
Usunięcie typu węzła podstawowego dla scenariuszy, takich jak uaktualnienie jednostki SKU, potrwa wiele godzin, a postęp można monitorować przy użyciu narzędzia SFX. Węzły inicjują migrację jednego węzła na migrację jednego węzła na migrację domeny uaktualnienia (UD) naraz.
Aby usunąć typ węzła, należy zdefiniować następujące właściwości:
- Grupa zasobów: grupa zasobów, w ramach których znajduje się klaster
- Nazwa klastra: nazwa klastra zarządzanego
- Nazwa typu węzła: nazwa unikatowa od wszystkich istniejących typów węzłów w klastrze.
$resourceGroup = "myResourceGroup"
$clusterName = "myCluster"
$nodeTypeName = "nt2"
Remove-AzServiceFabricManagedNodeType -ResourceGroupName $resourceGroup -ClusterName $clusterName -Name $nodeTypeName
Skalowanie typu węzła
Typ węzła klastra zarządzanego usługi Service Fabric można skalować za pomocą portalu, szablonu usługi ARM lub programu PowerShell. Możesz również skonfigurować automatyczne skalowanie dla typu węzła pomocniczego, jeśli chcesz w pełni zautomatyzowane rozwiązanie.
Uwaga
- Nie można ustawić typu węzła podstawowego na skalowanie automatyczne i można ustawić go tylko na skalowanie ręczne.
- W przypadku typu węzła podstawowego nie będzie można przejść poniżej 3 węzłów dla klastra jednostki SKU w warstwie Podstawowa i 5 węzłów dla klastra jednostki SKU w warstwie Standardowa.
Skalowanie przy użyciu portalu
Z tego przewodnika dowiesz się, jak zmodyfikować liczbę węzłów dla typu węzła przy użyciu portalu.
Zaloguj się w witrynie Azure Portal
Przejdź do strony Przegląd zasobu klastra. ! [Przykładowa strona przeglądu][omówienie]
Wybierz
Node Types
wSettings
sekcjiWybierz element
Node type name
, który chcesz zmodyfikowaćW razie potrzeby przejrzyj i zaktualizuj właściwości typu węzła.
Wybierz
Manage node type scaling
, aby skonfigurować ustawienia skalowania i wybrać między niestandardowymi opcjami skalowania automatycznego i ręcznego skalowania. Autoskaluj to wbudowana funkcja, która ułatwia aplikacjom najlepsze wyniki w przypadku zmian zapotrzebowania. Możesz ręcznie skalować zasób do określonej liczby wystąpień lub za pomocą niestandardowych zasad skalowania automatycznego, które skaluje się na podstawie progów metryk. Można również zaplanować liczbę wystąpień w celu skalowania w wyznaczonych oknach czasu. Dowiedz się więcej o autoskalowania platformy Azure lub wyświetl film wideo z instrukcjami.Niestandardowe autoskalowania: wybierz odpowiednie
scale mode
ustawienie, aby zdefiniować niestandardowe zasady autoskalowania —Scale to a specific instance count
lubScale based on a metric
. Ten ostatni jest oparty na regułach wyzwalacza metryki, na przykład zwiększenie liczby wystąpień o 1, gdy wartość procentowa procesora CPU jest wyższa niż 70%. Po zdefiniowaniu zasad wybierzSave
u góry.Skalowanie ręczne: dopasuj
Node count
wartość do nowej wartości, którą chcesz wybrać, i wybierzSave
u góry. Na tym zrzucie ekranu wartość została zmieniona3
na5
.
Wybierz
Apply
u dołu, aby skonfigurować te zapisane ustawienia w typie węzła.Zostanie
Provisioning state
wyświetlony stan doUpdating
ukończenia. Po zakończeniu zostanie on wyświetlonySucceeded
ponownie.
Skalowanie typu węzła przy użyciu szablonu
Aby dostosować liczbę węzłów dla typu węzła przy użyciu szablonu usługi ARM, dostosuj vmInstanceCount
właściwość przy użyciu nowej wartości i wykonaj wdrożenie klastra, aby ustawienie miało zastosowanie. Klaster rozpoczyna automatyczne uaktualnianie. Po zakończeniu zobaczysz dodatkowe węzły.
- Wersja interfejsu API zasobów klastra zarządzanego usługi Service Fabric powinna mieć wartość 2021-05-01 lub nowszą.
Uwaga
Dostawca klastra zarządzanego zablokuje korekty skalowania i zwróci błąd, jeśli żądanie skalowania narusza wymagane minimum.
{
"apiVersion": "[variables('sfApiVersion')]",
"type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
"name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
"location": "[resourcegroup().location]",
"properties": {
...
"vmInstanceCount": "[parameters('nodeTypeVmInstanceCount')]",
...
}
}
Skalowanie typu węzła przy użyciu programu PowerShell
Zmień liczbę wystąpień, aby zwiększyć lub zmniejszyć liczbę węzłów w typie węzła, który chcesz skalować. Nazwy typów węzłów można znaleźć w szablonie usługi Azure Resource Manager (szablon ARM) z wdrożenia klastra lub w narzędziu Service Fabric Explorer.
$resourceGroup = "myResourceGroup"
$clusterName = "mysfcluster"
$nodeTypeName = "FE"
$instanceCount = "7"
Set-AzServiceFabricManagedNodeType -ResourceGroupName $resourceGroup -ClusterName $clusterName -name $nodeTypeName -InstanceCount $instanceCount -Verbose
Klaster rozpoczyna automatyczne uaktualnianie. Po zakończeniu zobaczysz dodatkowe węzły.
Włączanie automatycznych uaktualnień obrazów systemu operacyjnego
Możesz włączyć automatyczne uaktualnienia obrazów systemu operacyjnego do maszyn wirtualnych z uruchomionymi węzłami klastra zarządzanego. Mimo że zasoby zestawu skalowania maszyn wirtualnych są zarządzane w Twoim imieniu za pomocą klastrów zarządzanych usługi Service Fabric, możesz włączyć automatyczne uaktualnienia obrazów systemu operacyjnego dla węzłów klastra. Podobnie jak w przypadku klasycznych klastrów usługi Service Fabric węzły klastra zarządzanego nie są domyślnie uaktualniane, aby zapobiec niezamierzonym przerwom w działaniu klastra.
Uwaga
Automatyczne uaktualnianie obrazów systemu operacyjnego jest obsługiwane zarówno w przypadku obrazów platformy handlowej, jak i obrazów niestandardowych.
Aby włączyć automatyczne uaktualnienia systemu operacyjnego:
- Używanie interfejsu apiVersion
2021-05-01
lub nowszej wersji zasobów Microsoft.ServiceFabric/managedclusters i Microsoft.ServiceFabric/managedclusters/nodetypes - Ustaw właściwość
enableAutoOSUpgrade
klastra na true - Ustaw właściwość
vmImageVersion
zasobu nodeTypes klastra na najnowszą
Na przykład:
{
"apiVersion": "[variables('sfApiVersion')]",
"type": "Microsoft.ServiceFabric/managedclusters",
...
"properties": {
...
"enableAutoOSUpgrade": true
},
},
{
"apiVersion": "[variables('sfApiVersion')]",
"type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
...
"properties": {
...
"vmImageVersion": "latest",
...
}
}
}
Po włączeniu usługi Service Fabric rozpoczyna wykonywanie zapytań i śledzenie wersji obrazów systemu operacyjnego w klastrze zarządzanym. Jeśli jest dostępna nowa wersja systemu operacyjnego, typy węzłów klastra (zestawy skalowania maszyn wirtualnych) są uaktualniane pojedynczo. Uaktualnienia środowiska uruchomieniowego usługi Service Fabric są wykonywane tylko po potwierdzeniu, że żadne uaktualnienia obrazu systemu operacyjnego węzła klastra nie są w toku.
Jeśli uaktualnienie zakończy się niepowodzeniem, usługa Service Fabric ponowi próbę po upływie 24 godzin przez maksymalnie trzy próby. Podobnie jak w przypadku klasycznych (niezarządzanych) uaktualnień usługi Service Fabric, aplikacje lub węzły w złej kondycji mogą blokować uaktualnienie obrazu systemu operacyjnego.
Aby uzyskać więcej informacji na temat uaktualnień obrazów, zobacz Automatyczne uaktualnienia obrazów systemu operacyjnego za pomocą zestawów skalowania maszyn wirtualnych platformy Azure.
Modyfikowanie jednostki SKU systemu operacyjnego dla typu węzła
Klastry zarządzane usługi Service Fabric umożliwiają modyfikowanie jednostki SKU systemu operacyjnego dla typu węzła. Ten proces jest przydatny w scenariuszach, takich jak migracja z systemu Windows 2019 do systemu Windows 2022 lub jeśli chcesz przełączyć się do jednostki SKU server (Core) w porównaniu z serwerem ze środowiskiem pulpitu SKU.
Modyfikowanie jednostki SKU systemu operacyjnego za pomocą portalu
Z tego przewodnika dowiesz się, jak zmodyfikować obraz systemu operacyjnego dla typu węzła przy użyciu portalu.
Zaloguj się w witrynie Azure Portal
Przejdź do strony Przegląd zasobu klastra. ! [Przykładowa strona przeglądu][omówienie]
Wybierz
Node Types
wSettings
sekcjiWybierz element
Node type name
, który chcesz zmodyfikowaćDopasuj
OS Image
wartość do nowej wartości, którą chcesz wybrać, i wybierzApply
u dołu. ! [Przykład przedstawiający zmianę obrazu systemu operacyjnego][change-os-image]W tym
Provisioning state
pliku jest wyświetlany stanUpdating
i wykonuje jedną domenę uaktualnienia naraz. Po zakończeniu zostanie on wyświetlonySucceeded
ponownie.
Modyfikowanie jednostki SKU systemu operacyjnego przy użyciu szablonu
Aby zmodyfikować obraz systemu operacyjnego używany dla typu węzła przy użyciu szablonu usługi ARM, dostosuj vmImageSku
właściwość przy użyciu nowej wartości i wykonaj wdrożenie klastra, aby ustawienie zostało zastosowane. Dostawca klastra zarządzanego odtwarza obraz każdego wystąpienia przez domenę uaktualnienia.
- Wersja interfejsu API zasobów klastra zarządzanego usługi Service Fabric powinna mieć wartość 2021-05-01 lub nowszą.
{
"apiVersion": "[variables('sfApiVersion')]",
"type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
"name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
"location": "[resourcegroup().location]",
"properties": {
...
"vmImagePublisher": "[parameters('vmImagePublisher')]",
"vmImageOffer": "[parameters('vmImageOffer')]",
"vmImageSku": "[parameters('vmImageSku')]",
"vmImageVersion": "[parameters('vmImageVersion')]",
...
}
}
Konfigurowanie właściwości umieszczania dla typu węzła
Właściwości umieszczania są używane w celu zapewnienia, że niektóre obciążenia działają tylko na niektórych typach węzłów w klastrze. Klastry zarządzane usługi Service Fabric obsługują konfigurowanie tych właściwości za pośrednictwem portalu, szablonu usługi ARM lub programu PowerShell.
Konfigurowanie właściwości umieszczania za pomocą portalu
Z tego przewodnika dowiesz się, jak zmodyfikować właściwość umieszczania dla typu węzła przy użyciu portalu.
Zaloguj się w witrynie Azure Portal
Przejdź do strony Przegląd zasobu klastra. ! [Przykładowa strona przeglądu][omówienie]
Wybierz
Node Types
wSettings
sekcjiWybierz element
Node type name
, który chcesz zmodyfikowaćPlacement properties
W sekcji dodaj odpowiednią nazwę i wartość, a następnie wybierzApply
pozycję u dołu. Na tym zrzucie ekranuName
użyto elementu z elementemValue
true
.SSD_Premium
Zostanie
Provisioning state
wyświetlony stan doUpdating
ukończenia. Po zakończeniu zostanie on wyświetlonySucceeded
ponownie.
Konfigurowanie właściwości umieszczania przy użyciu szablonu
Aby dostosować właściwości umieszczania dla typu węzła przy użyciu szablonu usługi ARM, dostosuj placementProperties
właściwość przy użyciu co najmniej jednej nowej wartości i wykonaj wdrożenie klastra, aby ustawienie zaczęły obowiązywać. W poniższym przykładzie przedstawiono trzy wartości ustawiane dla typu węzła.
- Wersja interfejsu API zasobów klastra zarządzanego usługi Service Fabric powinna mieć wartość 2021-05-01 lub nowszą.
{
"apiVersion": "[variables('sfApiVersion')]",
"type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
"name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
"location": "[resourcegroup().location]",
"properties": {
"placementProperties": {
"PremiumSSD": "true",
"NodeColor": "green",
"SomeProperty": "5"
}
}
}
Konfigurowanie właściwości umieszczania za pomocą programu PowerShell
Poniższy przykład aktualizuje i zastępuje wszelkie istniejące właściwości umieszczania dla danego typu węzła.
$rgName = "testRG"
$clusterName = "testCluster"
$NodeTypeName = "nt1"
Set-AzServiceFabricManagedNodeType -ResourceGroupName $rgName -ClusterName $clusterName -name $NodeTypeName -PlacementProperty @{NodeColor="Red";SomeProperty="6";} -Verbose
Modyfikowanie jednostki SKU maszyny wirtualnej dla typu węzła
Aby zmodyfikować rozmiar jednostki SKU maszyny wirtualnej używany dla typu węzła przy użyciu szablonu usługi ARM, dostosuj vmSize
właściwość przy użyciu nowej wartości i wykonaj wdrożenie klastra, aby ustawienie zostało zastosowane. Dostawca klastra zarządzanego odtwarza obraz każdego wystąpienia przez domenę uaktualnienia. Aby uzyskać listę opcji jednostki SKU, zapoznaj się z tematem Rozmiary maszyn wirtualnych — Azure Virtual Machines | Microsoft Learn.
{
"apiVersion": "[variables('sfApiVersion')]",
"type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
"name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
"location": "[resourcegroup().location]",
"properties": {
...
"vmSize": "[parameters('vmImageVersion')]",
...
}
}
Konfigurowanie wielu dysków zarządzanych
Klastry zarządzane usługi Service Fabric domyślnie konfigurują jeden dysk zarządzany. Konfigurując następującą opcjonalną właściwość i wartości, można dodać więcej dysków zarządzanych do typów węzłów w klastrze. Możesz określić literę dysku, typ dysku i rozmiar dysku na dysk.
Skonfiguruj więcej dysków zarządzanych, deklarując additionalDataDisks
właściwość i wymagane parametry w szablonie usługi Resource Manager w następujący sposób:
Wymagania dotyczące funkcji
- Jednostka Lun musi być unikatowa na dysk i nie może używać zarezerwowanej lun 0 lub 1
- Litera dysku nie może używać liter zarezerwowanych C lub D i nie można jej modyfikować po utworzeniu. S jest używany domyślnie, jeśli nie zostanie określony.
- Musi określać obsługiwany typ dysku
- Wersja interfejsu API zasobów klastra zarządzanego usługi Service Fabric powinna mieć wartość 2022-01-01 lub nowszą.
{
"apiVersion": "[variables('sfApiVersion')]",
"type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
"name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
"location": "[resourcegroup().location]",
"properties": {
"additionalDataDisks": {
"lun": "2",
"diskSizeGB": "50",
"diskType": "Standard_LRS",
"diskLetter": "S"
}
}
}
Zobacz pełną listę dostępnych parametrów.
Konfigurowanie litery dysku dysku danych usługi Service Fabric
Klastry zarządzane usługi Service Fabric domyślnie konfigurują dysk danych usługi Service Fabric i automatycznie konfigurują literę dysku we wszystkich węzłach typu węzła. Konfigurując tę opcjonalną właściwość i wartość, można określić i pobrać literę dysku danych usługi Service Fabric, jeśli masz określone wymagania dotyczące mapowania liter dysku.
Wymagania dotyczące funkcji
- Litera dysku nie może używać liter zarezerwowanych C lub D i nie można jej modyfikować po utworzeniu. S jest używany jako domyślny, jeśli nie zostanie określony.
- Wersja interfejsu API zasobów klastra zarządzanego usługi Service Fabric powinna mieć wartość 2022-01-01 lub nowszą.
{
{
"apiVersion": "[variables('sfApiVersion')]",
"type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
"name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
"location": "[resourcegroup().location]",
"properties": {
"dataDiskLetter": "S"
}
}
}
Ustawianie prefiksu nazwy komputera
Klienci, którzy wymagają dłuższych nazw dla typu węzła w celu uzyskania bardziej szczegółowego opisu, korzyści z prefiksu nazwy komputera.
Uwaga
Prefiks nazwy komputera działa tylko dla wersji 2024-04-01 or later
interfejsu API usługi Service Fabric.
Zaimplementuj następujące zmiany szablonu usługi ARM, aby ustawić prefiks nazwy komputera:
{
"apiVersion": "2024-04-01",
"type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
"name": "[concat(parameters('clusterName'), '/', 'BE-testResourceGroup-testRegion-test')]",
"location": "[parameters('clusterLocation')]",
"dependsOn": [
"[concat('Microsoft.ServiceFabric/managedclusters/', parameters('clusterName'))]"
],
"properties": {
"isPrimary": false,
"dataDiskSizeGB": "[parameters('dataDiskSizeGB')]",
"vmImagePublisher": "[parameters('vmImagePublisher')]",
"vmImageOffer": "[parameters('vmImageOffer')]",
"vmImageSku": "[parameters('vmImageSku')]",
"vmImageVersion": "[parameters('vmImageVersion')]",
"vmSize": "[parameters('vmSize')]",
"vmInstanceCount": "[parameters('vmInstanceCount')]",
"computerNamePrefix": "computerNamePrefix"
}
}