次の方法で共有


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 クラスターをデプロイする

Azure にデプロイする
このテンプレートを使用すると、Ubuntu を実行するセキュリティで保護された 5 ノードの Service Fabric クラスターを、Standard_D2_V2 サイズ VMSS にデプロイできます。
5 ノードセキュリティで保護されたクラスターをデプロイする

Azure にデプロイする
このテンプレートを使用すると、Windows Server 2019 Datacenter を実行するセキュリティで保護された 5 ノードの Service Fabric クラスターを、Standard_D2_v2 サイズの VMSS にデプロイできます。
NSG が有効になっている 3 Nodetype Secure Cluster をデプロイする

Azure にデプロイする
このテンプレートを使用すると、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 クラスターをデプロイする

Azure にデプロイする
このテンプレートを使用すると、Ubuntu を実行するセキュリティで保護された 5 ノードの Service Fabric クラスターを、Standard_D2_V2 サイズの VMSS にデプロイできます。
5 ノードセキュリティで保護されたクラスターをデプロイする

Azure にデプロイする
このテンプレートを使用すると、Windows Server 2019 Datacenter を実行するセキュリティで保護された 5 ノードの Service Fabric クラスターを、Standard_D2_v2 サイズの VMSS にデプロイできます。
NSG が有効になっている 3 Nodetype Secure Cluster をデプロイする

Azure にデプロイする
このテンプレートを使用すると、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