Správa životního cyklu aplikací ve spravovaném clusteru pomocí Azure Resource Manageru
Ve spravovaném clusteru Service Fabric máte několik možností nasazení aplikací Azure Service Fabric. Doporučujeme používat Azure Resource Manager. Pokud používáte Resource Manager, můžete popsat aplikace a služby ve formátu JSON a pak je nasadit ve stejné šabloně Resource Manageru jako váš cluster. Na rozdíl od použití PowerShellu nebo Azure CLI k nasazení a správě aplikací nemusíte čekat, až bude cluster připravený. Registrace, zřizování a nasazení aplikací se můžou provádět v jednom kroku. Použití Resource Manageru je nejlepší způsob, jak spravovat životní cyklus aplikace v clusteru. Další informace najdete v tématu Osvědčené postupy: Infrastruktura jako kód.
Správa aplikací jako prostředků v Resource Manageru vám může pomoct získat vylepšení v těchto oblastech:
- Záznam auditu: Resource Manager provede audit každé operace a uchovává podrobný protokol aktivit. Protokol aktivit vám může pomoct trasovat všechny změny aplikací a clusteru.
- Řízení přístupu na základě role: Přístup ke clusterům a aplikacím nasazeným v clusteru můžete spravovat pomocí stejné šablony Resource Manageru.
- Efektivita správy: Použití Resource Manageru poskytuje jedno umístění (Azure Portal) pro správu clusteru a důležitých nasazení aplikací.
V tomto dokumentu se naučíte:
- Nasaďte prostředky aplikace Service Fabric pomocí Resource Manageru.
- Upgradujte prostředky aplikace Service Fabric pomocí Resource Manageru.
- Odstraňte prostředky aplikace Service Fabric.
Nasazení prostředků aplikace Service Fabric
Základní kroky, které provedete při nasazování aplikace a jejích služeb pomocí modelu prostředků aplikace Resource Manager, jsou:
- Zabalte kód aplikace.
- Nahrajte balíček.
- Odkazujte na umístění balíčku v šabloně Resource Manageru jako prostředek aplikace.
Další informace najdete v tématu Balíček aplikace.
Pak vytvoříte šablonu Resource Manageru, aktualizujete soubor parametrů podrobnostmi o aplikaci a nasadíte ji do spravovaného clusteru Service Fabric. Prozkoumejte ukázky.
Vytvoření účtu úložiště
Pokud chcete nasadit aplikaci ze šablony Resource Manageru, musíte mít účet úložiště. Účet úložiště slouží k vytvoření image aplikace.
Můžete znovu použít existující účet úložiště nebo můžete vytvořit nový účet úložiště pro přípravu aplikací. Pokud používáte existující účet úložiště, můžete tento krok přeskočit.
Upozornění
Anonymní veřejný přístup k datům objektů blob v účtu úložiště představuje bezpečnostní riziko. Při vytváření účtu úložiště doporučujeme zakázat anonymní veřejný přístup k datům objektů blob na úrovni účtu nastavením vlastnosti AllowBlobPublicAccess na false. Další informace najdete v tématu Náprava anonymního veřejného přístupu pro čtení k datům objektů blob (nasazení Azure Resource Manageru).
Konfigurace účtu úložiště
Po vytvoření účtu úložiště vytvoříte kontejner objektů blob, ve kterém se dají aplikace vytvořit. Na webu Azure Portal přejděte do účtu Azure Storage, do kterého chcete ukládat své aplikace. Vyberte Přidat kontejner objektů blob>.
Přístup ke kontejneru můžete udělit jedním z následujících způsobů:
- Můžete přiřadit roli Azure RBAC, která kontejneru uděluje oprávnění k objektu zabezpečení, aby objekt zabezpečení mohl přistupovat k datům v kontejneru prostřednictvím autorizace Microsoft Entra. Další informace naleznete v tématu Autorizace přístupu k objektům blob pomocí Microsoft Entra ID.
- Přístup ke kontejneru můžete delegovat pomocí sdíleného přístupového podpisu a udělit klientovi přístup k objektům blob v kontejneru po omezenou dobu a s konkrétními oprávněními. Další informace najdete v tématu Udělení omezeného přístupu k prostředkům Azure Storage pomocí sdílených přístupových podpisů (SAS).
- Přístupové klíče účtu můžete použít k autorizaci přístupu k datům objektů blob. Tento přístup je nejméně bezpečný a proto se nedoporučuje.
Příprava aplikace v účtu úložiště
Než budete moct nasadit aplikaci, musíte ji rozfázovat v úložišti objektů blob. V tomto kurzu vytvoříme balíček aplikace ručně. Mějte na paměti, že tento krok je možné automatizovat. Další informace naleznete v tématu Zabalení aplikace.
V tomto kurzu použijeme ukázkovou aplikaci Voting.
V sadě Visual Studio klikněte pravým tlačítkem myši na projekt Voting a pak vyberte Balíček.
Přejděte do adresáře .\service-fabric-dotnet-quickstart\Voting\pkg\Debug . Zazipujte obsah do souboru s názvem Voting.zip. Soubor ApplicationManifest.xml by měl být v kořenovém adresáři v souboru ZIP.
Přejmenujte soubor tak, aby změnil příponu z .zip na .sfpkg.
Na webu Azure Portal v kontejneru aplikací pro váš účet úložiště vyberte Nahrát a pak nahrajte Voting.sfpkg.
Teď je aplikace připravená a můžete vytvořit šablonu Resource Manageru pro nasazení aplikace.
Vytvoření šablony Resource Manageru
Ukázková aplikace obsahuje šablony Azure Resource Manageru, které můžete použít k nasazení aplikace. Názvy souborů šablon jsou UserApp.json a UserApp.Parameters.json.
Poznámka:
Soubor UserApp.Parameters.json musí být aktualizován názvem vašeho clusteru.
Parametr | Popis | Příklad | Komentáře |
---|---|---|---|
clusterName | Název clusteru, do který nasazujete | sf-cluster123 | |
aplikace | Název aplikace | Hlasování | |
version | ID prostředku, typ aplikace a verze aplikace. | /providers/Microsoft.ServiceFabric/managedClusters/sf-cluster-123/applicationTypes/VotingType/versions/1.0.0 | Musí odpovídat Souboru ApplicationManifest.xml. |
Název_služby | Název služby | VotingWeb | Musí být ve formátu ServiceType. |
serviceTypeName | Název typu služby | VotingWebType | Musí odpovídat ServiceManifest.xml |
appPackageUrl | Adresa URL úložiště objektů blob aplikace | https://servicefabricapps.blob.core.windows.net/apps/Voting.sfpkg | Adresa URL balíčku aplikace v úložišti objektů blob (postup nastavení adresy URL je popsaný dále v článku). |
{
"apiVersion": "2021-05-01",
"type": "Microsoft.ServiceFabric/managedclusters/applications",
"name": "[concat(parameters('clusterName'), '/', parameters('applicationName'))]",
"location": "[variables('clusterLocation')]",
},
{
"apiVersion": "2021-05-01",
"type": "Microsoft.ServiceFabric/managedclusters/applicationTypes",
"name": "[concat(parameters('clusterName'), '/', parameters('applicationTypeName'))]",
"location": "[variables('clusterLocation')]",
},
{
"apiVersion": "2021-05-01",
"type": "Microsoft.ServiceFabric/managedclusters/applicationTypes/versions",
"name": "[concat(parameters('clusterName'), '/', parameters('applicationTypeName'), '/', parameters('applicationTypeVersion'))]",
"location": "[variables('clusterLocation')]",
},
{
"apiVersion": "2021-05-01",
"type": "Microsoft.ServiceFabric/managedclusters/applications/services",
"name": "[concat(parameters('clusterName'), '/', parameters('applicationName'), '/', parameters('serviceName'))]",
"location": "[variables('clusterLocation')]"
}
Nasazení aplikace Service Fabric
Spuštěním rutiny New-AzResourceGroupDeployment nasaďte aplikaci do skupiny prostředků, která obsahuje váš cluster:
New-AzResourceGroupDeployment -ResourceGroupName "sf-cluster-rg" -TemplateParameterFile ".\UserApp.Parameters.json" -TemplateFile ".\UserApp.json" -Verbose
Upgrade aplikace Service Fabric pomocí Resource Manageru
Důležité
Všechny služby nasazované prostřednictvím šablony Azure Resource Manageru (ARM) musí být odebrány z části DefaultServices odpovídajícího souboru ApplicationManifest.xml.
Aplikaci, která už je nasazená do clusteru Service Fabric, můžete upgradovat z některého z těchto důvodů:
Do aplikace se přidá nová služba. Při přidání služby do aplikace je nutné přidat definici služby do souborů service-manifest.xml a application-manifest.xml . Pokud chcete odrážet novou verzi aplikace, musíte také změnit verzi typu aplikace z verze 1.0.0 na 1.0.1 v souboru UserApp.Parameters.json:
"applicationTypeVersion": { "value": "1.0.1" }, "serviceName2": { "value": "VotingData" }, "serviceTypeName2": { "value": "VotingDataType" }
Do aplikace se přidá nová verze existující služby. Mezi příklady patří změny kódu aplikace a aktualizace verze a názvu typu aplikace. Pro účely tohoto upgradu aktualizujte soubor UserApp.Parameters.json takto:
"applicationTypeVersion": { "value": "1.0.1" }
Odstranění prostředků aplikace Service Fabric
Poznámka:
Aplikace by se neměly odstraňovat prostřednictvím šablony Azure Resource Manageru (ARM), protože neexistuje deklarativní způsob čištění jednotlivých prostředků.
Odstranění aplikace Service Fabric nasazené pomocí modelu prostředků aplikace v Resource Manageru:
Pomocí rutiny Get-AzResource získejte ID prostředku pro aplikaci:
Get-AzResource -Name <String> | f1
Pomocí rutiny Remove-AzServiceFabricApplication odstraňte prostředky aplikace:
Remove-AzServiceFabricApplication -ResourceId <String> [-Force]
Migrace z modelu Classic na spravované clustery
Pokud migrujete aplikace z modelu Classic do spravovaných clusterů, budete se muset ujistit, že jsou správně zadané typy, nebo dojde k chybám.
Následující položky jsou označeny speciálně z důvodu četnosti použití, ale nemají být výhradním seznamem rozdílů.
- upgradeReplicaSetCheckTimeout je nyní celé číslo pro správu, ale řetězec v klasickéM SFRP.
Úplný seznam vlastností a typů v aplikacích spravovaných clusterů
Další kroky
Další informace o nasazení aplikace spravovaného clusteru:
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro