Windows Server で実行されるスタンドアロン クラスターの作成Create a standalone cluster running on Windows Server

Azure Service Fabric を使用すると、Windows Server を実行するあらゆる仮想マシンまたはコンピューター上に Service Fabric クラスターを作成できます。You can use Azure Service Fabric to create Service Fabric clusters on any virtual machines or computers running Windows Server. つまり相互に接続された一連の Windows Server コンピューターを含む環境さえあれば、オンプレミスであれ、クラウド プロバイダーであれ、Service Fabric アプリケーションをデプロイして実行できるということです。This means you can deploy and run Service Fabric applications in any environment that contains a set of interconnected Windows Server computers, be it on premises or with any cloud provider. Service Fabric には、Service Fabric クラスターを作成するためのセットアップ パッケージ (スタンドアロン Windows Server パッケージ) が用意されています。Service Fabric provides a setup package to create Service Fabric clusters called the standalone Windows Server package. Azure 上の従来の Service Fabric クラスターはマネージド サービスとして使用できるのに対して、スタンドアロンの Service Fabric クラスターはセルフサービスです。Traditional Service Fabric clusters on Azure are available as a managed service, while standalone Service Fabric clusters are self-service.

この記事では、Service Fabric スタンドアロン クラスターの作成手順について説明します。This article walks you through the steps for creating a Service Fabric standalone cluster.

注意

このスタンドアロン Windows Server パッケージは無料で商用利用が可能であり、運用環境デプロイに使用できます。This standalone Windows Server package is commercially available at no cost and may be used for production deployments. このパッケージには、Service Fabric の "プレビュー" 段階の新機能が含まれている場合があります。This package may contain new Service Fabric features that are in "Preview". プレビュー機能の一覧については、「このパッケージに含まれるプレビュー機能」をScroll down to "Preview features included in this package." ご覧ください。section for the list of the preview features. 使用許諾契約書のコピーのダウンロード ができるようになりました。You can download a copy of the EULA now.

Windows Server 用 Service Fabric パッケージのサポートを受けるGet support for the Service Fabric for Windows Server package

Windows Server 用 Service Fabric パッケージをダウンロードするDownload the Service Fabric for Windows Server package

クラスターの作成には、次の場所にある Windows Server 用 Service Fabric パッケージ (Windows Server 2012 R2 以降) を使用します。To create the cluster, use the Service Fabric for Windows Server package (Windows Server 2012 R2 and newer) found here:
ダウンロード リンク - Service Fabric スタンドアロン パッケージ - Windows ServerDownload Link - Service Fabric Standalone Package - Windows Server

パッケージ内容の詳細についてはこちらを参照してください。Find details on contents of the package here.

Service Fabric ランタイム パッケージは、クラスターの作成時に自動でダウンロードされます。The Service Fabric runtime package is automatically downloaded at time of cluster creation. インターネットに接続されていないマシンからデプロイを行う場合は、次の場所から帯域外用のランタイム パッケージをダウンロードしてください。If deploying from a machine not connected to the internet, please download the runtime package out of band from here:
ダウンロード リンク - Service Fabric ランタイム - Windows ServerDownload Link - Service Fabric Runtime - Windows Server

スタンドアロン クラスター構成は次の場所にあります。Find Standalone Cluster Configuration samples at:
スタンドアロン クラスター構成のサンプルStandalone Cluster Configuration Samples

クラスターを作成するCreate the cluster

セットアップ パッケージと共に、いくつかのサンプル クラスター構成ファイルがインストールされます。Several sample cluster configuration files are installed with the setup package. ClusterConfig.Unsecure.DevCluster.json は最も単純なクラスター構成です。1 台のコンピューターで動作する 3 ノード クラスターとなっており、セキュリティ対策は施されていません。ClusterConfig.Unsecure.DevCluster.json is the simplest cluster configuration: an unsecure, three-node cluster running on a single computer. その他の構成ファイルには、X.509 証明書または Windows セキュリティによって安全性が確保された 1 台または複数台のコンピューターから成るクラスターが記述されています。Other config files describe single or multi-machine clusters secured with X.509 certificates or Windows security. このチュートリアルのために既定の構成設定を変更する必要はありませんが、構成ファイルに目を通して、設定の概要を把握しておいてください。You don't need to modify any of the default config settings for this tutorial, but look through the config file and get familiar with the settings. nodes セクションでは、クラスター内の 3 つのノードの name、IP address、node type、fault domain、および upgrade domain が記述されています。The nodes section describes the three nodes in the cluster: name, IP address, node type, fault domain, and upgrade domain. properties セクションでは、クラスターのセキュリティ、信頼性レベル、診断コレクション、およびノードの種類が定義されています。The properties section defines the security, reliability level, diagnostics collection, and types of nodes for the cluster.

この記事で作成するクラスターは安全ではありません。The cluster created in this article is unsecure. だれでも匿名で接続し、管理操作を実行することができるため、運用クラスターは常に X.509 証明書または Windows セキュリティを使用して保護する必要があります。Anyone can connect anonymously and perform management operations, so production clusters should always be secured using X.509 certificates or Windows security. セキュリティを構成できるのはクラスターを作成するときだけであり、クラスターの作成後はセキュリティを有効にすることはできません。Security is only configured at cluster creation time and it is not possible to enable security after the cluster is created. 構成ファイルを更新して、証明書によるセキュリティまたは Windows のセキュリティを有効にします。Update the config file enable certificate security or Windows security. Service Fabric クラスターのセキュリティについて詳しくは、クラスターのセキュリティ保護についてのページを参照してください。Read Secure a cluster to learn more about Service Fabric cluster security.

手順 1:クラスターを作成するStep 1: Create the cluster

シナリオ A: セキュリティで保護されていないローカルの開発クラスターを作成するScenario A: Create an unsecured local development cluster

サンプルに含まれる "ClusterConfig.Unsecure.DevCluster.json" ファイルを使用すると、Service Fabric を 1 台のマシンから成る開発クラスターにデプロイできます。Service Fabric can be deployed to a one-machine development cluster by using the ClusterConfig.Unsecure.DevCluster.json file included in Samples.

スタンドアロン パッケージをマシンに解凍してサンプルの構成ファイルをローカル マシンにコピーしてから、管理者権限の PowerShell セッションでスタンドアロン パッケージのフォルダーにある CreateServiceFabricCluster.ps1 スクリプトを実行します。Unpack the standalone package to your machine, copy the sample config file to the local machine, then run the CreateServiceFabricCluster.ps1 script through an administrator PowerShell session, from the standalone package folder.

.\CreateServiceFabricCluster.ps1 -ClusterConfigFilePath .\ClusterConfig.Unsecure.DevCluster.json -AcceptEULA

トラブルシューティングの詳細については、「Service Fabric スタンドアロン クラスターのデプロイの準備と計画」の「環境のセットアップ」を参照してください。See the Environment Setup section at Plan and prepare your cluster deployment for troubleshooting details.

開発シナリオの実行が完了したら、Service Fabric クラスターは、「クラスターの削除」の手順を参照してマシンから削除できます。If you're finished running development scenarios, you can remove the Service Fabric cluster from the machine by referring to steps in section "Remove a cluster".

シナリオ B: 複数のコンピューターから成るクラスターを作成するScenario B: Create a multi-machine cluster

クラスターのデプロイの計画と準備に関するページで説明されている計画および準備の手順を完了すると、独自のクラスター構成ファイルを使用して運用クラスターを作成できるようになります。After you have gone through the planning and preparation steps detailed at Plan and prepare your cluster deployment, you are ready to create your production cluster using your cluster configuration file.

クラスターのデプロイと構成を行うクラスター管理者には、コンピューターに対する管理特権が必要です。The cluster administrator deploying and configuring the cluster must have administrator privileges on the computer. ドメイン コントローラーに Service Fabric をインストールすることはできません。You cannot install Service Fabric on a domain controller.

  1. スタンドアロン パッケージの TestConfiguration.ps1 スクリプトをベスト プラクティス アナライザーとして使って、特定の環境にクラスターをデプロイできるかどうかを検証します。The TestConfiguration.ps1 script in the standalone package is used as a best practices analyzer to validate whether a cluster can be deployed on a given environment. 前提条件と環境の要件については、デプロイの準備のページを参照してください。Deployment preparation lists the pre-requisites and environment requirements. スクリプトを実行して、開発クラスターを作成できるかどうかを検証します。Run the script to verify if you can create the development cluster:

    .\TestConfiguration.ps1 -ClusterConfigFilePath .\ClusterConfig.json
    

    次のような出力が表示されます。You should see output similar to the following. 1 番下の "Passed" フィールドで "True" が返された場合、サニティ チェックは成功であり、クラスターは入力した構成を基にデプロイ可能と考えられます。If the bottom field "Passed" is returned as "True", sanity checks have passed and the cluster looks to be deployable based on the input configuration.

    Trace folder already exists. Traces will be written to existing trace folder: C:\temp\Microsoft.Azure.ServiceFabric.WindowsServer\DeploymentTraces
    Running Best Practices Analyzer...
    Best Practices Analyzer completed successfully.
    
    LocalAdminPrivilege        : True
    IsJsonValid                : True
    IsCabValid                 : True
    RequiredPortsOpen          : True
    RemoteRegistryAvailable    : True
    FirewallAvailable          : True
    RpcCheckPassed             : True
    NoConflictingInstallations : True
    FabricInstallable          : True
    Passed                     : True
    
  2. クラスターを作成します。CreateServiceFabricCluster.ps1 スクリプトを実行して、構成内の各コンピューターに Service Fabric クラスターをデプロイします。Create the cluster: Run the CreateServiceFabricCluster.ps1 script to deploy the Service Fabric cluster across each machine in the configuration.

    .\CreateServiceFabricCluster.ps1 -ClusterConfigFilePath .\ClusterConfig.json -AcceptEULA
    

注意

デプロイのトレースは、CreateServiceFabricCluster.ps1 PowerShell スクリプトを実行した VM/マシンに書き込まれます。Deployment traces are written to the VM/machine on which you ran the CreateServiceFabricCluster.ps1 PowerShell script. このトレースは、スクリプトを実行したディレクトリの DeploymentTraces サブフォルダーにあります。These can be found in the subfolder DeploymentTraces, based in the directory from which the script was run. Service Fabric がマシンに正常にデプロイされたかどうかを確かめるには、FabricDataRoot ディレクトリにインストールされたファイルを確認します。このディレクトリはクラスター構成ファイルの FabricSettings セクションで指定した場所にあります (既定では c:\ProgramData\SF)。To see if Service Fabric was deployed correctly to a machine, find the installed files in the FabricDataRoot directory, as detailed in the cluster configuration file FabricSettings section (by default c:\ProgramData\SF). また、タスク マネージャーで FabricHost.exe と Fabric.exe の各プロセスが実行されていることも確認します。As well, FabricHost.exe and Fabric.exe processes can be seen running in Task Manager.

シナリオ C: オフラインの (インターネットから切断された) クラスターを作成するScenario C: Create an offline (internet-disconnected) cluster

Service Fabric ランタイム パッケージは、クラスターの作成時に自動でダウンロードされます。The Service Fabric runtime package is automatically downloaded at cluster creation. インターネットに接続していないコンピューターにクラスターをデプロイする場合、Service Fabric ランタイム パッケージを別にダウンロードしておき、クラスターの作成時にそのパスを指定する必要があります。When deploying a cluster to machines not connected to the internet, you will need to download the Service Fabric runtime package separately, and provide the path to it at cluster creation. ランタイム パッケージはインターネットに接続されている他のコンピューターから別にダウンロードすることができます (ダウンロード リンク - Service Fabric ランタイム - Windows Server)。The runtime package can be downloaded separately, from another machine connected to the internet, at Download Link - Service Fabric Runtime - Windows Server. オフライン クラスターをデプロイしている場所にランタイム パッケージをコピーし、次の例のように -FabricRuntimePackagePath パラメーターを指定して CreateServiceFabricCluster.ps1 を実行してクラスターを作成します。Copy the runtime package to where you are deploying the offline cluster from, and create the cluster by running CreateServiceFabricCluster.ps1 with the -FabricRuntimePackagePath parameter included, as shown in this example:

.\CreateServiceFabricCluster.ps1 -ClusterConfigFilePath .\ClusterConfig.json -FabricRuntimePackagePath .\MicrosoftAzureServiceFabric.cab

.\ClusterConfig.json.\MicrosoftAzureServiceFabric.cab は、それぞれクラスター構成とランタイムの .cab ファイルのパスです。.\ClusterConfig.json and .\MicrosoftAzureServiceFabric.cab are the paths to the cluster configuration and the runtime .cab file respectively.

手順 2:クラスターへの接続Step 2: Connect to the cluster

クラスターに接続し、クラスターが実行されており使用可能であることを確認します。Connect to the cluster to verify the cluster is running and available. Service Fabric ランタイムをインストールすると、ServiceFabric PowerShell モジュールがインストールされます。The ServiceFabric PowerShell module is installed with the runtime. クラスター ノードのいずれか、または Service Fabric ランタイムがインストールされたリモート コンピューターから、クラスターに接続できます。You can connect to the cluster from one of the cluster nodes or from a remote computer with the Service Fabric runtime. クラスターへの接続は、Connect-ServiceFabricCluster コマンドレットで確立します。The Connect-ServiceFabricCluster cmdlet establishes a connection to the cluster.

セキュリティで保護されていないクラスターに接続するには、次の PowerShell コマンドを実行します。To connect to an unsecure cluster, run the following PowerShell command:

Connect-ServiceFabricCluster -ConnectionEndpoint <*IPAddressofaMachine*>:<Client connection end point port>

例:For example:

Connect-ServiceFabricCluster -ConnectionEndpoint 192.13.123.2345:19000

その他の方法でクラスターに接続する例については、「セキュリティ保護されたクラスターに接続する」を参照してください。See Connect to a secure cluster for other examples of connecting to a cluster. クラスターに接続した後、Get-ServiceFabricNode コマンドレットを使って、クラスターに含まれている一連のノードとノードごとの状態情報を表示します。After connecting to the cluster, use the Get-ServiceFabricNode cmdlet to display a list of nodes in the cluster and status information for each node. すべてのノードで HealthStateOK になっている必要があります。HealthState should be OK for each node.

PS C:\temp\Microsoft.Azure.ServiceFabric.WindowsServer> Get-ServiceFabricNode |Format-Table

NodeDeactivationInfo NodeName IpAddressOrFQDN NodeType  CodeVersion  ConfigVersion NodeStatus NodeUpTime NodeDownTime HealthState
-------------------- -------- --------------- --------  -----------  ------------- ---------- ---------- ------------ -----------
                     vm2      localhost       NodeType2 5.6.220.9494 0                     Up 00:03:38   00:00:00              OK
                     vm1      localhost       NodeType1 5.6.220.9494 0                     Up 00:03:38   00:00:00              OK
                     vm0      localhost       NodeType0 5.6.220.9494 0                     Up 00:02:43   00:00:00              OK

手順 3:Service Fabric Explorer を使用したクラスターの視覚化Step 3: Visualize the cluster using Service Fabric explorer

Service Fabric Explorer は、クラスターを視覚化してアプリケーションを管理するための最適なツールです。Service Fabric Explorer is a good tool for visualizing your cluster and managing applications. Service Fabric Explorer はクラスターで動作するサービスであり、ブラウザーから http://localhost:19080/Explorer でアクセスすることができます。Service Fabric Explorer is a service that runs in the cluster, which you access using a browser by navigating to http://localhost:19080/Explorer.

クラスター ダッシュボードにクラスターの概要 (アプリケーションとノードの正常性の概要など) が表示されます。The cluster dashboard provides an overview of your cluster, including a summary of application and node health. ノード ビューには、クラスターの物理的なレイアウトが表示されます。The node view shows the physical layout of the cluster. 特定のノードについて、そのノードでコードがデプロイされているアプリケーション、For a given node, you can inspect which applications have code deployed on that node.

Service Fabric Explorer

ノードの追加と削除Add and remove nodes

ビジネス ニーズの変化に応じて、スタンドアロン Service Fabric クラスターでノードを追加または削除できます。You can add or remove nodes to your standalone Service Fabric cluster as your business needs change. 詳細の手順については、「Service Fabric スタンドアロン クラスターでノードを追加または削除する」 をお読みください。See Add or Remove nodes to a Service Fabric standalone cluster for detailed steps.

クラスターの削除Remove a cluster

クラスターを削除するには、パッケージ フォルダーにある RemoveServiceFabricCluster.ps1 PowerShell スクリプトを実行し、JSON 構成ファイルのパスを渡してください。To remove a cluster, run the RemoveServiceFabricCluster.ps1 PowerShell script from the package folder and pass in the path to the JSON configuration file. 必要に応じて、削除対象のログの場所を指定することもできます。You can optionally specify a location for the log of the deletion.

このスクリプトは、クラスター構成ファイルにノードとして列挙されているすべてのマシンに管理者アクセスできれば、どのマシンでも実行できます。This script can be run on any machine that has administrator access to all the machines that are listed as nodes in the cluster configuration file. このスクリプトが実行されるマシンがクラスターに属している必要はありません。The machine that this script is run on does not have to be part of the cluster.

# Removes Service Fabric from each machine in the configuration
.\RemoveServiceFabricCluster.ps1 -ClusterConfigFilePath .\ClusterConfig.json -Force
# Removes Service Fabric from the current machine
.\CleanFabric.ps1

収集されるテレメトリ データとオプトアウトの方法Telemetry data collected and how to opt out of it

製品品質の向上を図るために、Service Fabric の使用状況に関するテレメトリが既定で収集されます。As a default, the product collects telemetry on the Service Fabric usage to improve the product. セットアップの過程で実行されるベスト プラクティス アナライザーは、https://vortex.data.microsoft.com/collect/v1 に対する接続の可否をチェックします。The Best Practice Analyzer that runs as a part of the setup checks for connectivity to https://vortex.data.microsoft.com/collect/v1. この URL に到達できなかった場合、テレメトリを無効にしない限り、セットアップは失敗します。If it is not reachable, the setup fails unless you opt out of telemetry.

  1. テレメトリ パイプラインは、以下のデータを 1 日に 1 回、https://vortex.data.microsoft.com/collect/v1 にアップロードしようと試みます。The telemetry pipeline tries to upload the following data to https://vortex.data.microsoft.com/collect/v1 once every day. アップロードはベスト エフォートで実行され、クラスターの動作には一切影響しません。It is a best-effort upload and has no impact on the cluster functionality. テレメトリの送信元になるのは、Failover Manager プライマリを実行しているノードだけです。The telemetry is only sent from the node that runs the failover manager primary. それ以外のノードからはテレメトリが送信されません。No other nodes send out telemetry.
  2. テレメトリは次のデータで構成されています。The telemetry consists of the following:
  • サービスの数Number of services
  • ServiceTypes の数Number of ServiceTypes
  • アプリケーションの数Number of Applications
  • ApplicationUpgrades の数Number of ApplicationUpgrades
  • FailoverUnits の数Number of FailoverUnits
  • InBuildFailoverUnits の数Number of InBuildFailoverUnits
  • UnhealthyFailoverUnits の数Number of UnhealthyFailoverUnits
  • レプリカの数Number of Replicas
  • InBuildReplicas の数Number of InBuildReplicas
  • StandByReplicas の数Number of StandByReplicas
  • OfflineReplicas の数Number of OfflineReplicas
  • CommonQueueLengthCommonQueueLength
  • QueryQueueLengthQueryQueueLength
  • FailoverUnitQueueLengthFailoverUnitQueueLength
  • CommitQueueLengthCommitQueueLength
  • ノードの数Number of Nodes
  • IsContextComplete: True または FalseIsContextComplete: True/False
  • ClusterId: これは、クラスターごとにランダムに生成された GUID です。ClusterId: This is a GUID randomly generated for each cluster
  • ServiceFabricVersionServiceFabricVersion
  • テレメトリのアップロード元となった仮想マシンまたはコンピューターの IP アドレスIP address of the virtual machine or machine from which the telemetry is uploaded

テレメトリを無効にするには、クラスターの構成ファイル内の propertiesenableTelemetry: false を追加します。To disable telemetry, add the following to properties in your cluster config: enableTelemetry: false.

このパッケージに含まれるプレビュー機能Preview features included in this package

なし。None.

注意

Windows Server (バージョン 5.3.204.x) 用のスタンドアロン クラスターの新しい GA バージョン以降では、クラスターを今後のリリースに手動でアップグレードすることも、自動的にアップグレードすることもできます。Starting with the new GA version of the standalone cluster for Windows Server (version 5.3.204.x), you can upgrade your cluster to future releases, manually or automatically. 詳細については、スタンドアロン Service Fabric クラスターのバージョンのアップグレードに関するドキュメントをご覧ください。Refer to Upgrade a standalone Service Fabric cluster version document for details.

次の手順Next steps