このチュートリアルは、シリーズのパート 3 です。 このチュートリアルでは、Service Fabric コンテナー アプリケーションでのフェールオーバーの処理方法について説明します。 さらに、コンテナーのスケーリング方法を説明します。 このチュートリアルでは、次のことを行います。
- Service Fabric クラスターでのコンテナーのフェールオーバーについて学習する
- アプリケーションの Web フロントエンド コンテナーをスケーリングする
前提条件
パート 2 のアプリケーションは、アクティブな Service Fabric クラスターで動作しています。
クラスター内のコンテナーをフェールオーバーする
エラーが発生すると、Service Fabric はクラスター内の他のノードにコンテナー インスタンスを自動的に移動します。 コンテナーのノードを手動でドレインして、クラスター内の他のノードに適切に移動することもできます。 サービスをスケーリングするには複数の方法があります。この例では、Service Fabric Explorer を使います。
フロントエンド コンテナーをフェールオーバーするには、次の手順を実行します。
- クラスターで Service Fabric Explorer を開きます (例:
http://lin4hjim3l4.westus.cloudapp.azure.com:19080)。 - ツリー ビューの fabric:/TestContainer/azurevotefront ノードをクリックし、パーティション ノード (GUID で表されます) を展開します。 ツリー ビューのノード名に注意してください。この名前は、コンテナーが現在実行しているノードを示します (例:
_nodetype_1) - ツリー ビューの Nodes ノードを展開します。 コンテナーを実行しているノードの横にある省略記号 (3 つのドット) をクリックします。
- [再起動] を選んでそのノードを再起動し、再起動操作を確認します。 再起動により、コンテナーはクラスター内の別のノードにフェールオーバーします。

ノード名 (フロントエンド コンテナーが実行されている場所を示す) がクラスター内の別のノードに変わることを確認します。 しばらくすると、再度アプリケーションを参照して、アプリケーションが異なるノードで実行していることを確認できます。
クラスター内のコンテナーとサービスをスケーリングする
Service Fabric コンテナーは、サービスに対する負荷に対応して、クラスター内でスケーリングできます。 クラスターで実行されるインスタンスの数を変更することで、コンテナーをスケーリングできます。
Web フロントエンドをスケーリングするには、次の手順を実行します。
- クラスターで Service Fabric Explorer (例:
http://lin4hjim3l4.westus.cloudapp.azure.com:19080) を開きます。 - ツリー ビューで fabric:/TestContainer/azurevotefront ノードの横にある省略記号 (3 つの点) をクリックし、[Scale Service] (サービスのスケーリング) を選びます。

これで Web フロントエンドのインスタンス数をスケーリングすることを選択できます。
- この数値を 2 に変更し、[Scale Service] (サービスのスケーリング) をクリックします。
- ツリー ビューの fabric:/TestContainer/azurevotefront ノードをクリックし、パーティション ノード (GUID で表されます) を展開します。

これで、サービスに 2 つのインスタンスがあることがわかります。 ツリー ビューで、インスタンスが実行しているノードを確認できます。
この簡潔な管理タスクにより、フロントエンド サービスでユーザー負荷を処理するためのリソースが 2 倍になりました。 実行するサービスの信頼性を高めるために、サービスのインスタンスを複数用意する必要はないことがわかります。 サービスでエラーが発生した場合、Service Fabric によって新しいサービス インスタンスがクラスターで実行されます。
次のステップ
このチュートリアルでは、コンテナーのフェールオーバーとアプリケーションのスケーリングを実際に行いました。 次の手順を完了しました。
- Service Fabric クラスターでのコンテナーのフェールオーバーについて学習する
- アプリケーションの Web フロントエンド コンテナーをスケーリングする
このチュートリアル シリーズで学習した内容は次のとおりです。
- コンテナー イメージを作成する
- Azure Container Registry にコンテナー イメージをプッシュする
- Yeoman を使って Service Fabric のコンテナーをパッケージ化する
- コンテナーで Service Fabric アプリケーションをビルドして実行する
- Service Fabric でのフェールオーバーとスケーリングの処理方法