SharePoint Server のワークフローのインストールと構成
適用対象:2016 2019 Subscription Edition SharePoint in Microsoft 365
この記事では、SharePoint Server の SharePoint ワークフロー マネージャー (SPWFM) を構成するために必要な情報と手順について説明します。
注:
SharePoint 2013 ワークフロー プラットフォームを強化するワークフロー エンジン製品には、Microsoft ワークフロー マネージャー ("クラシック WFM") と SharePoint ワークフロー マネージャー (SPWFM) の 2 種類があります。 Microsoft Workflow Manager はインストールできなくなりましたが、SharePoint Workflow Manager は代わりにリリースされています。 そのため、このドキュメントに記載されている手順では、SharePoint ワークフロー マネージャーをインストールする方法について説明します。
概要
SharePoint Serverのワークフローを構築するときに、新しいオプションを使用できます。 これが [ プラットフォームの種類] オプションです。 この図は、SharePoint Designer 2013 を使用して新しいワークフローを作成する場合の [プラットフォームの種類] オプションを示しています。
図: SharePoint Server の 3 つのワークフロー プラットフォーム オプション。
SharePoint Serverを初めてインストールした場合、使用できるプラットフォームは SharePoint 2010 ワークフロー プラットフォームのみです。 SharePoint 2013 ワークフロー プラットフォームと Project Server プラットフォームには、さらに多くの手順が必要です。 次の表は、3 つのワークフロー プラットフォームの概要を示しています。
SharePoint Server で有効なワークフロー プラットフォームの種類
プラットフォームの種類 | プラットフォームのフレームワーク | 要件 |
---|---|---|
SharePoint 2010 ワークフロー |
Windows Workflow Foundation 3 |
SharePoint Server と一緒に自動的にインストールされます。 |
SharePoint 2013 ワークフロー |
Windows Workflow Foundation 4 |
SharePoint ワークフロー マネージャーまたは Microsoft ワークフロー マネージャー、および SharePoint Server が必要です。 |
SharePoint 2013 ワークフロー - Project Server |
Windows Workflow Foundation 4 |
SharePoint ワークフロー マネージャーまたは Microsoft ワークフロー マネージャー、および Project サーバーが必要です。 |
注:
SharePoint ワークフロー マネージャーは、SharePoint Server とは別にダウンロードしてインストールする必要があります。 SharePoint Server をインストールするときに自動的にインストールされることはありません。
SharePoint ワークフロー マネージャーの新しいインストール
SharePoint ワークフロー マネージャーは、SharePoint と同じサーバーまたは別の専用サーバーにインストールできます。 パフォーマンスと信頼性の理由から、SharePoint Workflow Manager を独自の専用サーバーにインストールすることをお勧めします。
注:
SharePoint ワークフロー マネージャーは、1、3、5 など、ホストの数が奇数のファームでサポートされています。 2 つまたは 4 つの SharePoint ワークフロー マネージャー ホストを持つファームはサポートされていません。
前提条件
SharePoint ワークフロー マネージャーには、Web Server (IIS) のサーバー ロールが必要です。 IIS サーバーの役割がインストールされていないサーバーに SharePoint ワークフロー マネージャーをインストールする場合、ワークフロー マネージャー構成ウィザードが失敗し、 ファイルまたはアセンブリ 'Microsoft.Web.Administration' を読み込めませんでした。 SharePoint ワークフロー マネージャーには、既定で Web サーバー ロールと共にインストールされる機能に加えて、次の Web サーバー機能が必要です。
- Windows 認証 (セキュリティ)
- .NET Extensibility 4.7 ([アプリケーション開発] の下)
- ASP.NET 4.7 (アプリケーション開発の下)
注:
SharePoint Workflow Manager は、ネットワーク環境で使用可能な RODC (読み取り専用ドメイン コントローラー) のみで正しくインストールおよび構成されていない可能性があります。 RWDC (読み取り/書き込みドメイン コントローラー) が必要です。 SharePoint ワークフロー マネージャーでは、SharePoint ワークフロー マネージャーのセットアップを実行する前にインストールする必要がある Azure Service Fabric が必要です。 Azure Service Fabric ランタイムがまだインストールされていない場合は、次の手順に従ってインストールします。
SharePoint ワークフロー マネージャーでサポートされる Azure Service Fabric ランタイムの最小バージョンは 9.1.1583.9590 であり、 Azure Service Fabric Runtime からダウンロードできます。 または、Windows インストーラーの上位バージョンを見つけてダウンロード することもできます。
管理者特権で PowerShell コンソールを開き、次のコマンドを実行します。
.\MicrosoftServiceFabric.9.1.1583.9590.exe /accepteula
Azure Service Fabric がインストールされていることを確認するには、コントロール パネルの [プログラムと機能] で見つけることができます。
注:
SharePoint ワークフロー マネージャーでは、Azure Service Fabric 以降のバージョン 9.1 CU2 (9.1.1583.9590) がサポート されています。
Windows Fabric がコンピューターに既にインストールされている場合は、Azure Service Fabric をインストールする前にアンインストールする必要があります。
Azure Service Fabric で大量のログが生成され、ディスク領域が削減される可能性があると報告されています。 これは、SharePoint ワークフロー マネージャーのワークロードに関係なく発生する可能性があります。 この問題を特定するには、 %ProgramData%\Microsoft Service Fabric\Log\Traces
ディレクトリで生成されたファイルを確認します。 Azure Service Fabric Runtime のみがインストールされている クラスター構成では、ログ サイズを制御できません。 期限切れのログを手動で削除する必要がある場合や、Windows タスク スケジューラを使用して定期的なタスクを作成して実行する必要がある場合があります。
SharePoint ワークフロー マネージャーをインストールする
SharePoint ワークフロー マネージャーと SharePoint ワークフロー マネージャー クライアントは、 ここからダウンロードできます。 システム要件は、そのページにも記載されています。
ワークフロー マネージャー ファーム内のすべてのサーバーに SharePoint ワークフロー マネージャーと SharePoint ワークフロー マネージャー クライアントの両方をインストールします。
SharePoint Server ファーム内のすべてのサーバーに SharePoint ワークフロー マネージャー クライアントのみをインストールします。
注:
SharePoint Server を実行しているサーバーに SharePoint ワークフロー マネージャーをインストールすることはサポートされていますが、パフォーマンスと信頼性の理由から、SharePoint Workflow Manager を独自の専用サーバーにインストールすることをお勧めします。
SharePoint ワークフロー マネージャー ファームを構成する
SharePoint ワークフロー マネージャー ファームを作成し、サーバーをファームに参加させるには、ワークフロー マネージャー構成ウィザードを使用して SharePoint ワークフロー マネージャーを構成します。
SharePoint ワークフロー マネージャー サーバーにログオンし、[ワークフロー マネージャーの構成] をクリックし、要件に応じて [既定の設定でワークフロー マネージャーを構成する] または [カスタム設定でワークフロー マネージャーを構成する] をクリックします。 別のポート、カスタム証明書、またはカスタム データベース名を使用する場合は、[カスタム設定でワークフロー マネージャーを構成する] オプションを使用します。
この例では、[既定の設定] オプションを使用します。
注:
既定では、ワークフロー管理サイトには HTTPS (TLS/SSL) ポート 12290 のみが構成されています。 暗号化されていない HTTP ポート 12291 経由での通信も許可する場合は、[このコンピューターで HTTP 経由でワークフロー管理を許可する] チェック ボックスをオンにする必要があります。 これは、後で Register-SPWorkflowService コマンドレットを実行する場合の要因です。 ワークフロー ウィザードで必要な SQL Server とサービス アカウントの詳細を指定します。
構成ウィザードでは、選択内容がコミットされる前に概要が表示されます。
注:
[既定の設定でワークフロー マネージャーを構成する] オプションを使用すると、一部の値が選択されます。 お使いの環境に適していない場合は、ウィザードを起動し、[カスタム設定でワークフロー マネージャーを構成する] を選択する必要がある場合があります。
構成ウィザードが正常に完了します。 失敗した場合は、[ログの表示] リンクを選択し、問題を見つけて修正してから、ウィザードをもう一度実行してください。
マルチサーバーの SharePoint ワークフロー マネージャー ファームを作成する場合は、他のノードでワークフロー構成ウィザードを実行し、[既存のワークフロー マネージャー ファームに参加する] オプションを選択する必要があります。
SharePoint ファームでアプリ管理とサブスクリプションの設定サービスを構成する
SharePoint 2013 プラットフォーム ワークフローが機能するには、SharePoint ファームで App Management サービスとサブスクリプション設定サービスが必要です。 SharePoint ファームでまだ設定していない場合は、SharePoint サーバーで、App Management とサブスクリプション設定サービス、サービス アプリケーション、およびサービス アプリケーション プロキシを設定します。
アプリ管理サービスは、サーバーの全体管理を使用して作成できます。
PowerShell を使用して、サブスクリプション設定サービス アプリケーションを作成できます。
$sa = New-SPSubscriptionSettingsServiceApplication -ApplicationPool 'SharePoint Web Services Default' -Name 'Subscriptions Settings Service Application' -DatabaseName 'Subscription'
New-SPSubscriptionSettingsServiceApplicationProxy -ServiceApplication $sa
SharePoint Server ファームと連携するように SharePoint ワークフロー マネージャーを構成する
SharePoint ワークフロー マネージャーを SharePoint Server と連携するように構成する前に、次の重要な要素を検討してください。
- SharePoint ワークフロー マネージャーと SharePoint Server の間の通信では 、HTTP または HTTPS が使用されますか?
注:
セキュリティ上の理由から、運用環境では HTTPS の使用をお勧めします。
HTTP を使用して通信が行われる環境で SharePoint ワークフロー マネージャーを構成するには
注:
既定では、ワークフロー管理サイトには HTTPS (TLS/SSL) ポート 12290 のみが構成されています。 HTTP の使用を構成するには、前の手順で "ワークフロー マネージャー構成" ウィザードを実行するときに、[このコンピューターで HTTP 経由でワークフロー管理を許可する] チェック ボックスがオンになっている必要があります。
SharePoint Server ファーム内の各サーバーにサインインします。
SharePoint ファーム内の各サーバーに SharePoint ワークフロー マネージャー クライアント をインストールします。
重要
Register-SPWorkflowService コマンドレットを実行する前に、SharePoint ファーム内の各サーバーに SharePoint ワークフロー マネージャー クライアントをインストールする必要があります。
1 つの SharePoint サーバーで、SharePoint 管理シェルを管理者として開きます。 SharePoint 管理シェル コマンドを右クリックし、[ 管理者として実行] を選択します。
Register-SPWorkflowService コマンドレットを実行して、SharePoint ファームを SharePoint ワークフロー マネージャー ファームに接続します。 コマンドレットを実行するのは 1 回のみで、SharePoint ファーム内の任意のサーバーから実行できます。
注:
-SPSite パラメーターの値は、SharePoint ファーム内の任意の有効なサイト コレクションにすることができます。 -WorkflowHostUri パラメーターの正しい値は、SharePoint ワークフロー マネージャー サーバーで PowerShell
Get-WFFarm | select endpoints
を実行することで確認できます。例:
Register-SPWorkflowService -SPSite "http://myserver/mysitecollection" -WorkflowHostUri "http://workflow.example.com:12291" -AllowOAuthHttp
HTTPS を使用して通信が行われる環境で SharePoint ワークフロー マネージャーを構成するには
SharePoint サーバーに SharePoint ワークフロー マネージャー証明書をインストールする必要があるかどうかを判断します。
状況によっては、SharePoint ワークフロー マネージャー証明書を取得してインストールする必要があります。 このような証明書を取得してインストールすることが要求される場合は、操作を続行する前にこの手順を完了する必要があります。 証明書のインストールが必要かどうかの判断およびその手順については、「ワークフロー マネージャー証明書を SharePoint Server 2013 にインストールする」を参照してください。
SharePoint Server ファーム内の各サーバーにサインインします。
SharePoint ファーム内の各サーバーに SharePoint ワークフロー マネージャー クライアント をインストールします。
重要
Register-SPWorkflowService コマンドレットを実行する前に、SharePoint ファーム内の各サーバーに SharePoint ワークフロー マネージャー クライアントをインストールする必要があります。
SharePoint 管理シェル を管理者として開きます。 このためには、 [SharePoint 管理シェル] コマンドを右クリックし、 [管理者として実行] を選択します。
Register-SPWorkflowService コマンドレットを実行して、SharePoint ファームを SharePoint ワークフロー マネージャー ファームに接続します。 コマンドレットを実行するのは 1 回のみで、SharePoint ファーム内の任意のサーバーから実行できます。
注:
-SPSite パラメーターの値は、SharePoint ファーム内の任意の有効なサイト コレクションにすることができます。 -WorkflowHostUri パラメーターの正しい値は、SharePoint ワークフロー マネージャー サーバーで PowerShell
Get-WFFarm | select endpoints
を実行することで確認できます。例:
Register-SPWorkflowService -SPSite "https://myserver/mysitecollection" -WorkflowHostUri "https://workflow.example.com:12290"
既存の Microsoft ワークフロー マネージャーをアップグレードする
Microsoft ワークフロー マネージャーをインプレースでアップグレードすることはできません。また、SharePoint ワークフロー マネージャーを Microsoft ワークフロー マネージャーの上に配置することはできません。 Microsoft Workflow Manager (クラシック WFM) を SharePoint Workflow Manager (SPWFM) に更新するには、以前のバージョンのワークフロー マネージャー、ワークフロー マネージャー クライアント、Service Bus をアンインストールする必要があります。
注:
任意のバージョンの Microsoft ワークフロー マネージャーから SharePoint ワークフロー マネージャーにアップグレードできます。 既存の "クラシック WFM" ファームを SPWFM にアップグレードしているため、WFM データベースが再利用され、既存の登録とワークフローはそのまま残ります。
次の手順に従って Microsoft Workflow Manager をアンインストールし、SharePoint ワークフロー マネージャーをインストールします。
重要
アップグレード手順では、参加を解除してから既存の WFM ファームに再度参加する必要があるため、再参加するときに WFM "証明書生成キー" が必要になります。 そのキーが何であるかがわからない場合は、先に進む前に 証明書生成キーをリセット する必要があります。 有効な証明書生成キーがないと、既存のワークフロー ファームに参加できません。
ワークフロー マネージャー構成ウィザードを実行します。
[ ワークフロー マネージャー ファームを終了する] を選択します。
ウィザードが終了するまで、後続の手順を確認します。
ワークフロー ファーム内のすべての Microsoft Workflow Manager サーバーで、この手順を繰り返します。
注:
ワークフロー マネージャーと Service Bus で使用される各データベースは、SharePoint ワークフロー マネージャーを使用してファームに再参加するときに指定する必要があります。 たとえば、ワークフロー マネージャー ファーム管理データベースと Service Bus ファーム管理データベースの SQL Server インスタンスとデータベース名です。
インストールされている場合は、Microsoft Workflow Manager、Workflow Manager クライアント、Service Bus for Windows Server、および Windows Fabric をアンインストールします。 コントロール パネルからアンインストールできます。 Windows Fabric がインストールされている場合は、Windows Fabric をアンインストールした後に Azure Service Fabric をインストールしてください。
重要
SharePoint サーバーに SharePoint ワークフロー マネージャーをインストールする場合は、"Windows Fabric" と "AppFabric 1.1 for Windows Server" の両方がインストールされている可能性があります。 必ず Windows Fabric のみをアンインストールしてください。 AppFabric 1.1 をアンインストールしないでください。 これは別のサービスであり、SharePoint 分散キャッシュに必要です。
フォルダー "%ProgramFiles%\Workflow Manager\1.0" または "%Program Files%\Service Bus\1.0" が既に存在する場合は、次の手順を成功させるためにそれらを手動で削除する必要があります。
SharePoint ワークフロー マネージャー サーバーを再起動します。
まだインストールされていない場合は、 上記の「前提条件」セクション の手順を使用して Azure Service Fabric をインストールします。
SharePoint ワークフロー マネージャーと SharePoint ワークフロー マネージャー クライアントをインストールします。 SharePoint ワークフロー マネージャーと SharePoint ワークフロー マネージャー クライアントは、 ここからダウンロードできます。 システム要件は、そのページにも記載されています。
ワークフロー マネージャー構成ウィザードを実行し、[既存のワークフロー マネージャー ファームに参加する] を選択して、前のファームに再参加します。 以前の "クラシック WFM" ファームで使用したデータベース、サービス アカウント、および証明書生成キーの情報を使用します。
注:
通常、アップグレード時に、既存のワークフロー サービス アプリケーション プロキシを削除し、Register-SPWorkflowService コマンドレットを使用して再接続する必要はありません。 SharePoint ワークフロー マネージャーと Service Bus の証明書生成キーの無効が発生した場合は、リセットが必要になる場合があります。 「証明書生成キーのリセット」を参照してください。
ワークフロー マネージャー構成ウィザードを再実行し、[ ワークフロー マネージャー ファームのアップグレード] を選択し、最後まで後続の手順を確認します。
注:
この手順は、SharePoint ワークフロー マネージャー ファーム内のすべてのサーバーで実行する必要があります。 [ワークフロー マネージャー ファームのアップグレード] オプションは、アップグレードが必要かどうかに関係なく、ワークフロー マネージャー構成ウィザードに常に表示されます。 複数回実行しても、アップグレードが保留されていない場合でも問題ありません。
ワークフロー マネージャー ファームに複数のサーバーがある場合は、すべてのワークフロー ファーム サーバーで前の手順を繰り返します。
以前のバージョンをアンインストールした後、SharePoint Server ファーム内の各サーバーに SharePoint ワークフロー マネージャー クライアント をインストールします。
インストールを検証する
次の手順に従って、必要なコンポーネントが正常にインストールおよび構成されていることを確認します。
インストールを検証するには
- SharePoint サイトにユーザーを追加し、ユーザーにサイト デザイナーのアクセス許可を付与します。
- クライアント コンピューターに SharePoint Designer 2013 をインストールし、SharePoint 2013 ワークフロー プラットフォームに基づいてワークフローを作成します。 詳細については、「SharePoint Designer 2013 および SharePoint 2013 Workflow プラットフォームを使用してワークフローを作成する」を参照してください。
- SharePoint ユーザー インターフェイスからこのワークフローを実行します。
トラブルシューティング
セキュリティ上の理由から、セットアップ アカウントを使用して SharePoint 2013 ワークフロー プラットフォームに基づいてワークフローを作成することはできません。 SharePoint Designer 2013 を使用して SharePoint 2013 ワークフロー プラットフォームに基づいてワークフローを作成しようとすると、ワークフロー アクションの一覧が存在せず、ワークフローが作成されていないという警告が表示されます。
ワークフローを展開および実行するユーザーは、User Profile Service に追加する必要があります。 サーバーの全体管理の [ユーザー プロファイル サービス アプリケーション] ページを確認して、ワークフローのインストールを検証するために使用しているユーザーがユーザー プロファイル サービスにあることを確認します。
次の図に示すように、IIS マネージャーを使用して、SharePoint Server と Workflow Manager が HTTP および HTTPS で使用しているポートを判断できます。
図: IIS マネージャーを使用して SharePoint ワークフロー マネージャーで使用されるポートを表示する
SharePoint ワークフロー マネージャーは、TCP/IP または名前付きパイプを使用して通信します。 SharePoint ワークフロー マネージャー データベースをホストする SQL Server インスタンスで適切な通信プロトコルが有効になっていることを確認します。
Workflow Manager データベースをホストする SQL Server インスタンスで、SQL Browser Service が実行している必要があります。
システム アカウントを使用してワークフローを開発することはできません。
SharePoint Server のトラブルシューティングを行うには、「SharePoint Server のトラブルシューティング」を参照してください。