チュートリアル: Service Fabric クラスターのインストールと作成
Service Fabric で採用されている "すべての OS、すべてのクラウド" のアプローチの一環として、Service Fabric スタンドアロン クラスターには、独自の環境を選んでクラスターを作成する選択肢が用意されています。 このチュートリアル シリーズでは、AWS または Azure 上でホストされるスタンドアロンのクラスターを作成し、そこにアプリケーションをインストールします。
このチュートリアルは、シリーズの第 2 部です。 このチュートリアルでは、Service Fabric スタンドアロン クラスターの作成手順について説明します。
この記事では、次の方法について学習します。
- Service Fabric スタンドアロン パッケージをダウンロードしてインストールする
- Service Fabric クラスターを作成する
- Service Fabric クラスターに接続する
Windows Server 用 Service Fabric パッケージをダウンロードする
Service Fabric には、Service Fabric スタンドアロン クラスターを作成するためのセットアップ パッケージが用意されています。 ローカル コンピューターでセットアップ パッケージをダウンロードします。 正常にダウンロードされたら、RDP 接続を介して VM にコピーし、デスクトップに貼り付けます。
zip ファイルを選択し、コンテキスト メニューを開いて、 [すべて展開]>[展開] を選択します。 ファイルを展開すると、zip ファイルと同じ名前のフォルダーがデスクトップに生成されます。
さらに詳しい情報が必要な場合は、セットアップ パッケージの内容をご覧ください。
構成ファイルを設定する
ここでは、3 ノードの Windows クラスターを作成します。そこで、ClusterConfig.Unsecure.MultiMachine.json
ファイルに変更を加える必要があります。
次に、ファイルの 8 行目、15 行目、22 行目に出現する 3 つの ipAddress 行を、各インスタンスの IP アドレスに更新します。
ノードを更新した後の内容は、次のとおりです。
{
"nodeName": "vm0",
"ipAddress": "172.31.27.1",
"nodeTypeRef": "NodeType0",
"faultDomain": "fd:/dc1/r0",
"upgradeDomain": "UD0"
}
次に、いくつかのプロパティを更新する必要があります。 34 行目で、診断ストアの接続文字列に変更を加える必要があります。変更後は、"connectionstring": "C:\\ProgramData\\SF\\DiagnosticsStore"
のようになります。
最後に、この構成の nodeTypes
セクションに、Windows が使用することになるエフェメラル ポートをマッピングする新しいセクションを追加します。 構成ファイルは、次のようになっている必要があります。
"applicationPorts": {
"startPort": "20001",
"endPort": "20031"
},
"ephemeralPorts": {
"startPort": "20606",
"endPort": "20861"
},
"isPrimary": true
環境の検証
スタンドアロン パッケージの TestConfiguration.ps1 スクリプトをベスト プラクティス アナライザーとして使って、特定の環境にクラスターをデプロイできるかどうかを検証します。 前提条件と環境の要件については、デプロイの準備のページを参照してください。 スクリプトを実行して、開発クラスターを作成できるかどうかを検証します。
cd .\Desktop\Microsoft.Azure.ServiceFabric.WindowsServer.6.2.274.9494\
.\TestConfiguration.ps1 -ClusterConfigFilePath .\ClusterConfig.Unsecure.MultiMachine.json
次の例のような出力が表示されます。 一番下の "Passed" フィールドで True
が返された場合、サニティ チェックは成功であり、クラスターは入力した構成を基にデプロイ可能と考えられます。
Trace folder already exists. Traces will be written to existing trace folder: C:\Users\Administrator\Desktop\Microsoft.Azure.ServiceFabric.WindowsServer.6.2.274.9494\DeploymentTraces
Running Best Practices Analyzer...
Best Practices Analyzer completed successfully.
LocalAdminPrivilege : True
IsJsonValid : True
IsCabValid :
RequiredPortsOpen : True
RemoteRegistryAvailable : True
FirewallAvailable : True
RpcCheckPassed : True
NoConflictingInstallations : True
FabricInstallable : True
DataDrivesAvailable : True
NoDomainController : True
Passed : True
クラスターを作成する
クラスターの構成に問題がないことを確認したら、CreateServiceFabricCluster.ps1 スクリプトを実行して、構成ファイル内の仮想マシンに Service Fabric クラスターをデプロイします。
.\CreateServiceFabricCluster.ps1 -ClusterConfigFilePath .\ClusterConfig.Unsecure.MultiMachine.json -AcceptEULA
すべて正常に実行されれば、次のような出力結果が得られます。
Your cluster is successfully created! You can connect and manage your cluster using Microsoft Azure Service Fabric Explorer or PowerShell. To connect through PowerShell, run 'Connect-ServiceFabricCluster [ClusterConnectionEndpoint]'.
Note
デプロイのトレースは、CreateServiceFabricCluster.ps1 PowerShell スクリプトを実行した VM/マシンに書き込まれます。 このトレースは、スクリプトを実行したディレクトリの DeploymentTraces サブフォルダーにあります。 Service Fabric がマシンに正常にデプロイされたかどうかを確かめるには、FabricDataRoot ディレクトリにインストールされたファイルを確認します。このディレクトリはクラスター構成ファイルの FabricSettings セクションで指定した場所にあります (既定では c:\ProgramData\SF)。 また、タスク マネージャーで FabricHost.exe と Fabric.exe の各プロセスが実行されていることも確認します。
Service Fabric Explorer を開く
これで、Service Fabric Explorer を使用してクラスターに接続できるようになりました。いずれかのマシンから http://localhost:19080/Explorer/index.html で直接接続するか、リモートから http://<IPAddressofaMachine>:19080/Explorer/index.html で接続することができます。
ノードの追加と削除
ビジネス ニーズの変化に応じて、スタンドアロン Service Fabric クラスターでノードを追加または削除できます。 詳細の手順については、「Service Fabric スタンドアロン クラスターでノードを追加または削除する」 をお読みください。
次のステップ
この記事では、次の手順をはじめ、ストレージ アカウントに大量のランダム データを並列でアップロードする方法について学びました。
- 接続文字列の構成
- アプリケーションのビルド
- アプリケーションの実行
- 接続数の検証
シリーズの第 3 部に進んで、作成したクラスターにアプリケーションをインストールしましょう。