OWINを使用してWeb APIをホストする、サービスファブリックのステートレスで信頼性の高いサービスを作成しました。アプリケーションをローカルクラスターにデプロイすると、正常に機能し、APIを呼び出すことができました。
アプリケーションをパブリッククラスターに展開したとき、展開は正常に完了しましたが、Service Fabric Explorerを使用してクラスターを検査したとき、
レプリカはしばらくの間「In Build」ステータスにあるように見えましたが、「Warning」状態に移行し、最終的にファブリックエクスプローラーのツリー全体が赤くなり、パーティションの下にレプリカがなくなりました。そして、ヘルスステータスをエラーとして示しました。 「パーティションがターゲットレプリカまたはインスタンス数を下回っています」というエラーを表示しています。
また、許可されたポートを使用してOWIN Webサーバーを作成しました。
これは、ローカルクラスターにアプリケーションをデプロイするときに発生しません。 パブリッククラスターのService Fabric Explorerスクリーンショット 、 ローカルクラスターのService Fabric Explorerスクリーンショット
ほとんどの場合、このエラーは「サービスを開始できませんでした」という意味です。サービスの未処理の例外がサービスの開始を妨げている場合、Service Fabric Explorerでサービスインスタンスまたはレプリカにドリルダウンして、複数回の試行後に開始に失敗したときにスタックトレースを表示できます。
ところで、新しいWebベースのService Fabric Explorerを使用することをお勧めします。クラスターのポート19080にWebブラウザーを向けるだけです: http://mycluster.eastus.cloudapp.Azure.com:19080/Explorer/index.htm .
私の側からのちょっとしたコメント。このエラーに何時間も費やした後、問題はC:\
ドライブの低いディスクスペースにありました。空き容量を約3GBから8GBに増やした後、エラーは消えました。
ここで述べたとおり: https://github.com/Azure/service-fabric-issues/issues/15
デフォルトのインストールには、現在約10Gbのディスク容量が必要です
この問題に出くわしましたが、構成エラーでした。
ポート19080上のサービスFabric Explorerのエラーは次のように述べています。
Error event: SourceId='System.FM', Property='State'.
パーティションがターゲットレプリカまたはインスタンス数を下回っています。 fabric:/ MyApp/MyService 3 2 [partitionid] N/P RD _Node_0 Up [長い数値](1レプリカ中1を表示。使用可能なレプリカの合計:1.)
私のApplicationManifest.xmlには次のようなものがありました。
<Service Name="MyService">
<StatefulService ServiceTypeName="MyServiceType" TargetReplicaSetSize=**"3"** MinReplicaSetSize=**"2"**>
<SingletonPartition />
</StatefulService>
</Service>
MinReplicaSetSizeを1に減らし、TargetReplicaSetSizeを1に減らし、再公開することで問題を解決しました。
従来のEye-Dee-Ten-Tee(ID10T)の構成の問題:-D
Azure Service Fabricを使用してアプリケーションをデプロイしていますが、このエラーが発生しました。
調査後、「TargetReplicaSetSize」と「MinReplicaSetSize」がノード番号を超えたことが原因であることがわかりました。
問題を解決するには、ApplicationParameters/cloud.xmlで「PartitionCount」、「TargetReplicaSetSize」、「MinReplicaSetSize」を1に変更し、アプリケーションを再デプロイします。
<?xml version="1.0" encoding="utf-8"?> <Application xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" Name="fabric:/Voting" xmlns="http://schemas.Microsoft.com/2011/01/fabric"> <Parameters> <Parameter Name="xxx_PartitionCount" Value="1" /> <Parameter Name="xxx_MinReplicaSetSize" Value="1" /> </Parameters> </Application>
同じエラーメッセージが表示されました。私のコンテナはまだ構築されていませんでした。数分かかりましたが、ステータスがOKに変わりました。