Service Fabric 管理対象クラスター ノード タイプでの仮想マシン スケール セット拡張機能のサポート
Service Fabric 管理対象クラスター内の各ノード タイプは、仮想マシン スケール セットによって提供されます。 これにより、Service Fabric 管理対象クラスター ノード タイプに仮想マシン スケール セット拡張機能を追加できます。 拡張機能は、Azure VM でのデプロイ後の構成と自動化を提供する小さなアプリケーションです。 Azure プラットフォームでは、VM の構成、監視、セキュリティ、およびユーティリティのアプリケーションを対象とする多くの拡張機能をホストします。 公開元は、アプリケーションを取得し、それを拡張機能にまとめて、インストールを簡略化します。 ユーザーは必須パラメーターを指定するだけで済みます。
仮想マシン スケール セット拡張機能の追加
Add-AzServiceFabricManagedNodeTypeVMExtension PowerShell コマンドを使用して、仮想マシン スケール セット拡張機能を Service Fabric 管理対象クラスター ノード タイプに追加できます。
または、Azure Resource Manager テンプレート内の Service Fabric 管理対象クラスター ノード タイプに仮想マシン スケール セット拡張機能を追加することもできます。次に例を示します。
{
"type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
"apiVersion": "[variables('sfApiVersion')]",
"name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
"dependsOn": [
"[concat('Microsoft.ServiceFabric/managedclusters/', parameters('clusterName'))]"
],
"location": "[resourceGroup().location]",
"properties": {
"isPrimary": true,
...
"vmExtensions": [
{
"name": "KvExtension",
"properties": {
"publisher": "Microsoft.Azure.KeyVault",
"type": "KeyVaultForWindows",
"typeHandlerVersion": "3.0",
"autoUpgradeMinorVersion": true,
"settings": {
"secretsManagementSettings": {
"observedCertificates": [
...
]
}
}
}
}
]
}
}
Service Fabric 管理対象クラスター ノード タイプの構成の詳細については、管理対象クラスター ノードタイプに関する記事を参照してください。
Service Fabric ランタイムの前にプロビジョニングする方法
Service Fabric ランタイムを開始する前に拡張機能をプロビジョニングするには、必要に応じて、拡張機能ごとに拡張機能プロパティの setupOrder
パラメーターを値 BeforeSFRuntime
で使用することができます。 これにより、ノード上でランタイムとアプリケーションの実行を開始する前に、環境と依存関係を設定できます。 詳しくは、以下の例を参照してください。
Note
BeforeSFRuntime
でマークされた拡張機能が失敗した場合、Service Fabric ランタイムが起動できなくなることに注意してください。 その結果、そのノードは Service Fabric から見るとダウン状態になります。 そのため、これらの拡張機能を正しい構成で維持し、発生する可能性のある問題に迅速に対処することで、クラスター内のノードの正常性を確保することが不可欠です。
必要条件
Service Fabric API バージョン 2023-09-01-preview
以降を使用します。
ARM テンプレートの例:
{
"type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
"apiVersion": "2023-09-01-preview",
"name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
"properties": {
"isPrimary": true,
...
"vmExtensions": [
{
"name": "KvExtension",
"properties": {
"setupOrder": [
"BeforeSFRuntime"
],
"provisionAfterExtensions" [ "GenevaMonitoringExtension" ],
"publisher": "Microsoft.Azure.KeyVault",
"type": "KeyVaultForWindows",
"typeHandlerVersion": "3.0",
"autoUpgradeMinorVersion": true,
"settings": {
"secretsManagementSettings": {
"observedCertificates": [
...
]
}
}
}
},
{
"name": "GenevaMonitoringExtension",
"properties": {
"setupOrder": [
"BeforeSFRuntime"
],
"autoUpgradeMinorVersion": true,
"enableAutomaticUpgrade": true,
"publisher": "Microsoft.Azure.Geneva",
"type": "GenevaMonitoring",
"typeHandlerVersion": "2.40",
"settings": {
"configurations": [
{
"ServiceArguments": {
...
},
"UserArguments": {
...
}
}
]
}
}
}
]
}
}
Note
AzureDiskEncryption (ADE) 拡張機能の特別な処理: ADE は Service Fabric ランタイムの前に実行する必要があります。再イメージ化操作後にディスクが確実に暗号化解除され、Service Fabric ランタイムがそれを使って開始できるようにするためです。 この拡張機能は、明示的に BeforeSFRuntime
でマークされていなくても、ランタイムの前に実行されます。 ただし、ADE 拡張機能を使うよりも、ホストでの暗号化を有効にすることをお勧めします。 詳しい手順については、「ホストでの暗号化を有効にする」を参照してください。
次のステップ
Service Fabric マネージド クラスターについて詳しくは、以下の記事をご覧ください。