Microsoft.ServiceFabric クラスター 2020-03-01
Bicep リソース定義
クラスターのリソースの種類は、次を対象とする操作でデプロイできます。
- リソース グループ - リソース グループのデプロイ コマンドに関するページを参照してください
各 API バージョンの変更されたプロパティの一覧については、「 変更ログ」を参照してください。
リソース形式
Microsoft.ServiceFabric/clusters リソースを作成するには、次の Bicep をテンプレートに追加します。
resource symbolicname 'Microsoft.ServiceFabric/clusters@2020-03-01' = {
name: 'string'
location: 'string'
tags: {
tagName1: 'tagValue1'
tagName2: 'tagValue2'
}
properties: {
addOnFeatures: [
'string'
]
applicationTypeVersionsCleanupPolicy: {
maxUnusedVersionsToKeep: int
}
azureActiveDirectory: {
clientApplication: 'string'
clusterApplication: 'string'
tenantId: 'string'
}
certificate: {
thumbprint: 'string'
thumbprintSecondary: 'string'
x509StoreName: 'string'
}
certificateCommonNames: {
commonNames: [
{
certificateCommonName: 'string'
certificateIssuerThumbprint: 'string'
}
]
x509StoreName: 'string'
}
clientCertificateCommonNames: [
{
certificateCommonName: 'string'
certificateIssuerThumbprint: 'string'
isAdmin: bool
}
]
clientCertificateThumbprints: [
{
certificateThumbprint: 'string'
isAdmin: bool
}
]
clusterCodeVersion: 'string'
diagnosticsStorageAccountConfig: {
blobEndpoint: 'string'
protectedAccountKeyName: 'string'
protectedAccountKeyName2: 'string'
queueEndpoint: 'string'
storageAccountName: 'string'
tableEndpoint: 'string'
}
eventStoreServiceEnabled: bool
fabricSettings: [
{
name: 'string'
parameters: [
{
name: 'string'
value: 'string'
}
]
}
]
managementEndpoint: 'string'
nodeTypes: [
{
applicationPorts: {
endPort: int
startPort: int
}
capacities: {
{customized property}: 'string'
}
clientConnectionEndpointPort: int
durabilityLevel: 'string'
ephemeralPorts: {
endPort: int
startPort: int
}
httpGatewayEndpointPort: int
isPrimary: bool
name: 'string'
placementProperties: {
{customized property}: 'string'
}
reverseProxyEndpointPort: int
vmInstanceCount: int
}
]
reliabilityLevel: 'string'
reverseProxyCertificate: {
thumbprint: 'string'
thumbprintSecondary: 'string'
x509StoreName: 'string'
}
reverseProxyCertificateCommonNames: {
commonNames: [
{
certificateCommonName: 'string'
certificateIssuerThumbprint: 'string'
}
]
x509StoreName: 'string'
}
upgradeDescription: {
deltaHealthPolicy: {
applicationDeltaHealthPolicies: {
{customized property}: {
defaultServiceTypeDeltaHealthPolicy: {
maxPercentDeltaUnhealthyServices: int
}
serviceTypeDeltaHealthPolicies: {
{customized property}: {
maxPercentDeltaUnhealthyServices: int
}
}
}
}
maxPercentDeltaUnhealthyApplications: int
maxPercentDeltaUnhealthyNodes: int
maxPercentUpgradeDomainDeltaUnhealthyNodes: int
}
forceRestart: bool
healthCheckRetryTimeout: 'string'
healthCheckStableDuration: 'string'
healthCheckWaitDuration: 'string'
healthPolicy: {
applicationHealthPolicies: {
{customized property}: {
defaultServiceTypeHealthPolicy: {
maxPercentUnhealthyServices: int
}
serviceTypeHealthPolicies: {
{customized property}: {
maxPercentUnhealthyServices: int
}
}
}
}
maxPercentUnhealthyApplications: int
maxPercentUnhealthyNodes: int
}
upgradeDomainTimeout: 'string'
upgradeReplicaSetCheckTimeout: 'string'
upgradeTimeout: 'string'
}
upgradeMode: 'string'
vmImage: 'string'
}
}
プロパティ値
clusters
名前 | 説明 | 値 |
---|---|---|
name | リソース名 | string (必須) 文字数制限: 4 から 23 有効な文字: 小文字、数字、およびハイフン。 小文字で開始します。 末尾には小文字または数字を使用します。 |
location | Azure リソースの場所。 | string (必須) |
tags | Azure リソース タグ。 | タグ名と値のディクショナリ。 「テンプレートのタグ」を参照してください |
properties | クラスター リソースのプロパティ | ClusterProperties |
ClusterProperties
名前 | 説明 | 値 |
---|---|---|
addOnFeatures | クラスターで有効にするアドオン機能の一覧。 | 次のいずれかを含む文字列配列: 'BackupRestoreService' 'DnsService' 'RepairManager' 'ResourceMonitorService' |
applicationTypeVersionsCleanupPolicy | 未使用のバージョンをクリーンするために使用されるポリシー。 | ApplicationTypeVersionsCleanupPolicy |
azureActiveDirectory | クラスターの AAD 認証設定。 | AzureActiveDirectory |
証明書 (certificate) | クラスターのセキュリティ保護に使用する証明書。 指定された証明書は、クラスター内のノード間セキュリティ、クラスター管理エンドポイント用の SSL 証明書、および既定の管理クライアントに使用されます。 | CertificateDescription |
certificateCommonNames | クラスターのセキュリティ保護に使用される共通名によって参照されるサーバー証明書の一覧について説明します。 | ServerCertificateCommonNames |
clientCertificateCommonNames | クラスターの管理が許可されている共通名によって参照されるクライアント証明書の一覧。 | ClientCertificateCommonName[] |
clientCertificateThumbprints | クラスターの管理が許可されている拇印によって参照されるクライアント証明書の一覧。 | ClientCertificateThumbprint[] |
clusterCodeVersion | クラスターの Service Fabric ランタイム バージョン。 このプロパティは、 upgradeMode が 'Manual' に設定されている場合にユーザーを設定することによってのみ実行できます。 新しいクラスターで使用可能な Service Fabric バージョンの一覧を取得するには、ClusterVersion API を使用します。 既存のクラスターで使用可能なバージョンの一覧を取得するには、 availableClusterVersions を使用します。 | string |
diagnosticsStorageAccountConfig | Service Fabric 診断ログを格納するためのストレージ アカウント情報。 | DiagnosticsStorageAccountConfig |
eventStoreServiceEnabled | イベント ストア サービスが有効かどうかを示します。 | [bool] |
fabricSettings | クラスターを構成するためのカスタム ファブリック設定の一覧。 | SettingsSectionDescription[] |
managementEndpoint | クラスターの http 管理エンドポイント。 | string (必須) |
nodeTypes | クラスター内のノードの種類の一覧。 | NodeTypeDescription[] (必須) |
reliabilityLevel | 信頼性レベルは、システム サービスのレプリカ セット サイズを設定します。
ReliabilityLevel について説明します。 - None - ターゲット レプリカ セット数が 1 のシステム サービスを実行します。 これは、テスト クラスターにのみ使用する必要があります。 - Bronze - ターゲット レプリカ セット数が 3 のシステム サービスを実行します。 これは、テスト クラスターにのみ使用する必要があります。 - Silver - ターゲット レプリカ セット数が 5 のシステム サービスを実行します。 - Gold - ターゲット レプリカ セット数が 7 のシステム サービスを実行します。 - Platinum - ターゲット レプリカ セット数が 9 のシステム サービスを実行します。 |
'ブロンズ' 'Gold' 'None' 'Platinum' 'Silver' |
reverseProxyCertificate | リバース プロキシで使用されるサーバー証明書。 | CertificateDescription |
reverseProxyCertificateCommonNames | クラスターのセキュリティ保護に使用される共通名によって参照されるサーバー証明書の一覧について説明します。 | ServerCertificateCommonNames |
upgradeDescription | クラスターのアップグレード時に使用するポリシー。 | ClusterUpgradePolicy |
upgradeMode | 新しい Service Fabric ランタイム バージョンが使用可能な場合のクラスターのアップグレード モード。 - 自動 - クラスターは、使用可能になるとすぐに、最新の Service Fabric ランタイム バージョンに自動的にアップグレードされます。 - 手動 - クラスターは、最新の Service Fabric ランタイム バージョンに自動的にアップグレードされません。 クラスターは、クラスター リソースで clusterCodeVersion プロパティを設定することによってアップグレードされます。 |
'Automatic' 'Manual' |
vmImage | VM イメージ VMSS は で構成されています。 Windows や Linux などの汎用名を使用できます。 | string |
ApplicationTypeVersionsCleanupPolicy
名前 | 説明 | 値 |
---|---|---|
maxUnusedVersionsToKeep | 保持するアプリケーションの種類ごとの未使用バージョンの数。 | int (必須) 制約: 最小値 = 0 |
AzureActiveDirectory
名前 | 説明 | 値 |
---|---|---|
clientApplication | Azure Active Directory クライアント アプリケーション ID。 | string |
clusterApplication | Azure Active Directory クラスター アプリケーション ID。 | string |
tenantId | Azure Active Directory テナント ID。 | string |
CertificateDescription
名前 | 説明 | 値 |
---|---|---|
thumbprint | プライマリ証明書の拇印。 | string (必須) |
thumbprintSecondary | セカンダリ証明書の拇印。 | string |
x509StoreName | ローカル証明書ストアの場所。 | 'AddressBook' 'AuthRoot' 'CertificateAuthority' 'Disallowed' 'My' 'Root' 'TrustedPeople' 'TrustedPublisher' |
ServerCertificateCommonNames
名前 | 説明 | 値 |
---|---|---|
commonNames | クラスターのセキュリティ保護に使用される共通名によって参照されるサーバー証明書の一覧。 | ServerCertificateCommonName[] |
x509StoreName | ローカル証明書ストアの場所。 | 'AddressBook' 'AuthRoot' 'CertificateAuthority' 'Disallowed' 'My' 'Root' 'TrustedPeople' 'TrustedPublisher' |
ServerCertificateCommonName
名前 | 説明 | 値 |
---|---|---|
certificateCommonName | サーバー証明書の共通名。 | string (必須) |
certificateIssuerThumbprint | サーバー証明書の発行者の拇印。 | string (必須) |
ClientCertificateCommonName
名前 | 説明 | 値 |
---|---|---|
certificateCommonName | クライアント証明書の共通名。 | string (必須) |
certificateIssuerThumbprint | クライアント証明書の発行者の拇印。 | string (必須) |
isAdmin | クライアント証明書がクラスターへの管理者アクセス権を持っているかどうかを示します。 管理者以外のクライアントは、クラスターに対して読み取り専用操作のみを実行できます。 | bool (必須) |
ClientCertificateThumbprint
名前 | 説明 | 値 |
---|---|---|
certificateThumbprint | クライアント証明書の拇印。 | string (必須) |
isAdmin | クライアント証明書がクラスターへの管理者アクセス権を持っているかどうかを示します。 管理者以外のクライアントは、クラスターに対して読み取り専用操作のみを実行できます。 | bool (必須) |
DiagnosticsStorageAccountConfig
名前 | 説明 | 値 |
---|---|---|
blobEndpoint | Azure ストレージ アカウントの BLOB エンドポイント。 | string (必須) |
protectedAccountKeyName | 保護された診断ストレージ キー名。 | string (必須) |
protectedAccountKeyName2 | セカンダリで保護された診断ストレージ キー名。 ストレージ アカウント キーの 1 つがローテーションされた場合、クラスターはもう一方を使用するようにフォールバックします。 | string |
queueEndpoint | Azure ストレージ アカウントのキュー エンドポイント。 | string (必須) |
storageAccountName | Azure ストレージ アカウント名。 | string (必須) |
tableEndpoint | Azure ストレージ アカウントのテーブル エンドポイント。 | string (必須) |
SettingsSectionDescription
名前 | 説明 | 値 |
---|---|---|
name | ファブリック設定のセクション名。 | string (必須) |
parameters | セクション内のパラメーターのコレクション。 | SettingsParameterDescription[] (必須) |
SettingsParameterDescription
名前 | 説明 | 値 |
---|---|---|
name | ファブリック設定のパラメーター名。 | string (必須) |
value | ファブリック設定のパラメーター値。 | string (必須) |
NodeTypeDescription
名前 | 説明 | 値 |
---|---|---|
applicationPorts | クラスターが Service Fabric アプリケーションにポートを割り当てたポートの範囲。 | EndpointRangeDescription |
capacities | ノードの種類のノードに適用される容量タグ。クラスター リソース マネージャーはこれらのタグを使用して、ノードに含まれるリソースの量を把握します。 | NodeTypeDescriptionCapacities |
clientConnectionEndpointPort | TCP クラスター管理エンドポイント ポート。 | int (必須) |
durabilityLevel | ノード タイプの持続性レベル。
DurabilityLevel について説明します。 - ブロンズ - 特権なし。 既定値です。 - Silver - インフラストラクチャ ジョブは、UD あたり 10 分間一時停止できます。 - Gold - インフラストラクチャ ジョブは、UD あたり 2 時間の間一時停止できます。 Gold の持続性は、D15_V2 や G5 などのフル ノードの VM SKU でのみ有効にできます。 |
'Bronze' 'Gold' 'Silver' |
ephemeralPorts | このノード タイプのノードを構成する必要があるエフェメラル ポートの範囲。 | EndpointRangeDescription |
httpGatewayEndpointPort | HTTP クラスター管理エンドポイント ポート。 | int (必須) |
isPrimary | システム サービスを実行するノードの種類。 プライマリとしてマークする必要があるノードの種類は 1 つだけです。 既存のクラスターのプライマリ ノードの種類を削除または変更することはできません。 | bool (必須) |
name | ノードの種類の名前。 | string (必須) |
placementProperties | ノード の種類のノードに適用される配置タグ。これは、特定のサービス (ワークロード) を実行する場所を示すために使用できます。 | NodeTypeDescriptionPlacementProperties |
reverseProxyEndpointPort | リバース プロキシで使用されるエンドポイント。 | INT |
vmInstanceCount | ノード の種類のノードの数。 この数は、対応する VirtualMachineScaleSet リソースの capacity プロパティと一致する必要があります。 | int (必須) 制約: 最小値 = 1 最大値 = 2147483647 |
EndpointRangeDescription
名前 | 説明 | 値 |
---|---|---|
endPort | ポートの範囲の終了ポート | int (必須) |
startPort | 一連のポートの開始ポート | int (必須) |
NodeTypeDescriptionCapacities
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | string |
NodeTypeDescriptionPlacementProperties
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | string |
ClusterUpgradePolicy
名前 | 説明 | 値 |
---|---|---|
deltaHealthPolicy | クラスターのアップグレード時に使用されるクラスター差分正常性ポリシー。 | ClusterUpgradeDeltaHealthPolicy |
forceRestart | true の場合、コード バージョンが変更されていない場合でも、アップグレード中にプロセスが強制的に再起動されます (アップグレードによって構成またはデータのみが変更されます)。 | [bool] |
healthCheckRetryTimeout | アップグレードがロールバックされるまでにアプリケーションまたはクラスターが異常な場合に正常性評価を再試行する時間。 タイムアウトは、hh:mm:ss または d.hh:mm:ss.ms 形式のいずれかです。 | string (必須) |
healthCheckStableDuration | アプリケーションまたはクラスターが正常な状態である必要がある時間。この時間を超えると、アップグレードが次のアップグレード ドメインに進みます。 期間は、hh:mm:ss または d.hh:mm:ss.ms 形式のいずれかです。 | string (必須) |
healthCheckWaitDuration | アップグレード ドメインを完了してから正常性チェックを実行するまでの待機時間。 期間は、hh:mm:ss または d.hh:mm:ss.ms 形式のいずれかです。 | string (必須) |
healthPolicy | クラスターのアップグレード時に使用されるクラスター正常性ポリシー。 | ClusterHealthPolicy (必須) |
upgradeDomainTimeout | アップグレード がロールバックされるまでに各アップグレード ドメインが完了する必要がある時間。 タイムアウトは、hh:mm:ss または d.hh:mm:ss.ms 形式のいずれかです。 | string (必須) |
upgradeReplicaSetCheckTimeout | アップグレード ドメインの処理をブロックし、予期しない問題が発生したときに可用性の損失を防ぐための最長時間。 このタイムアウトが期限切れになると、可用性の損失問題に関係なく、アップグレード ドメインの処理が続行されます。 タイムアウトは、各アップグレード ドメインの開始時にリセットされます。 タイムアウトは、hh:mm:ss または d.hh:mm:ss.ms 形式のいずれかです。 | string (必須) |
upgradeTimeout | アップグレードがロールバックされるまでに全体的なアップグレードが完了する必要がある時間。 タイムアウトは、hh:mm:ss または d.hh:mm:ss.ms 形式のいずれかです。 | string (必須) |
ClusterUpgradeDeltaHealthPolicy
名前 | 説明 | 値 |
---|---|---|
applicationDeltaHealthPolicies | クラスターのアップグレード時にアプリケーションまたはその子エンティティの正常性を評価するために使用されるアプリケーション デルタ正常性ポリシー マップを定義します。 | ApplicationDeltaHealthPolicyMap |
maxPercentDeltaUnhealthyApplications | クラスターのアップグレード中に許容されるアプリケーションの正常性低下の最大許容割合。 差分は、アップグレードの開始時のアプリケーションの状態と、正常性評価時のアプリケーションの状態との間で測定されます。 チェックは、すべてのアップグレード ドメインのアップグレード完了後に実行され、クラスターのグローバル状態が許容範囲内であることを確認します。 システム サービスはこれに含まれません。 |
int (必須) 制約: 最小値 = 0 最大値 = 100 |
maxPercentDeltaUnhealthyNodes | クラスターのアップグレード時に許容できるノードの正常性低下の最大許容パーセンテージ。 差分は、アップグレードの開始時のノードの状態と、正常性評価の時のノードの状態の間で測定されます。 チェックは、すべてのアップグレード ドメインのアップグレード完了後に実行され、クラスターのグローバル状態が許容範囲内であることを確認します。 |
int (必須) 制約: 最小値 = 0 最大値 = 100 |
maxPercentUpgradeDomainDeltaUnhealthyNodes | クラスターのアップグレード時に許容できるアップグレード ドメイン ノードの正常性低下の最大許容パーセンテージ。 差分は、アップグレードの開始時のアップグレード ドメイン ノードの状態と、正常性評価の時のアップグレード ドメイン ノードの状態の間で測定されます。 チェックは、すべてのアップグレード ドメインのアップグレード完了後にすべての完了したアップグレード ドメインに対して実行され、アップグレード ドメインの状態が許容範囲内であることを確認します。 |
int (必須) 制約: 最小値 = 0 最大値 = 100 |
ApplicationDeltaHealthPolicyMap
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | ApplicationDeltaHealthPolicy |
ApplicationDeltaHealthPolicy
名前 | 説明 | 値 |
---|---|---|
defaultServiceTypeDeltaHealthPolicy | クラスターのアップグレード時にサービスの種類の正常性を評価するために既定で使用されるデルタ正常性ポリシー。 | ServiceTypeDeltaHealthPolicy |
serviceTypeDeltaHealthPolicies | サービスの種類の名前ごとのサービスの種類のデルタ正常性ポリシーを含むマップ。 このマップは、既定では空です。 | ServiceTypeDeltaHealthPolicyMap |
ServiceTypeDeltaHealthPolicy
名前 | 説明 | 値 |
---|---|---|
maxPercentDeltaUnhealthyServices | クラスターのアップグレード中に許容されるサービスの正常性低下の最大許容割合。 差分は、アップグレードの開始時のサービスの状態と正常性評価時のサービスの状態との間で測定されます。 チェックは、すべてのアップグレード ドメインのアップグレード完了後に実行され、クラスターのグローバル状態が許容範囲内であることを確認します。 |
INT 制約: 最小値 = 0 最大値 = 100 |
ServiceTypeDeltaHealthPolicyMap
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | ServiceTypeDeltaHealthPolicy |
ClusterHealthPolicy
名前 | 説明 | 値 |
---|---|---|
applicationHealthPolicies | アプリケーションまたはその子エンティティの正常性を評価するために使用されるアプリケーション正常性ポリシー マップを定義します。 | ApplicationHealthPolicyMap |
maxPercentUnhealthyApplications | エラーを報告する前の異常なアプリケーションの最大許容パーセンテージ。 たとえば、アプリケーションの 10% の異常を許容するには、この値を 10 にします。 パーセンテージは、異常な可能性のあるアプリケーションの最大許容パーセンテージを表します。この値を超えるとクラスターはエラーの状態と見なされます。 許容パーセンテージ内であっても、1 つ以上の異常なアプリケーションがある場合は、正常性は Warning として評価されます。 これは、異常なアプリケーションの数をクラスター内のアプリケーション インスタンスの総数で割ることによって計算されます。ApplicationTypeHealthPolicyMap に含まれているアプリケーションの種類のアプリケーションは除外されます。 切り上げ計算が実行され、少数のアプリケーションに対する 1 つのエラーは許容されます。 既定のパーセンテージは 0 です。 |
INT 制約: 最小値 = 0 最大値 = 100 |
maxPercentUnhealthyNodes | エラーを報告する前の異常なノードの最大許容パーセンテージ。 たとえば、ノードの 10% の異常を許容するには、この値を 10 にします。 パーセンテージは、異常な可能性のあるノードの最大許容パーセンテージを表します。この値を超えるとクラスターはエラーの状態と見なされます。 許容パーセンテージ内であっても、1 つ以上の異常なノードがある場合は、正常性は Warning として評価されます。 パーセンテージは、異常なノードの数をクラスター内のノードの総数で割ることによって計算されます。 切り上げ計算が実行され、少数のノードに対する 1 つのエラーは許容されます。 既定のパーセンテージは 0 です。 大規模なクラスターでは、ダウンしているか修復を必要とするノードがいくつか必ず存在するため、それが許容されるようにこのパーセンテージを構成する必要があります。 |
INT 制約: 最小値 = 0 最大値 = 100 |
ApplicationHealthPolicyMap
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | ApplicationHealthPolicy |
ApplicationHealthPolicy
名前 | 説明 | 値 |
---|---|---|
defaultServiceTypeHealthPolicy | サービスの種類の正常性を評価するために既定で使用される正常性ポリシー。 | ServiceTypeHealthPolicy |
serviceTypeHealthPolicies | サービスの種類の名前ごとのサービスの種類の正常性ポリシーを含むマップ。 このマップは、既定では空です。 | ServiceTypeHealthPolicyMap |
ServiceTypeHealthPolicy
名前 | 説明 | 値 |
---|---|---|
maxPercentUnhealthyServices | アプリケーションがエラーと見なされる前に、異常が許容されるサービスの最大割合。 | INT 制約: 最小値 = 0 最大値 = 100 |
ServiceTypeHealthPolicyMap
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | ServiceTypeHealthPolicy |
クイック スタート テンプレート
次のクイックスタート テンプレートでは、このリソースの種類をデプロイします。
Template | 説明 |
---|---|
5 ノードの Ubuntu Service Fabric クラスターをデプロイする |
このテンプレートを使用すると、Ubuntu を実行するセキュリティで保護された 5 ノードの Service Fabric クラスターを、Standard_D2_V2 サイズ VMSS にデプロイできます。 |
5 ノードセキュリティで保護されたクラスターをデプロイする |
このテンプレートを使用すると、Windows Server 2019 Datacenter を実行するセキュリティで保護された 5 ノードの Service Fabric クラスターを、Standard_D2_v2 サイズの VMSS にデプロイできます。 |
NSG が有効になっている 3 Nodetype Secure Cluster をデプロイする |
このテンプレートを使用すると、Windows Server 2016 データ センターを実行するセキュリティで保護された 3 ノードタイプの Service fabric クラスターを、Standard_D2 サイズの VM にデプロイできます。 このテンプレートを使用すると、ネットワーク セキュリティ グループを使用して、受信および送信のネットワーク トラフィックを制御できます。 |
ARM テンプレート リソース定義
クラスターのリソースの種類は、次を対象とする操作でデプロイできます。
- リソース グループ - リソース グループのデプロイ コマンドに関するページを参照してください
各 API バージョンの変更されたプロパティの一覧については、「 変更ログ」を参照してください。
リソース形式
Microsoft.ServiceFabric/clusters リソースを作成するには、次の JSON をテンプレートに追加します。
{
"type": "Microsoft.ServiceFabric/clusters",
"apiVersion": "2020-03-01",
"name": "string",
"location": "string",
"tags": {
"tagName1": "tagValue1",
"tagName2": "tagValue2"
},
"properties": {
"addOnFeatures": [ "string" ],
"applicationTypeVersionsCleanupPolicy": {
"maxUnusedVersionsToKeep": "int"
},
"azureActiveDirectory": {
"clientApplication": "string",
"clusterApplication": "string",
"tenantId": "string"
},
"certificate": {
"thumbprint": "string",
"thumbprintSecondary": "string",
"x509StoreName": "string"
},
"certificateCommonNames": {
"commonNames": [
{
"certificateCommonName": "string",
"certificateIssuerThumbprint": "string"
}
],
"x509StoreName": "string"
},
"clientCertificateCommonNames": [
{
"certificateCommonName": "string",
"certificateIssuerThumbprint": "string",
"isAdmin": "bool"
}
],
"clientCertificateThumbprints": [
{
"certificateThumbprint": "string",
"isAdmin": "bool"
}
],
"clusterCodeVersion": "string",
"diagnosticsStorageAccountConfig": {
"blobEndpoint": "string",
"protectedAccountKeyName": "string",
"protectedAccountKeyName2": "string",
"queueEndpoint": "string",
"storageAccountName": "string",
"tableEndpoint": "string"
},
"eventStoreServiceEnabled": "bool",
"fabricSettings": [
{
"name": "string",
"parameters": [
{
"name": "string",
"value": "string"
}
]
}
],
"managementEndpoint": "string",
"nodeTypes": [
{
"applicationPorts": {
"endPort": "int",
"startPort": "int"
},
"capacities": {
"{customized property}": "string"
},
"clientConnectionEndpointPort": "int",
"durabilityLevel": "string",
"ephemeralPorts": {
"endPort": "int",
"startPort": "int"
},
"httpGatewayEndpointPort": "int",
"isPrimary": "bool",
"name": "string",
"placementProperties": {
"{customized property}": "string"
},
"reverseProxyEndpointPort": "int",
"vmInstanceCount": "int"
}
],
"reliabilityLevel": "string",
"reverseProxyCertificate": {
"thumbprint": "string",
"thumbprintSecondary": "string",
"x509StoreName": "string"
},
"reverseProxyCertificateCommonNames": {
"commonNames": [
{
"certificateCommonName": "string",
"certificateIssuerThumbprint": "string"
}
],
"x509StoreName": "string"
},
"upgradeDescription": {
"deltaHealthPolicy": {
"applicationDeltaHealthPolicies": {
"{customized property}": {
"defaultServiceTypeDeltaHealthPolicy": {
"maxPercentDeltaUnhealthyServices": "int"
},
"serviceTypeDeltaHealthPolicies": {
"{customized property}": {
"maxPercentDeltaUnhealthyServices": "int"
}
}
}
},
"maxPercentDeltaUnhealthyApplications": "int",
"maxPercentDeltaUnhealthyNodes": "int",
"maxPercentUpgradeDomainDeltaUnhealthyNodes": "int"
},
"forceRestart": "bool",
"healthCheckRetryTimeout": "string",
"healthCheckStableDuration": "string",
"healthCheckWaitDuration": "string",
"healthPolicy": {
"applicationHealthPolicies": {
"{customized property}": {
"defaultServiceTypeHealthPolicy": {
"maxPercentUnhealthyServices": "int"
},
"serviceTypeHealthPolicies": {
"{customized property}": {
"maxPercentUnhealthyServices": "int"
}
}
}
},
"maxPercentUnhealthyApplications": "int",
"maxPercentUnhealthyNodes": "int"
},
"upgradeDomainTimeout": "string",
"upgradeReplicaSetCheckTimeout": "string",
"upgradeTimeout": "string"
},
"upgradeMode": "string",
"vmImage": "string"
}
}
プロパティ値
clusters
名前 | 説明 | 値 |
---|---|---|
type | リソースの種類 | 'Microsoft.ServiceFabric/clusters' |
apiVersion | リソース API のバージョン | '2020-03-01' |
name | リソース名 | string (必須) 文字数制限: 4 から 23 有効な文字: 小文字、数字、およびハイフン。 小文字で開始します。 末尾には小文字または数字を使用します。 |
location | Azure リソースの場所。 | string (必須) |
tags | Azure リソース タグ。 | タグ名と値のディクショナリ。 「テンプレートのタグ」を参照してください |
properties | クラスター リソースのプロパティ | ClusterProperties |
ClusterProperties
名前 | 説明 | 値 |
---|---|---|
addOnFeatures | クラスターで有効にするアドオン機能の一覧。 | 次のいずれかを含む文字列配列: 'BackupRestoreService' 'DnsService' 'RepairManager' 'ResourceMonitorService' |
applicationTypeVersionsCleanupPolicy | 未使用のバージョンをクリーンするために使用されるポリシー。 | ApplicationTypeVersionsCleanupPolicy |
azureActiveDirectory | クラスターの AAD 認証設定。 | AzureActiveDirectory |
証明書 (certificate) | クラスターのセキュリティ保護に使用する証明書。 指定された証明書は、クラスター内のノード間セキュリティ、クラスター管理エンドポイント用の SSL 証明書、および既定の管理クライアントに使用されます。 | CertificateDescription |
certificateCommonNames | クラスターのセキュリティ保護に使用される共通名によって参照されるサーバー証明書の一覧について説明します。 | ServerCertificateCommonNames |
clientCertificateCommonNames | クラスターの管理が許可されている共通名によって参照されるクライアント証明書の一覧。 | ClientCertificateCommonName[] |
clientCertificateThumbprints | クラスターの管理が許可されている拇印によって参照されるクライアント証明書の一覧。 | ClientCertificateThumbprint[] |
clusterCodeVersion | クラスターの Service Fabric ランタイム バージョン。 このプロパティは、 upgradeMode が 'Manual' に設定されている場合にユーザーを設定することによってのみ実行できます。 新しいクラスターで使用可能な Service Fabric バージョンの一覧を取得するには、ClusterVersion API を使用します。 既存のクラスターで使用可能なバージョンの一覧を取得するには、 availableClusterVersions を使用します。 | string |
diagnosticsStorageAccountConfig | Service Fabric 診断ログを格納するためのストレージ アカウント情報。 | DiagnosticsStorageAccountConfig |
eventStoreServiceEnabled | イベント ストア サービスが有効かどうかを示します。 | [bool] |
fabricSettings | クラスターを構成するためのカスタム ファブリック設定の一覧。 | SettingsSectionDescription[] |
managementEndpoint | クラスターの http 管理エンドポイント。 | string (必須) |
nodeTypes | クラスター内のノードの種類の一覧。 | NodeTypeDescription[] (必須) |
reliabilityLevel | 信頼性レベルは、システム サービスのレプリカ セット サイズを設定します。
ReliabilityLevel について説明します。 - None - ターゲット レプリカ セット数が 1 のシステム サービスを実行します。 これは、テスト クラスターにのみ使用する必要があります。 - Bronze - ターゲット レプリカ セット数が 3 のシステム サービスを実行します。 これは、テスト クラスターにのみ使用する必要があります。 - Silver - ターゲット レプリカ セット数が 5 のシステム サービスを実行します。 - Gold - ターゲット レプリカ セット数が 7 のシステム サービスを実行します。 - Platinum - ターゲット レプリカ セット数が 9 のシステム サービスを実行します。 |
'ブロンズ' 'Gold' 'None' 'Platinum' 'Silver' |
reverseProxyCertificate | リバース プロキシで使用されるサーバー証明書。 | CertificateDescription |
reverseProxyCertificateCommonNames | クラスターのセキュリティ保護に使用される共通名によって参照されるサーバー証明書の一覧について説明します。 | ServerCertificateCommonNames |
upgradeDescription | クラスターのアップグレード時に使用するポリシー。 | ClusterUpgradePolicy |
upgradeMode | 新しい Service Fabric ランタイム バージョンが使用可能な場合のクラスターのアップグレード モード。 - 自動 - クラスターは、使用可能になるとすぐに、最新の Service Fabric ランタイム バージョンに自動的にアップグレードされます。 - 手動 - クラスターは、最新の Service Fabric ランタイム バージョンに自動的にアップグレードされません。 クラスターは、クラスター リソースで clusterCodeVersion プロパティを設定することによってアップグレードされます。 |
'Automatic' 'Manual' |
vmImage | VM イメージ VMSS は で構成されています。 Windows や Linux などの汎用名を使用できます。 | string |
ApplicationTypeVersionsCleanupPolicy
名前 | 説明 | 値 |
---|---|---|
maxUnusedVersionsToKeep | 保持するアプリケーションの種類ごとの未使用バージョンの数。 | int (必須) 制約: 最小値 = 0 |
AzureActiveDirectory
名前 | 説明 | 値 |
---|---|---|
clientApplication | Azure Active Directory クライアント アプリケーション ID。 | string |
clusterApplication | Azure Active Directory クラスター アプリケーション ID。 | string |
tenantId | Azure Active Directory テナント ID。 | string |
CertificateDescription
名前 | 説明 | 値 |
---|---|---|
thumbprint | プライマリ証明書の拇印。 | string (必須) |
thumbprintSecondary | セカンダリ証明書の拇印。 | string |
x509StoreName | ローカル証明書ストアの場所。 | 'AddressBook' 'AuthRoot' 'CertificateAuthority' 'Disallowed' 'My' 'Root' 'TrustedPeople' 'TrustedPublisher' |
ServerCertificateCommonNames
名前 | 説明 | 値 |
---|---|---|
commonNames | クラスターのセキュリティ保護に使用される共通名によって参照されるサーバー証明書の一覧。 | ServerCertificateCommonName[] |
x509StoreName | ローカル証明書ストアの場所。 | 'AddressBook' 'AuthRoot' 'CertificateAuthority' 'Disallowed' 'My' 'Root' 'TrustedPeople' 'TrustedPublisher' |
ServerCertificateCommonName
名前 | 説明 | 値 |
---|---|---|
certificateCommonName | サーバー証明書の共通名。 | string (必須) |
certificateIssuerThumbprint | サーバー証明書の発行者の拇印。 | string (必須) |
ClientCertificateCommonName
名前 | 説明 | 値 |
---|---|---|
certificateCommonName | クライアント証明書の共通名。 | string (必須) |
certificateIssuerThumbprint | クライアント証明書の発行者の拇印。 | string (必須) |
isAdmin | クライアント証明書がクラスターへの管理者アクセス権を持っているかどうかを示します。 管理者以外のクライアントは、クラスターに対して読み取り専用操作のみを実行できます。 | bool (必須) |
ClientCertificateThumbprint
名前 | 説明 | 値 |
---|---|---|
certificateThumbprint | クライアント証明書の拇印。 | string (必須) |
isAdmin | クライアント証明書がクラスターへの管理者アクセス権を持っているかどうかを示します。 管理者以外のクライアントは、クラスターに対して読み取り専用操作のみを実行できます。 | bool (必須) |
DiagnosticsStorageAccountConfig
名前 | 説明 | 値 |
---|---|---|
blobEndpoint | Azure ストレージ アカウントの BLOB エンドポイント。 | string (必須) |
protectedAccountKeyName | 保護された診断ストレージ キー名。 | string (必須) |
protectedAccountKeyName2 | セカンダリで保護された診断ストレージ キー名。 ストレージ アカウント キーの 1 つがローテーションされた場合、クラスターはもう一方を使用するようにフォールバックします。 | string |
queueEndpoint | Azure ストレージ アカウントのキュー エンドポイント。 | string (必須) |
storageAccountName | Azure ストレージ アカウント名。 | string (必須) |
tableEndpoint | Azure ストレージ アカウントのテーブル エンドポイント。 | string (必須) |
SettingsSectionDescription
名前 | 説明 | 値 |
---|---|---|
name | ファブリック設定のセクション名。 | string (必須) |
parameters | セクション内のパラメーターのコレクション。 | SettingsParameterDescription[] (必須) |
SettingsParameterDescription
名前 | 説明 | 値 |
---|---|---|
name | ファブリック設定のパラメーター名。 | string (必須) |
value | ファブリック設定のパラメーター値。 | string (必須) |
NodeTypeDescription
名前 | 説明 | 値 |
---|---|---|
applicationPorts | クラスターが Service Fabric アプリケーションにポートを割り当てたポートの範囲。 | EndpointRangeDescription |
capacities | ノードの種類のノードに適用される容量タグ。クラスター リソース マネージャーはこれらのタグを使用して、ノードに含まれるリソースの量を把握します。 | NodeTypeDescriptionCapacities |
clientConnectionEndpointPort | TCP クラスター管理エンドポイント ポート。 | int (必須) |
durabilityLevel | ノード タイプの持続性レベル。
DurabilityLevel について説明します。 - ブロンズ - 特権なし。 既定値です。 - Silver - インフラストラクチャ ジョブは、UD あたり 10 分間一時停止できます。 - Gold - インフラストラクチャ ジョブは、UD あたり 2 時間の間一時停止できます。 Gold の持続性は、D15_V2 や G5 などのフル ノードの VM SKU でのみ有効にできます。 |
'Bronze' 'Gold' 'Silver' |
ephemeralPorts | このノード タイプのノードを構成する必要があるエフェメラル ポートの範囲。 | EndpointRangeDescription |
httpGatewayEndpointPort | HTTP クラスター管理エンドポイント ポート。 | int (必須) |
isPrimary | システム サービスを実行するノードの種類。 プライマリとしてマークする必要があるノードの種類は 1 つだけです。 既存のクラスターのプライマリ ノードの種類を削除または変更することはできません。 | bool (必須) |
name | ノードの種類の名前。 | string (必須) |
placementProperties | ノード の種類のノードに適用される配置タグ。これは、特定のサービス (ワークロード) を実行する場所を示すために使用できます。 | NodeTypeDescriptionPlacementProperties |
reverseProxyEndpointPort | リバース プロキシで使用されるエンドポイント。 | INT |
vmInstanceCount | ノード の種類のノードの数。 この数は、対応する VirtualMachineScaleSet リソースの capacity プロパティと一致する必要があります。 | int (必須) 制約: 最小値 = 1 最大値 = 2147483647 |
EndpointRangeDescription
名前 | 説明 | 値 |
---|---|---|
endPort | ポートの範囲の終了ポート | int (必須) |
startPort | 一連のポートの開始ポート | int (必須) |
NodeTypeDescriptionCapacities
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | string |
NodeTypeDescriptionPlacementProperties
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | string |
ClusterUpgradePolicy
名前 | 説明 | 値 |
---|---|---|
deltaHealthPolicy | クラスターのアップグレード時に使用されるクラスター差分正常性ポリシー。 | ClusterUpgradeDeltaHealthPolicy |
forceRestart | true の場合、コード バージョンが変更されていない場合でも、アップグレード中にプロセスが強制的に再起動されます (アップグレードによって構成またはデータのみが変更されます)。 | [bool] |
healthCheckRetryTimeout | アップグレードがロールバックされるまでにアプリケーションまたはクラスターが異常な場合に正常性評価を再試行する時間。 タイムアウトは、hh:mm:ss または d.hh:mm:ss.ms 形式のいずれかです。 | string (必須) |
healthCheckStableDuration | アプリケーションまたはクラスターが正常な状態である必要がある時間。この時間を超えると、アップグレードが次のアップグレード ドメインに進みます。 期間は、hh:mm:ss または d.hh:mm:ss.ms 形式のいずれかです。 | string (必須) |
healthCheckWaitDuration | アップグレード ドメインを完了してから正常性チェックを実行するまでの待機時間。 期間は、hh:mm:ss または d.hh:mm:ss.ms 形式のいずれかです。 | string (必須) |
healthPolicy | クラスターのアップグレード時に使用されるクラスター正常性ポリシー。 | ClusterHealthPolicy (必須) |
upgradeDomainTimeout | アップグレード がロールバックされるまでに各アップグレード ドメインが完了する必要がある時間。 タイムアウトは、hh:mm:ss または d.hh:mm:ss.ms 形式のいずれかです。 | string (必須) |
upgradeReplicaSetCheckTimeout | アップグレード ドメインの処理をブロックし、予期しない問題が発生したときに可用性の損失を防ぐための最長時間。 このタイムアウトが期限切れになると、可用性の損失問題に関係なく、アップグレード ドメインの処理が続行されます。 タイムアウトは、各アップグレード ドメインの開始時にリセットされます。 タイムアウトは、hh:mm:ss または d.hh:mm:ss.ms 形式のいずれかです。 | string (必須) |
upgradeTimeout | アップグレードがロールバックされるまでに全体的なアップグレードが完了する必要がある時間。 タイムアウトは、hh:mm:ss または d.hh:mm:ss.ms 形式のいずれかです。 | string (必須) |
ClusterUpgradeDeltaHealthPolicy
名前 | 説明 | 値 |
---|---|---|
applicationDeltaHealthPolicies | クラスターのアップグレード時にアプリケーションまたはその子エンティティの正常性を評価するために使用されるアプリケーション デルタ正常性ポリシー マップを定義します。 | ApplicationDeltaHealthPolicyMap |
maxPercentDeltaUnhealthyApplications | クラスターのアップグレード中に許容されるアプリケーションの正常性低下の最大許容割合。 差分は、アップグレードの開始時のアプリケーションの状態と、正常性評価時のアプリケーションの状態との間で測定されます。 チェックは、すべてのアップグレード ドメインのアップグレード完了後に実行され、クラスターのグローバル状態が許容範囲内であることを確認します。 システム サービスはこれに含まれません。 |
int (必須) 制約: 最小値 = 0 最大値 = 100 |
maxPercentDeltaUnhealthyNodes | クラスターのアップグレード時に許容できるノードの正常性低下の最大許容パーセンテージ。 差分は、アップグレードの開始時のノードの状態と、正常性評価の時のノードの状態の間で測定されます。 チェックは、すべてのアップグレード ドメインのアップグレード完了後に実行され、クラスターのグローバル状態が許容範囲内であることを確認します。 |
int (必須) 制約: 最小値 = 0 最大値 = 100 |
maxPercentUpgradeDomainDeltaUnhealthyNodes | クラスターのアップグレード時に許容できるアップグレード ドメイン ノードの正常性低下の最大許容パーセンテージ。 差分は、アップグレードの開始時のアップグレード ドメイン ノードの状態と、正常性評価の時のアップグレード ドメイン ノードの状態の間で測定されます。 チェックは、すべてのアップグレード ドメインのアップグレード完了後にすべての完了したアップグレード ドメインに対して実行され、アップグレード ドメインの状態が許容範囲内であることを確認します。 |
int (必須) 制約: 最小値 = 0 最大値 = 100 |
ApplicationDeltaHealthPolicyMap
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | ApplicationDeltaHealthPolicy |
ApplicationDeltaHealthPolicy
名前 | 説明 | 値 |
---|---|---|
defaultServiceTypeDeltaHealthPolicy | クラスターのアップグレード時にサービスの種類の正常性を評価するために既定で使用されるデルタ正常性ポリシー。 | ServiceTypeDeltaHealthPolicy |
serviceTypeDeltaHealthPolicies | サービスの種類の名前ごとのサービスの種類のデルタ正常性ポリシーを含むマップ。 このマップは、既定では空です。 | ServiceTypeDeltaHealthPolicyMap |
ServiceTypeDeltaHealthPolicy
名前 | 説明 | 値 |
---|---|---|
maxPercentDeltaUnhealthyServices | クラスターのアップグレード中に許容されるサービスの正常性低下の最大許容割合。 差分は、アップグレードの開始時のサービスの状態と正常性評価時のサービスの状態との間で測定されます。 チェックは、すべてのアップグレード ドメインのアップグレード完了後に実行され、クラスターのグローバル状態が許容範囲内であることを確認します。 |
INT 制約: 最小値 = 0 最大値 = 100 |
ServiceTypeDeltaHealthPolicyMap
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | ServiceTypeDeltaHealthPolicy |
ClusterHealthPolicy
名前 | 説明 | 値 |
---|---|---|
applicationHealthPolicies | アプリケーションまたはその子エンティティの正常性を評価するために使用されるアプリケーション正常性ポリシー マップを定義します。 | ApplicationHealthPolicyMap |
maxPercentUnhealthyApplications | エラーを報告する前の異常なアプリケーションの最大許容パーセンテージ。 たとえば、アプリケーションの 10% の異常を許容するには、この値を 10 にします。 パーセンテージは、異常な可能性のあるアプリケーションの最大許容パーセンテージを表します。この値を超えるとクラスターはエラーの状態と見なされます。 許容パーセンテージ内であっても、1 つ以上の異常なアプリケーションがある場合は、正常性は Warning として評価されます。 これは、異常なアプリケーションの数をクラスター内のアプリケーション インスタンスの総数で割ることによって計算されます。ApplicationTypeHealthPolicyMap に含まれているアプリケーションの種類のアプリケーションは除外されます。 切り上げ計算が実行され、少数のアプリケーションに対する 1 つのエラーは許容されます。 既定のパーセンテージは 0 です。 |
INT 制約: 最小値 = 0 最大値 = 100 |
maxPercentUnhealthyNodes | エラーを報告する前の異常なノードの最大許容パーセンテージ。 たとえば、ノードの 10% の異常を許容するには、この値を 10 にします。 パーセンテージは、異常な可能性のあるノードの最大許容パーセンテージを表します。この値を超えるとクラスターはエラーの状態と見なされます。 許容パーセンテージ内であっても、1 つ以上の異常なノードがある場合は、正常性は Warning として評価されます。 パーセンテージは、異常なノードの数をクラスター内のノードの総数で割ることによって計算されます。 切り上げ計算が実行され、少数のノードに対する 1 つのエラーは許容されます。 既定のパーセンテージは 0 です。 大規模なクラスターでは、ダウンしているか修復を必要とするノードがいくつか必ず存在するため、それが許容されるようにこのパーセンテージを構成する必要があります。 |
INT 制約: 最小値 = 0 最大値 = 100 |
ApplicationHealthPolicyMap
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | ApplicationHealthPolicy |
ApplicationHealthPolicy
名前 | 説明 | 値 |
---|---|---|
defaultServiceTypeHealthPolicy | サービスの種類の正常性を評価するために既定で使用される正常性ポリシー。 | ServiceTypeHealthPolicy |
serviceTypeHealthPolicies | サービスの種類ごとの正常性ポリシーを持つマップ。 このマップは、既定では空です。 | ServiceTypeHealthPolicyMap |
ServiceTypeHealthPolicy
名前 | 説明 | 値 |
---|---|---|
maxPercentUnhealthyServices | アプリケーションがエラーと見なされる前に、異常が許容されるサービスの最大割合。 | INT 制約: 最小値 = 0 最大値 = 100 |
ServiceTypeHealthPolicyMap
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | ServiceTypeHealthPolicy |
クイック スタート テンプレート
次のクイックスタート テンプレートでは、このリソースの種類をデプロイします。
Template | 説明 |
---|---|
5 ノードの Ubuntu Service Fabric クラスターをデプロイする |
このテンプレートを使用すると、Ubuntu を実行するセキュリティで保護された 5 ノードの Service Fabric クラスターを、Standard_D2_V2 サイズの VMSS にデプロイできます。 |
5 ノードセキュリティで保護されたクラスターをデプロイする |
このテンプレートを使用すると、Windows Server 2019 Datacenter を実行するセキュリティで保護された 5 ノードの Service Fabric クラスターを、Standard_D2_v2 サイズの VMSS にデプロイできます。 |
NSG が有効になっている 3 Nodetype Secure Cluster をデプロイする |
このテンプレートを使用すると、Windows Server 2016 データ センターを実行するセキュリティで保護された 3 nodetype Service fabric クラスターを、Standard_D2 サイズの VM にデプロイできます。 このテンプレートを使用すると、ネットワーク セキュリティ グループを使用して、受信および送信のネットワーク トラフィックを制御できます。 |
Terraform (AzAPI プロバイダー) リソース定義
クラスター リソースの種類は、次をターゲットとする操作でデプロイできます。
- リソース グループ
各 API バージョンの変更されたプロパティの一覧については、「 変更ログ」を参照してください。
リソース形式
Microsoft.ServiceFabric/clusters リソースを作成するには、次の Terraform をテンプレートに追加します。
resource "azapi_resource" "symbolicname" {
type = "Microsoft.ServiceFabric/clusters@2020-03-01"
name = "string"
location = "string"
parent_id = "string"
tags = {
tagName1 = "tagValue1"
tagName2 = "tagValue2"
}
body = jsonencode({
properties = {
addOnFeatures = [
"string"
]
applicationTypeVersionsCleanupPolicy = {
maxUnusedVersionsToKeep = int
}
azureActiveDirectory = {
clientApplication = "string"
clusterApplication = "string"
tenantId = "string"
}
certificate = {
thumbprint = "string"
thumbprintSecondary = "string"
x509StoreName = "string"
}
certificateCommonNames = {
commonNames = [
{
certificateCommonName = "string"
certificateIssuerThumbprint = "string"
}
]
x509StoreName = "string"
}
clientCertificateCommonNames = [
{
certificateCommonName = "string"
certificateIssuerThumbprint = "string"
isAdmin = bool
}
]
clientCertificateThumbprints = [
{
certificateThumbprint = "string"
isAdmin = bool
}
]
clusterCodeVersion = "string"
diagnosticsStorageAccountConfig = {
blobEndpoint = "string"
protectedAccountKeyName = "string"
protectedAccountKeyName2 = "string"
queueEndpoint = "string"
storageAccountName = "string"
tableEndpoint = "string"
}
eventStoreServiceEnabled = bool
fabricSettings = [
{
name = "string"
parameters = [
{
name = "string"
value = "string"
}
]
}
]
managementEndpoint = "string"
nodeTypes = [
{
applicationPorts = {
endPort = int
startPort = int
}
capacities = {
{customized property} = "string"
}
clientConnectionEndpointPort = int
durabilityLevel = "string"
ephemeralPorts = {
endPort = int
startPort = int
}
httpGatewayEndpointPort = int
isPrimary = bool
name = "string"
placementProperties = {
{customized property} = "string"
}
reverseProxyEndpointPort = int
vmInstanceCount = int
}
]
reliabilityLevel = "string"
reverseProxyCertificate = {
thumbprint = "string"
thumbprintSecondary = "string"
x509StoreName = "string"
}
reverseProxyCertificateCommonNames = {
commonNames = [
{
certificateCommonName = "string"
certificateIssuerThumbprint = "string"
}
]
x509StoreName = "string"
}
upgradeDescription = {
deltaHealthPolicy = {
applicationDeltaHealthPolicies = {
{customized property} = {
defaultServiceTypeDeltaHealthPolicy = {
maxPercentDeltaUnhealthyServices = int
}
serviceTypeDeltaHealthPolicies = {
{customized property} = {
maxPercentDeltaUnhealthyServices = int
}
}
}
}
maxPercentDeltaUnhealthyApplications = int
maxPercentDeltaUnhealthyNodes = int
maxPercentUpgradeDomainDeltaUnhealthyNodes = int
}
forceRestart = bool
healthCheckRetryTimeout = "string"
healthCheckStableDuration = "string"
healthCheckWaitDuration = "string"
healthPolicy = {
applicationHealthPolicies = {
{customized property} = {
defaultServiceTypeHealthPolicy = {
maxPercentUnhealthyServices = int
}
serviceTypeHealthPolicies = {
{customized property} = {
maxPercentUnhealthyServices = int
}
}
}
}
maxPercentUnhealthyApplications = int
maxPercentUnhealthyNodes = int
}
upgradeDomainTimeout = "string"
upgradeReplicaSetCheckTimeout = "string"
upgradeTimeout = "string"
}
upgradeMode = "string"
vmImage = "string"
}
})
}
プロパティ値
clusters
名前 | 説明 | 値 |
---|---|---|
type | リソースの種類 | "Microsoft.ServiceFabric/clusters@2020-03-01" |
name | リソース名 | string (必須) 文字制限: 4 から 23 有効な文字: 小文字、数字、およびハイフン。 小文字で開始します。 末尾には小文字または数字を使用します。 |
location | Azure リソースの場所。 | string (必須) |
parent_id | リソース グループにデプロイするには、そのリソース グループの ID を使用します。 | string (必須) |
tags | Azure リソース タグ。 | タグの名前と値のディクショナリ。 |
properties | クラスター リソースのプロパティ | ClusterProperties |
ClusterProperties
名前 | 説明 | 値 |
---|---|---|
addOnFeatures | クラスターで有効にするアドオン機能の一覧。 | 次のいずれかを含む文字列配列: "BackupRestoreService" "DnsService" "RepairManager" "ResourceMonitorService" |
applicationTypeVersionsCleanupPolicy | 未使用のバージョンをクリーンするために使用されるポリシー。 | ApplicationTypeVersionsCleanupPolicy |
azureActiveDirectory | クラスターの AAD 認証設定。 | AzureActiveDirectory |
証明書 (certificate) | クラスターのセキュリティ保護に使用する証明書。 指定された証明書は、クラスター内のノード間のセキュリティ、クラスター管理エンドポイント用の SSL 証明書、および既定の管理クライアントに使用されます。 | CertificateDescription |
certificateCommonNames | クラスターのセキュリティ保護に使用される共通名によって参照されるサーバー証明書の一覧について説明します。 | ServerCertificateCommonNames |
clientCertificateCommonNames | クラスターの管理が許可されている共通名によって参照されるクライアント証明書の一覧。 | ClientCertificateCommonName[] |
clientCertificateThumbprints | クラスターの管理が許可されている拇印によって参照されるクライアント証明書の一覧。 | ClientCertificateThumbprint[] |
clusterCodeVersion | クラスターの Service Fabric ランタイム バージョン。 このプロパティは、 upgradeMode が 'Manual' に設定されている場合にユーザーを設定することによってのみ実行できます。 新しいクラスターで使用可能な Service Fabric バージョンの一覧を取得するには、ClusterVersion API を使用します。 既存のクラスターで使用可能なバージョンの一覧を取得するには、 availableClusterVersions を使用します。 | string |
diagnosticsStorageAccountConfig | Service Fabric 診断ログを格納するためのストレージ アカウント情報。 | DiagnosticsStorageAccountConfig |
eventStoreServiceEnabled | イベント ストア サービスが有効かどうかを示します。 | [bool] |
fabricSettings | クラスターを構成するためのカスタム ファブリック設定の一覧。 | SettingsSectionDescription[] |
managementEndpoint | クラスターの http 管理エンドポイント。 | string (必須) |
nodeTypes | クラスター内のノードの種類の一覧。 | NodeTypeDescription[] (必須) |
reliabilityLevel | 信頼性レベルは、システム サービスのレプリカ セット サイズを設定します。
ReliabilityLevel について説明します。 - None - ターゲット レプリカ セット数が 1 のシステム サービスを実行します。 これは、テスト クラスターにのみ使用する必要があります。 - Bronze - ターゲット レプリカ セット数が 3 のシステム サービスを実行します。 これは、テスト クラスターにのみ使用する必要があります。 - Silver - ターゲット レプリカ セット数が 5 のシステム サービスを実行します。 - Gold - ターゲット レプリカ セット数が 7 のシステム サービスを実行します。 - Platinum - ターゲット レプリカ セット数が 9 のシステム サービスを実行します。 |
"Bronze" "Gold" "None" "Platinum" "シルバー" |
reverseProxyCertificate | リバース プロキシで使用されるサーバー証明書。 | CertificateDescription |
reverseProxyCertificateCommonNames | クラスターのセキュリティ保護に使用される共通名によって参照されるサーバー証明書の一覧について説明します。 | ServerCertificateCommonNames |
upgradeDescription | クラスターのアップグレード時に使用するポリシー。 | ClusterUpgradePolicy |
upgradeMode | 新しい Service Fabric ランタイム バージョンが使用可能な場合のクラスターのアップグレード モード。 - 自動 - クラスターは、使用可能になるとすぐに、最新の Service Fabric ランタイム バージョンに自動的にアップグレードされます。 - 手動 - クラスターは、最新の Service Fabric ランタイム バージョンに自動的にアップグレードされません。 クラスターは、クラスター リソースで clusterCodeVersion プロパティを設定することによってアップグレードされます。 |
"自動" "Manual" |
vmImage | VM イメージ VMSS は で構成されています。 Windows や Linux などの汎用名を使用できます。 | string |
ApplicationTypeVersionsCleanupPolicy
名前 | 説明 | 値 |
---|---|---|
maxUnusedVersionsToKeep | 保持するアプリケーションの種類ごとの未使用バージョンの数。 | int (必須) 制約: 最小値 = 0 |
AzureActiveDirectory
名前 | 説明 | 値 |
---|---|---|
clientApplication | Azure Active Directory クライアント アプリケーション ID。 | string |
clusterApplication | Azure Active Directory クラスター アプリケーション ID。 | string |
tenantId | Azure Active Directory テナント ID。 | string |
CertificateDescription
名前 | 説明 | 値 |
---|---|---|
thumbprint | プライマリ証明書の拇印。 | string (必須) |
thumbprintSecondary | セカンダリ証明書の拇印。 | string |
x509StoreName | ローカル証明書ストアの場所。 | "AddressBook" "AuthRoot" "CertificateAuthority" "許可されていません" "My" "Root" "TrustedPeople" "TrustedPublisher" |
ServerCertificateCommonNames
名前 | 説明 | 値 |
---|---|---|
commonNames | クラスターのセキュリティ保護に使用される共通名によって参照されるサーバー証明書の一覧。 | ServerCertificateCommonName[] |
x509StoreName | ローカル証明書ストアの場所。 | "AddressBook" "AuthRoot" "CertificateAuthority" "許可されていません" "My" "Root" "TrustedPeople" "TrustedPublisher" |
ServerCertificateCommonName
名前 | 説明 | 値 |
---|---|---|
certificateCommonName | サーバー証明書の共通名。 | string (必須) |
certificateIssuerThumbprint | サーバー証明書の発行者の拇印。 | string (必須) |
ClientCertificateCommonName
名前 | 説明 | 値 |
---|---|---|
certificateCommonName | クライアント証明書の共通名。 | string (必須) |
certificateIssuerThumbprint | クライアント証明書の発行者の拇印。 | string (必須) |
isAdmin | クライアント証明書がクラスターへの管理者アクセス権を持っているかどうかを示します。 管理者以外のクライアントは、クラスターに対して読み取り専用操作のみを実行できます。 | bool (必須) |
ClientCertificateThumbprint
名前 | 説明 | 値 |
---|---|---|
certificateThumbprint | クライアント証明書の拇印。 | string (必須) |
isAdmin | クライアント証明書がクラスターへの管理者アクセス権を持っているかどうかを示します。 管理者以外のクライアントは、クラスターに対して読み取り専用操作のみを実行できます。 | bool (必須) |
DiagnosticsStorageAccountConfig
名前 | 説明 | 値 |
---|---|---|
blobEndpoint | Azure ストレージ アカウントの BLOB エンドポイント。 | string (必須) |
protectedAccountKeyName | 保護された診断ストレージ キー名。 | string (必須) |
protectedAccountKeyName2 | セカンダリで保護された診断ストレージ キー名。 ストレージ アカウント キーの 1 つがローテーションされた場合、クラスターはもう一方を使用するようにフォールバックします。 | string |
queueEndpoint | Azure ストレージ アカウントのキュー エンドポイント。 | string (必須) |
storageAccountName | Azure ストレージ アカウント名。 | string (必須) |
tableEndpoint | Azure ストレージ アカウントのテーブル エンドポイント。 | string (必須) |
SettingsSectionDescription
名前 | 説明 | 値 |
---|---|---|
name | ファブリック設定のセクション名。 | string (必須) |
parameters | セクション内のパラメーターのコレクション。 | SettingsParameterDescription[] (必須) |
SettingsParameterDescription
名前 | 説明 | 値 |
---|---|---|
name | ファブリック設定のパラメーター名。 | string (必須) |
value | ファブリック設定のパラメーター値。 | string (必須) |
NodeTypeDescription
名前 | 説明 | 値 |
---|---|---|
applicationPorts | クラスターが Service Fabric アプリケーションにポートを割り当てたポートの範囲。 | EndpointRangeDescription |
capacities | ノードの種類のノードに適用される容量タグでは、クラスター リソース マネージャーはこれらのタグを使用して、ノードのリソースの量を把握します。 | NodeTypeDescriptionCapacities |
clientConnectionEndpointPort | TCP クラスター管理エンドポイント ポート。 | int (必須) |
durabilityLevel | ノード タイプの持続性レベル。
DurabilityLevel について説明します。 - ブロンズ - 特権なし。 既定値です。 - Silver - インフラストラクチャ ジョブは、UD あたり 10 分間一時停止できます。 - Gold - インフラストラクチャ ジョブは、UD あたり 2 時間の間一時停止できます。 Gold の持続性は、D15_V2 や G5 などのフル ノードの VM SKU でのみ有効にできます。 |
"ブロンズ" "Gold" "シルバー" |
ephemeralPorts | このノード タイプのノードを構成する必要があるエフェメラル ポートの範囲。 | EndpointRangeDescription |
httpGatewayEndpointPort | HTTP クラスター管理エンドポイント ポート。 | int (必須) |
isPrimary | システム サービスを実行するノードの種類。 プライマリとしてマークするノード タイプは 1 つだけです。 既存のクラスターでは、プライマリ ノードの種類を削除または変更できません。 | bool (必須) |
name | ノードの種類の名前。 | string (必須) |
placementProperties | ノード の種類のノードに適用される配置タグ。これは、特定のサービス (ワークロード) を実行する場所を示すために使用できます。 | NodeTypeDescriptionPlacementProperties |
reverseProxyEndpointPort | リバース プロキシによって使用されるエンドポイント。 | INT |
vmInstanceCount | ノード タイプ内のノードの数。 この数は、対応する VirtualMachineScaleSet リソースの capacity プロパティと一致する必要があります。 | int (必須) 制約: 最小値 = 1 最大値 = 2147483647 |
EndpointRangeDescription
名前 | 説明 | 値 |
---|---|---|
endPort | ポートの範囲の終了ポート | int (必須) |
startPort | ポート範囲の開始ポート | int (必須) |
NodeTypeDescriptionCapacities
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | string |
NodeTypeDescriptionPlacementProperties
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | string |
ClusterUpgradePolicy
名前 | 説明 | 値 |
---|---|---|
deltaHealthPolicy | クラスターのアップグレード時に使用されるクラスターデルタ正常性ポリシー。 | ClusterUpgradeDeltaHealthPolicy |
forceRestart | true の場合、コード バージョンが変更されていない場合 (アップグレードによって構成またはデータのみが変更される) 場合でも、アップグレード中にプロセスが強制的に再起動されます。 | [bool] |
healthCheckRetryTimeout | アップグレードがロールバックされるまでにアプリケーションまたはクラスターが異常な場合に正常性評価を再試行する時間。 タイムアウトは、hh:mm:ss または d.hh:mm:ss.ms 形式のいずれかになります。 | string (必須) |
healthCheckStableDuration | アプリケーションまたはクラスターが正常な状態である必要がある時間。この時間を超えると、アップグレードが次のアップグレード ドメインに進みます。 期間は、hh:mm:ss または d.hh:mm:ss.ms 形式で指定できます。 | string (必須) |
healthCheckWaitDuration | アップグレード ドメインを完了してから正常性チェックを実行するまでの待機時間。 期間は、hh:mm:ss または d.hh:mm:ss.ms 形式で指定できます。 | string (必須) |
healthPolicy | クラスターのアップグレード時に使用されるクラスター正常性ポリシー。 | ClusterHealthPolicy (必須) |
upgradeDomainTimeout | アップグレードがロールバックされるまでに、各アップグレード ドメインが完了する必要がある時間。 タイムアウトは、hh:mm:ss または d.hh:mm:ss.ms 形式のいずれかになります。 | string (必須) |
upgradeReplicaSetCheckTimeout | アップグレード ドメインの処理をブロックし、予期しない問題が発生したときに可用性の損失を防ぐための最長時間。 このタイムアウトが期限切れになると、可用性の損失問題に関係なく、アップグレード ドメインの処理が続行されます。 タイムアウトは、各アップグレード ドメインの開始時にリセットされます。 タイムアウトは、hh:mm:ss または d.hh:mm:ss.ms 形式のいずれかになります。 | string (必須) |
upgradeTimeout | アップグレードがロールバックされるまでに、アップグレード全体が完了する必要がある時間。 タイムアウトは、hh:mm:ss または d.hh:mm:ss.ms 形式のいずれかになります。 | string (必須) |
ClusterUpgradeDeltaHealthPolicy
名前 | 説明 | 値 |
---|---|---|
applicationDeltaHealthPolicies | クラスターのアップグレード時にアプリケーションまたはその子エンティティの正常性を評価するために使用されるアプリケーション 差分正常性ポリシー マップを定義します。 | ApplicationDeltaHealthPolicyMap |
maxPercentDeltaUnhealthyApplications | クラスターのアップグレード中に許容されるアプリケーションの正常性低下の最大許容割合。 差分は、アップグレードの開始時のアプリケーションの状態と、正常性評価時のアプリケーションの状態の間で測定されます。 チェックは、すべてのアップグレード ドメインのアップグレード完了後に実行され、クラスターのグローバル状態が許容範囲内であることを確認します。 システム サービスはこれに含まれません。 |
int (必須) 制約: 最小値 = 0 最大値 = 100 |
maxPercentDeltaUnhealthyNodes | クラスターのアップグレード時に許容できるノードの正常性低下の最大許容パーセンテージ。 差分は、アップグレードの開始時のノードの状態と、正常性評価の時のノードの状態の間で測定されます。 チェックは、すべてのアップグレード ドメインのアップグレード完了後に実行され、クラスターのグローバル状態が許容範囲内であることを確認します。 |
int (必須) 制約: 最小値 = 0 最大値 = 100 |
maxPercentUpgradeDomainDeltaUnhealthyNodes | クラスターのアップグレード時に許容できるアップグレード ドメイン ノードの正常性低下の最大許容パーセンテージ。 差分は、アップグレードの開始時のアップグレード ドメイン ノードの状態と、正常性評価の時のアップグレード ドメイン ノードの状態の間で測定されます。 チェックは、すべてのアップグレード ドメインのアップグレード完了後にすべての完了したアップグレード ドメインに対して実行され、アップグレード ドメインの状態が許容範囲内であることを確認します。 |
int (必須) 制約: 最小値 = 0 最大値 = 100 |
ApplicationDeltaHealthPolicyMap
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | ApplicationDeltaHealthPolicy |
ApplicationDeltaHealthPolicy
名前 | 説明 | 値 |
---|---|---|
defaultServiceTypeDeltaHealthPolicy | クラスターのアップグレード時にサービスの種類の正常性を評価するために既定で使用されるデルタ正常性ポリシー。 | ServiceTypeDeltaHealthPolicy |
serviceTypeDeltaHealthPolicies | サービスの種類ごとにサービスの種類のデルタ正常性ポリシーを持つマップ。 このマップは、既定では空です。 | ServiceTypeDeltaHealthPolicyMap |
ServiceTypeDeltaHealthPolicy
名前 | 説明 | 値 |
---|---|---|
maxPercentDeltaUnhealthyServices | クラスターのアップグレード中に許容されるサービスの正常性低下の最大許容割合。 差分は、アップグレードの開始時のサービスの状態と正常性評価時のサービスの状態の間で測定されます。 チェックは、すべてのアップグレード ドメインのアップグレード完了後に実行され、クラスターのグローバル状態が許容範囲内であることを確認します。 |
INT 制約: 最小値 = 0 最大値 = 100 |
ServiceTypeDeltaHealthPolicyMap
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | ServiceTypeDeltaHealthPolicy |
ClusterHealthPolicy
名前 | 説明 | 値 |
---|---|---|
applicationHealthPolicies | アプリケーションまたはその子エンティティの正常性を評価するために使用されるアプリケーション正常性ポリシー マップを定義します。 | ApplicationHealthPolicyMap |
maxPercentUnhealthyApplications | エラーを報告する前の異常なアプリケーションの最大許容パーセンテージ。 たとえば、アプリケーションの 10% の異常を許容するには、この値を 10 にします。 パーセンテージは、異常な可能性のあるアプリケーションの最大許容パーセンテージを表します。この値を超えるとクラスターはエラーの状態と見なされます。 許容パーセンテージ内であっても、1 つ以上の異常なアプリケーションがある場合は、正常性は Warning として評価されます。 これは、異常なアプリケーションの数をクラスター内のアプリケーション インスタンスの総数で割ることによって計算されます。ApplicationTypeHealthPolicyMap に含まれているアプリケーションの種類のアプリケーションは除外されます。 切り上げ計算が実行され、少数のアプリケーションに対する 1 つのエラーは許容されます。 既定のパーセンテージは 0 です。 |
INT 制約: 最小値 = 0 最大値 = 100 |
maxPercentUnhealthyNodes | エラーを報告する前の異常なノードの最大許容パーセンテージ。 たとえば、ノードの 10% の異常を許容するには、この値を 10 にします。 パーセンテージは、異常な可能性のあるノードの最大許容パーセンテージを表します。この値を超えるとクラスターはエラーの状態と見なされます。 許容パーセンテージ内であっても、1 つ以上の異常なノードがある場合は、正常性は Warning として評価されます。 パーセンテージは、異常なノードの数をクラスター内のノードの総数で割ることによって計算されます。 切り上げ計算が実行され、少数のノードに対する 1 つのエラーは許容されます。 既定のパーセンテージは 0 です。 大規模なクラスターでは、ダウンしているか修復を必要とするノードがいくつか必ず存在するため、それが許容されるようにこのパーセンテージを構成する必要があります。 |
INT 制約: 最小値 = 0 最大値 = 100 |
ApplicationHealthPolicyMap
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | ApplicationHealthPolicy |
ApplicationHealthPolicy
名前 | 説明 | 値 |
---|---|---|
defaultServiceTypeHealthPolicy | サービスの種類の正常性を評価するために既定で使用される正常性ポリシー。 | ServiceTypeHealthPolicy |
serviceTypeHealthPolicies | サービスの種類の名前ごとのサービスの種類の正常性ポリシーを含むマップ。 このマップは、既定では空です。 | ServiceTypeHealthPolicyMap |
ServiceTypeHealthPolicy
名前 | 説明 | 値 |
---|---|---|
maxPercentUnhealthyServices | アプリケーションがエラーと見なされる前に、異常が許容されるサービスの最大割合。 | INT 制約: 最小値 = 0 最大値 = 100 |
ServiceTypeHealthPolicyMap
名前 | 説明 | 値 |
---|---|---|
{カスタマイズされたプロパティ} | ServiceTypeHealthPolicy |