次の方法で共有


オンプレミス環境の設定と展開 (アプリケーション 10.0.32 以降)

この記事では、Microsoft Dynamics 365 Finance + Operations (on-premises) アプリケーション バージョン 10.0.32 以降を計画、設定、展開する方法について説明します。 アプリケーション バージョン 10.0.32 には、プラットフォーム更新プログラム 56 が含まれています。

ローカル ビジネス データ Yammer グループ が利用可能です。 そこでは、オンプレミス展開に関する質問またはフィードバックをすべて投稿できます。

Finance + Operations (on-premises) コンポーネント

Finance + Operations (on-premises) アプリケーションは、次の 4 つの主要なコンポーネントで構成されています。

  • Application Object Server (AOS)
  • ビジネス インテリジェンス (BI)
  • 財務レポート/管理レポーター
  • データ管理フレームワーク (DMF)

これらのコンポーネントは、次のシステム ソフトウェアによって異なります。

  • Windows Server (英語オペレーティング システムのインストールのみがサポートされます。)

  • SQL Server

    重要

    フルテキスト検索を有効にする必要があります。

  • SQL Server Reporting Services (SSRS)

    SSRS は BI 仮想マシン (VM) に展開されます。 SSRS ノードには、ローカルで実行されているデータベース エンジン インスタンスも必要です。

  • SQL Server Integration Services (SSIS)

    SSIS は、DMF サービスをホストする VM に配置されます。

  • SQL Server Management Studio (SSMS)

  • スタンドアロン Azure Service Fabric

  • Windows PowerShell 5.0 以降

  • Windows Server での Active Directory Federation Services (AD FS)

  • ドメイン コントローラー

    重要

    ドメイン コントローラは、Windows Server 2012 R2 またはそれ以降であり、ドメイン機能レベルは 2012 R2 またはそれ以上である必要があります。 ドメイン機能レベルの詳細については、次の記事を参照してください。

  • 次はオプションですが、強くお勧めします: Windows Server の Active Directory Certificate Services (AD CS)

重要

サポートされているバージョンの情報については、サポートされているソフトウェア Microsoft Dynamics 365 Finance + Operations (on-premises) を参照してください。

Microsoft Dynamics Lifecycle Services

Finance + Operations (on-premises) のビットは、Microsoft Dynamics Lifecycle Services を通じて配布されます。 配置する前に、エンタープライズ契約 チャンネルを通じてライセンス キーを購入し、Lifecycle Services でオンプレミス プロジェクトを設定します。 Lifecycle Services からのみ配置を開始することができます。 Lifecycle Services でオンプレミス プロジェクトを設定する方法の詳細については、Lifecycle Services でのオンプレミス プロジェクトの設定を参照してください。

認証

オンプレミス アプリケーションは AD FS で動作します。 Lifecycle Services と対話するには、Microsoft Entra ID も設定する必要があります。 展開を完了し、Lifecycle Services ローカル エージェントを構成するには、Microsoft Entra ID が必要です。 Microsoft Entra テナントがまだない場合は、Microsoft Entra ID が提供するオプションのいずれかを使用して無料のものを取得できます。 詳細については、クイックスタート: テナントの設定を参照してください。

Standalone Service Fabric

Finance + Operations (on-premises) は スタンドアロン Service Fabric を使用します。 詳細については、Service Fabric ドキュメント を参照してください。

Finance + Operations (on-premises) の設定は、Service Fabric 内に一連のアプリケーションを配置します。 展開中に、クラスター内の各ノードは、構成を通じて次のノード タイプの 1 つとして定義されます。

  • AOSNodeType – このタイプのノードは、AOS (ビジネス ロジック) をホストします。
  • OrchestratorType – このノード タイプのノードは Service Fabric のプライマリ ノードとして機能し、展開およびサービスロジックをホストします。
  • ReportServerType – このタイプのノードは、SSRS およびレポート ロジックをホストします。
  • MRType – このタイプのノードは Management Reporter ロジックをホストします。
  • SSISNodeType – このタイプのノードは、DMF サービスをホストします。

インフラストラクチャ

Finance + Operations (on-premises) には、非 Microsoft 仮想化プラットフォーム (特に VMWare) での操作に関する Microsoft の標準サポート ポリシーが適用されます。 詳細については、Microsoft 以外のハードウェア仮想化ソフトウェアで実行される Microsoft ソフトウェアのサポート ポリシーを参照してください。 要するに、Microsoft はこの環境で製品をサポートしています。 ただし、Microsoft が問題の調査を依頼された場合、仮想化プラットフォームのない状態または Microsoft 仮想化プラットフォームで問題を再現するようまず顧客に依頼する場合があります。

VMware を使用している場合は、次の Web ページに記載されている修正プログラムを実装する必要があります。

警告

Dynamics 365 Finance + Operations (on-premises) は、Azure クラウド サービス を含む、任意のパブリック クラウド インフラストラクチャではサポートされていません。 ただし、Azure Stack HCI および Azure Stack Hub で実行できます。

ハードウェア構成には、次のコンポーネントが含まれます。

  • Windows Server VM に基づくスタンドアロン Service Fabric Cluster
  • SQL Server (Clustered SQL と Always-On の両方がサポートされます。)
  • 認証のための AD FS
  • ストレージ用の Server Message Block (SMB) バージョン 3 のファイル共有
  • オプション: Microsoft Office Server

詳細については、オンプレミス展開のシステム要件を参照してください。

重要

サポートされているバージョンの情報については、サポートされているソフトウェア Microsoft Dynamics 365 Finance + Operations (on-premises) を参照してください。

ハードウェア レイアウト

オンプレミス環境のハードウェア サイジング要件 で推奨されるサイジングに基づいて、インフラストラクチャと Service Fabric Cluster を計画します。 Service Fabric クラスターを計画する方法の詳細については、Service Fabric のスタンドアロン クラスター展開の計画と準備 を参照してください。

次のテーブルは、ハードウェア レイアウトの例を示しています。 この例は、設定を示すためにこの記事全体で使用されています。 設定が完了すると、次の手順で指定されているマシン名と IP アドレスを、ご使用の環境のマシンの名前と IP アドレスに置き換える必要があります。

メモ

Service Fabric クラスターのプライマリ ノードには、少なくとも 3 つのノードが必要です。 この例では OrchestratorType を主要なノード タイプとして指定します。 3 つ以上の VM を持つノード タイプがある場合、クラスターの信頼性を高めるために、そのノードタイプをプライマリ (シード) ノード タイプにすることを検討します。

マシンの目的 Service Fabric ノード タイプ コンピューター名 IP アドレス
ドメイン コントローラー LBDEN01DC1 10.179.108.2
AD FS LBDEN01ADFS1 10.179.108.3
ファイル サーバー LBDEN01FS01 10.179.108.4
SQL Always On クラスター LBDEN01SQLA01 10.179.108.5
LBDEN01SQLA02 10.179.108.6
LBDEN01SQLA 10.179.108.9
AOS 1 AOSNodeType LBDEN01SFAOS1 10.179.108.11
AOS 2 AOSNodeType LBDEN01SFAOS2 10.179.108.12
AOS 3 AOSNodeType LBDEN01SFAOS3 10.179.108.13
オーケストレータ 1 OrchestratorType LBDEN01SFORCH1 10.179.108.21
オーケストレータ 2 OrchestratorType LBDEN01SFORCH2 10.179.108.22
オーケストレータ 3 OrchestratorType LBDEN01SFORCH3 10.179.108.23
Management Reporter ノード MRType LBDEN01SFMR1 10.179.108.31
SSRS ノード 1 ReportServerType LBDEN01SFBI1 10.179.108.41
SSIS ノード 1 SSISNodeType LBDEN01SFSSIS1 10.179.108.42
クライアント LBDEN01CLIENT1 10.179.108.51

次の表に、バッチ実行と対話型セッションが専用ノードで実行されるハードウェア レイアウトの例を示します。 詳細については、オンプレミス配置でのバッチのみおよび対話型のみの AOS ノードのコンフィギュレーションを参照してください。

マシンの目的 Service Fabric ノード タイプ コンピューター名 IP アドレス
ドメイン コントローラー LBDEN01DC1 10.179.108.2
AD FS LBDEN01ADFS1 10.179.108.3
ファイル サーバー LBDEN01FS01 10.179.108.4
SQL Always On クラスター LBDEN01SQLA01 10.179.108.5
LBDEN01SQLA02 10.179.108.6
LBDEN01SQLA 10.179.108.9
AOS 1 BatchOnlyAOSNodeType LBDEN01SFAOS1 10.179.108.11
AOS 2 BatchOnlyAOSNodeType LBDEN01SFAOS2 10.179.108.12
AOS 3 BatchOnlyAOSNodeType LBDEN01SFAOS3 10.179.108.13
AOS 4 InteractiveOnlyAOSNodeType LBDEN01SFAOS4 10.179.108.14
AOS 5 InteractiveOnlyAOSNodeType LBDEN01SFAOS5 10.179.108.15
AOS 6 InteractiveOnlyAOSNodeType LBDEN01SFAOS6 10.179.108.16
オーケストレータ 1 OrchestratorType LBDEN01SFORCH1 10.179.108.21
オーケストレータ 2 OrchestratorType LBDEN01SFORCH2 10.179.108.22
オーケストレータ 3 OrchestratorType LBDEN01SFORCH3 10.179.108.23
Management Reporter ノード MRType LBDEN01SFMR1 10.179.108.31
SSRS ノード 1 ReportServerType LBDEN01SFBI1 10.179.108.41
SSIS ノード 1 SSISNodeType LBDEN01SFSSIS1 10.179.108.42
クライアント LBDEN01CLIENT1 10.179.108.51

設定プロセスの概要

Finance + Operations (on-premises) のインフラストラクチャを設定するには、以下の手順を完了する必要があります。 開始する前にすべての手順を読むと、セットアップを計画しやすくなります。

  1. ドメイン名とドメイン ネーム システム (DNS) ゾーンの計画をします
  2. 証明書の計画と取得をします
  3. ユーザーとサービス アカウントの計画をします
  4. DNS ゾーンの作成と A レコードの追加をします
  5. VM のドメインへの参加をします
  6. セットアップ スクリプトを Lifecycle Services からダウンロードします
  7. コンフィギュレーションを記述します
  8. グループ管理サービス アカウント (gMSA) の名前を作成します
  9. ファイル ストレージを設定します
  10. SQL Server を設定します
  11. 証明書を構成します
  12. SSIS を設定します
  13. SSRS を設定します
  14. VMs を設定します
  15. スタンドアロン Service Fabric Cluster を設定します
  16. テナント用 Lifecycle Services 接続を構成します
  17. SQL Server 証明書をコンフィギュレーションします
  18. データベースを構成します
  19. 資格情報を暗号化します
  20. AD FS を構成します
  21. コネクタを構成し、オンプレミスのローカル エージェントをインストールします
  22. リモート処理が使用されたら、CredSSP を終了処理します
  23. Lifecycle Services から Finance + Operations (on-premises) 環境を配置します
  24. Finance + Operations (on-premises) 環境に接続します

設定

前提条件

セットアップ プロセスを開始する前に、次の前提条件が満たされている必要があります。 これらの前提条件の設定は、この記事の範囲外です。

  • Active Directory Domain Services (AD DS) は、ネットワークにインストールして構成する必要があります。
  • AD FS は、展開する必要があります。
  • SQL Server は SSRS コンピューターにインストールされている必要があります。
  • SSRS は、SSRS コンピューターにネイティブ モードでインストールされる (コンフィギュレーションはされない) 必要があります。
  • オプション: AD CS がネットワークにインストールおよびコンフィギュレーションされます。

次の表は、Lifecycle Services からダウンロードされたインフラストラクチャ セットアップ スクリプトによって VM にインストールされる Windows の機能を示します。 ダウンロードしてインストールする必要があるその他の必須ソフトウェアの詳細については、この記事の後半にあるVM の設定を参照してください。

ノード タイプ コンポーネント 詳細
AOS .NET Framework version 2.0–3.5 (CLR 2.0) Windows の機能: NET-Framework-Features、NET-Framework-Core、NET-HTTP-Activation、NET-Non-HTTP-Activ
AOS .NET Framework version 4.0–4.6 (CLR 4.0) Windows の機能: NET-Framework-45-Features、NET-Framework-45-Core、NET-Framework-45-ASPNET、NET-WCF-Services45、NET-WCF-TCP-PortSharing45
AOS インターネット インフォメーション サービス (IIS) Windows の機能: WAS、WAS-Process-Model、WAS-NET-Environment、WAS-Config-APIs、Web-Server、Web-WebServer、Web-Security、Web-Filtering、Web-App-Dev、Web-Net-Ext、Web-Mgmt-Tools、Web-Mgmt-Console
BI .NET Framework version 2.0–3.5 (CLR 2.0) Windows の機能: NET-Framework-Features、NET-Framework-Core、NET-HTTP-Activation、NET-Non-HTTP-Activ
BI .NET Framework version 4.0–4.6 (CLR 4.0) Windows の機能: NET-Framework-45-Features、NET-Framework-45-Core、NET-Framework-45-ASPNET、NET-WCF-Services45、NET-WCF-TCP-PortSharing45
MR .NET Framework version 2.0–3.5 (CLR 2.0) Windows の機能: NET-Framework-Features、NET-Framework-Core、NET-HTTP-Activation、NET-Non-HTTP-Activ
MR .NET Framework version 4.0–4.6 (CLR 4.0) Windows の機能: NET-Framework-45-Features、NET-Framework-45-Core、NET-Framework-45-ASPNET、NET-WCF-Services45、NET-WCF-TCP-PortSharing45

手順 1 ドメイン名と DNS ゾーンの計画

AOS のプロダクション インストールには、公的に登録されたドメイン名を使用することをお勧めします。 このようにして、外部アクセスが必要な場合は、ネットワークの外部からインストールにアクセスできます。

たとえば、会社のドメインが contoso.com の場合、Finance + Operations (on-premises) は d365ffo.onprem.contoso.com であり、ホスト名は次のようになります。

  • AOS の機械の場合 ax.d365ffo.onprem.contoso.com
  • Service Fabric クラスターの場合 sf.d365ffo.onprem.contoso.com

手順 2 証明書の計画と取得

Service Fabric Cluster と展開されているすべてのアプリケーションを保護するには、Secure Sockets Layer (SSL) 証明書が必要です。 運用とサンドボックスのワークロードについては、DigiCertComodoSymantecGoDaddy、または GlobalSign などの認証局から証明書を取得することをお勧めします。 ドメインが AD CS で設定されている場合は、Microsoft セットアップ スクリプトを使用してテンプレートと証明書を作成できます。 証明書ごとに、プライベート キーが作成されたキーの交換を含める必要があり、個人情報交換 (.pfx) ファイルにエクスポート可能な必要があります。

自己署名証明書は、テスト目的でのみ使用できます。 便宜上、Lifecycle Services で提供されるセットアップ スクリプトには、自己署名証明書を生成およびエクスポートするスクリプトが含まれます。 自己署名スクリプトを使用している場合は、この記事の後の手順で作成スクリプトを実行するように指示されます。 前述の通り、これらの証明書はテスト目的でのみ使用できます。

重要

Microsoft は、AD CS による自動証明書の作成をサポートして、セットアップ スクリプトによる自己署名証明書の生成のサポートを終了する予定です。

一般証明書設定

設定 必要量
署名アルゴリズム sha256RSA 推奨
署名ハッシュ アルゴリズム sha256 推奨
公開キー RSA (2048 ビット) 必須
拇印アルゴリズム sha1 推奨
暗号化プロバイダー Microsoft Enhanced RSA および AES Cryptographic Provider 必須 (暗号化証明書を除く)

必要な証明書の概要

使用方法 説明 追加条件
SQL Server SSL 証明書 この証明書は、ネットワーク上の SQL Server インスタンスとクライアント アプリケーションの間で転送されるデータを暗号化するために使用されます。

証明書の場合、ドメイン名は SQL Server のインスタンスまたはリスナーの完全修飾ドメイン名 (FQDN) と一致する必要があります。 たとえば、SQL のリスナーが LBDEN01SQLA01 のコンピューターにホストされている場合、証明書の DNS 名は、LBDEN01SQLA01.contoso.com です。

  • 共通名 (CN): LBDEN01SQLA01.contoso.com
  • DNS 名: LBDEN01SQLA01.contoso.com
Service Fabric Server 証明書 この証明書を使用して、Service Fabric ノード間のノードからノードの通信を保護します。 これはクラスターに接続するクライアントに提示されるサーバー証明書としても使用されます。

この証明書については、 *.contoso.com などのドメイン用ワイルドカード SSL 証明書を使用することもできます。 (詳細については、このテーブルに続くテキストを参照してください。) それ以外の場合は、次の値を使用します。

  • CN: sf.d365ffo.onprem.contoso.com
  • DNS 名: sf.d365ffo.onprem.contoso.com
Service Fabric Client 証明書 クライアントはこの証明書を使用して Service Fabric cluster を表示および管理します。
  • CN: client.d365ffo.onprem.contoso.com
  • DNS 名: client.d365ffo.onprem.contoso.com
暗号化証明書 この証明書は、SQL Server パスワードとユーザー アカウントのパスワードなどの重要な情報を暗号化するために使用されます。

証明書は、Microsoft Enhanced Cryptographic Provider v1.0 プロバイダーを使用して作成する必要があります。

証明書キーの使用にはデータ暗号化 (10) が含まれている必要があり、サーバー認証またはクライアント認証は含めないでください。

詳細については、Service Fabric アプリケーションでの機密情報の管理 を参照してください。

  • CN: axdataenciphermentcert
  • DNS 名: axdataenciphermentcert
AOS SSL 証明書 この証明書は、AOS Web サイトに接続するクライアントに提示されるサーバー証明書として使用されます。 また、WCF (Windows Communication Foundation) / SOAP (Simple Object Access Protocol) 証明書を有効にするためにも使用されます。

Service Fabric サーバー証明書として使用したのと同じワイルドカード SSL 証明書を使用できます。 それ以外の場合は、次の値を使用します:

  • CN: ax.d365ffo.onprem.contoso.com
  • DNS 名: ax.d365ffo.onprem.contoso.com
セッション認証証明書 AOS はこの証明書を使用してユーザーのセッション情報を保護します。

この証明書は、Lifecycle Services からの展開時に使用されるファイル共有証明書です。

  • CN: SessionAuthentication
  • DNS 名: SessionAuthentication
データの暗号化証明書 AOS はこの証明書を使用して機密情報を暗号化します。
  • CN: DataEncryption
  • DNS 名: DataEncryption
データ署名の証明書 AOS はこの証明書を使用して機密情報に署名します。

この証明書は、データの暗号化証明書とは別のものです。

  • CN: DataSigning
  • DNS 名: DataSigning
Financial Reporting クライアント証明書 この証明書を使用して、Financial Reporting サービスと AOS 間の通信を保護します。
  • CN: FinancialReporting
  • DNS 名: FinancialReporting
報告証明書 この証明書を使用して、SSRS と AOS 間の通信を保護します。

重要: Financial Reporting クライアント証明書を再利用しないでください。

  • CN: ReportingService
  • DNS 名: ReportingService
SSRS Web サーバー証明書 この証明書は、SSRS Web サーバーに接続するクライアント (AOS) に提示されるサーバー証明書として使用されます。

証明書のドメイン名は SSRS ノードの SSRN と一致する必要があります。

  • CN: BI1.contoso.com
  • DNS 名: BI1.contoso.com
オンプレミス ローカル エージェント証明書

この証明書は、オンプレミスと Lifecycle Services でホストされているローカル エージェント間の通信を保護するのに役立ちます。 これにより、Microsoft Entra テナントに代わってローカル エージェントが動作し、Lifecycle Services と通信して展開を編成および監視することができます。

注記: テナントにはオンプレミス ローカル エージェント証明書が 1 つだけ必要です。

  • CN: OnPremLocalAgent
  • DNS 名: OnPremLocalAgent

ドメインのワイルドカード SSL 証明書を使用して、Service Fabric サーバー証明書と AOS SSL 証明書を結合できます。 以下は、AOS SSL 証明書と組み合わせた Service Fabric サーバー証明書の例です。

件名

CN = *.d365ffo.onprem.contoso.com

件名の代替名

DNS Name=ax.d365ffo.onprem.contoso.com
DNS Name=sf.d365ffo.onprem.contoso.com
DNS Name=*.d365ffo.onprem.contoso.com

重要

ワイルドカード証明書を使用して、発行先となるドメインの最初のレベル サブドメインのみをセキュリティ保護できます。 したがって、 *.onprem.contoso.com の証明書は ax.d365ffo.onprem.contoso.com では無効になります。

手順 3 ユーザーとサービス アカウントの計画

Finance + Operations (on-premises) を機能させるために、いくつかのユーザー アカウントまたはサービス アカウントを作成する必要があります。 gMSAs、ドメイン アカウント、および SQL アカウントの組み合わせを作成する必要があります。 次の表は、この記事で使用されるユーザー アカウント、その目的、および名前の例を示しています。

ユーザー アカウント 目的 ユーザー名
財務レポート アプリケーション サービス アカウント gMSA Contoso\svc-FRAS$
財務レポート プロセス サービス アカウント gMSA Contoso\svc-FRPS$
財務レポート クリック ワンス デザイナー サービス アカウント gMSA Contoso\svc-FRCO$
AOS サービス アカウント gMSA Contoso\svc-AXSF$
SSRS ブートストラッパー サービス アカウント gMSA レポート サービス ブートストラッパーは、このアカウントを使用して SSRS サービスをコンフィギュレーションします。 Contoso\svc-ReportSvc$
AOS サービス アカウント ドメイン アカウント このアカウントは、アプリケーション バージョン 10.0.20 以降、新しい配置で使用されなくなりました。* Contoso\AXServiceUser
AOS SQL DB 管理者ユーザー SQL ユーザー Finance + Operations (on-premises) は、このユーザーを使用して SQL Server を認証します**。 このユーザーは、今後のリリースで gMSA ユーザーにも置き換えられます***。 AXDBAdmin
ローカル配置エージェント サービス アカウント gMSA ローカル エージェントはこのアカウントを使用して、さまざまなノードでの展開を調整します。 Contoso\Svc-LocalAgent$
データ管理フレームワーク サービス アカウント gMSA Contoso\svc-DIXF$

* これらのアカウントでは、地域の設定を変更しないでください。 既定の EN-US (EN-US) リージョン設定が必要です。

** SQL ユーザーのパスワードに特殊文字が含まれている場合、展開中に問題が発生する場合があります。

*** SQL 認証の SQL ユーザー名とパスワードは、暗号化されてファイル共有に格納されているため、保護されています。

手順 4 DNS ゾーンの作成と A レコードの追加

DNS は AD DS と統合されており、ネットワーク内のリソースを整理、管理、検索することができます。 次の手順では、AOS ホスト名と Service Fabric Cluster の DNS 前方参照ゾーンと A レコードを作成する手順を示します。 この例では、DNS ゾーン名は d365ffo.onprem.contoso.com で、A レコード/ホスト名は次のとおりです。

  • AOS の機械の場合 ax.d365ffo.onprem.contoso.com
  • Service Fabric Cluster の場合 sf.d365ffo.onprem.contoso.com

DNS ゾーンの追加

  1. ドメイン コントローラー コンピューターにサインインして、スタートを選択します。 次に、dnsmgmt.msc を入力し dnsmgmt (DNS) アプリケーションを選択して、DNS マネージャーを開きます。
  2. コンソール ツリーでドメイン コントローラー名を長押し (または右クリック) し、新しいゾーン>次への順に選択します。
  3. プライマリ ゾーン を選択します。
  4. Active Directory にゾーンを保存 (DNS サーバーが書き込み可能なドメイン コントローラーの場合にのみ使用可能) が選択されたままの状態で、次へを選択します。
  5. このドメイン (Contoso.com) のドメイン コントローラーで実行されているすべての DNS サーバーに対して を選択し、次へ を選択します。
  6. 前方参照ゾーン を選択し、次へ を選択します。
  7. 設定するゾーン名を入力し、次へをクリックします。 たとえば、d365ffo.onprem.contoso.com と入力します。
  8. 動的更新を許可しない を選択し、次へ を選択します。
  9. 完了 を選択します。

AOS の A レコードを設定する

新しい DNS ゾーンで、AOSNodeType タイプの Service Fabric cluster ノードごとに、ax.d365ffo.onprem.contoso.com という名前の A レコードを 1 つ作成します。 他のノード タイプの A レコードは作成しないでください。

  1. DNS マネージャーの前方参照ゾーンフォルダーで、新しく作成したゾーンを検索します。
  2. 新しいゾーンを選択したまま (または右クリック) にしてから、新しいホストを選択します。
  3. Service Fabric ノードの 名前および IP アドレスを入力します。 (たとえば、ax を名前として、10.179.108.12 を IP アドレスとして入力します。) 次にホストの追加を選択します。
  4. 両方のチェックボックスをオフのままにします。
  5. 追加の AOS ノードごとに手順 1 から 4 を繰り返します。

Orchestrator の A レコードを設定する

新しい DNS ゾーンで、OrchestratorType タイプの Service Fabric Cluster ごとに、sf.d365ffo.onprem.contoso.com という名前の A レコードを 1 つ作成します。 他のノード タイプの A レコードは作成しないでください。

  1. 新しいゾーンを選択したまま (または右クリック) にしてから、新しいホストを選択します。
  2. Service Fabric ノードの 名前および IP アドレスを入力します。 (たとえば、sf を名前として、10.179.108.15 を IP アドレスとして入力します。) 次にホストの追加を選択します。
  3. 両方のチェックボックスをオフのままにします。
  4. 追加のオーケストレーター ノードごとに手順 1 から 3 を繰り返します。

手順 5 VM のドメインへの参加

各 VM をドメインに参加させるには、コンピューターをドメインに参加させるの手順を完了します。 または、次の Windows PowerShell スクリプトを使用します。

$domainName = Read-Host -Prompt 'Specify domain name (ex: contoso.com)'
Add-Computer -DomainName $domainName -Credential (Get-Credential -Message 'Enter domain credential')

重要

ドメインにそれらを結合させた後、VM を再起動する必要があります。

手順 6 セットアップ スクリプトを Lifecycle Services からダウンロードする

Microsoft ではセットアップ エクスペリエンスを向上させるためのスクリプトをいくつか紹介してきました。 インフラストラクチャ スクリプトをダウンロードするで、手順に従ってください。

重要

スクリプトは、オンプレミス インフラストラクチャと同じドメイン内のコンピューターから実行する必要があります。

手順 7 コンフィギュレーションの記述

インフラストラクチャのセットアップ スクリプトは、次のコンフィギュレーション ファイルを使用して設定を実行します。

  • infrastructure\ConfigTemplate.xml
  • infrastructure\D365FO-OP\NodeTopologyDefinition.xml
  • infrastructure\D365FO-OP\DatabaseTopologyDefinition.xml
  • infrastructure\D365FO-OP\FileShareTopologyDefinition.xml

重要

セットアップ スクリプトの正常に機能するように、環境のセットアップに基づいて、これらのコンフィギュレーション ファイルを適切なコンピュータ名、IP アドレス、サービス アカウント、およびドメインで更新する必要があります。

インフラストラクチャ スクリプトで使用可能な構成ファイルの詳細情報や構成ファイルに記入する詳細情報については、Finance + Operations (on-premises) の配置のインフラストラクチャ スクリプトの構成を参照してください。

手順 8 gMSAs の作成

  1. 管理者特権モードで Windows PowerShell を開き、ディレクトリをファイル共有のインフラストラクチャ フォルダーに変更して、次のコマンドを実行します。

    重要

    これらのコマンドでは、AxServiceUser ドメイン ユーザーを作成しません。 ユーザーが作成する必要があります。 このアカウントが必要となるのは、アプリケーション バージョン 10.0.20 以前の基本配置に対してのみです。

    .\Create-GMSAAccounts.ps1 -ConfigurationFilePath .\ConfigTemplate.xml
    
  2. アカウントまたはコンピューターを変更する必要がある場合は、ファイル共有のインフラストラクチャ フォルダーの ConfigTemplate.xml ファイルを更新してから、次のコマンドを実行します。

    .\Create-GMSAAccounts.ps1 -ConfigurationFilePath .\ConfigTemplate.xml -Update
    

手順 9 ファイル ストレージの設定

以下の SMB 3.0 ファイル共有を設定する必要があります。

  • AOS にアップロードされるユーザー ドキュメントを格納するファイル共有 (たとえば、\\LBDEN01FS01\aos-storage)

  • デプロイメントを調整するための最新のビルド ファイルと構成ファイルを保存するファイル共有 (たとえば、\\LBDEN01FS01\agent)

  • DMF のファイルを格納するファイル共有 (\\LBDEN01FS01\dixf-share など)

  • Service Fabric Cluster (たとえば、\\LBDEN01FS01\diagnostics-store など) の診断情報を格納するファイル共有

    警告

    共有に入れるファイルの最大パス長を超えないように、このファイル共有パスはできるだけ短くしておいてください。

SMB 3.0 を有効にする方法については、SMB セキュリティの強化 を参照してください。

重要

  • セキュリティで保護されたダイアレクト ネゴシエーションでは、SMB 2.0 または 3.0 から SMB 1.0 へのダウングレードを検出または防止できません。 したがって、SMB 1.0 サーバーを無効にすることを強くお勧めします。 これにより、SMB 暗号化のすべての機能を利用できます。 SMB 1.0 を無効にする方法については、Windows で SMBv1、SMBv2、および SMBv3 を検出、有効化、および無効化する方法 を参照してください。
  • 環境内の残りの部分でデータが保護されていることを保証するために、BitLocker ドライブ暗号化をすべてのコンピューターで有効にする必要があります。 BitLocker を有効にする方法については、BitLocker: Windows Server 2012 以降で配置する方法 を参照してください。
  1. ファイル共有マシンで、次のコマンドを実行します。

    Install-WindowsFeature -Name FS-FileServer -IncludeAllSubFeature -IncludeManagementTools
    
  2. 既定の共有名と基本パスを変更する場合は、ConfigTemplate.xmlFileShares セクションを更新します。

  3. 次のスクリプトを実行してファイル共有を作成します。

    .\New-FileShares.ps1 -ConfigurationFilePath .\ConfigTemplate.xml
    
  4. 次のスクリプトを実行して、各ファイル共有に必要なコンフィギュレーションおよびアクセス許可を適用します。

    .\Configure-FileShares.ps1 -ConfigurationFilePath .\ConfigTemplate.xml
    
  5. 次のスクリプトを実行して、必要なアクセス許可およびコンフィギュレーションが各ファイル共有に適用されていることを確認します。

    .\Test-FileShares.ps1 -ConfigurationFilePath .\ConfigTemplate.xml
    

手順 10 SQL Server の設定

  1. サンドボックス環境に配置する場合を除き、高可用性を備えた SQL Server をインストールします。 この場合は、SQL Server のインスタンスが 1 つで十分です。 (ただし、高可用性シナリオをテストするため、サンドボックス環境に高可用性を備えた SQL Server をインストールすることもできます。)

    重要

    名前の付いたインスタンスの使用は避けてください。 名前の付いたインスタンスを使用すると、ドキュメントとスクリプトが既定のインスタンスを使用していると想定するため問題が発生する場合があります。

    SQL Server および Windows 認証モード を有効にする必要があります。

    高可用性を備えた SQL Server を、ストレージ エリア ネットワーク (SAN) を含む SQL Server クラスターまたは Always-On 構成のいずれかとしてインストールすることができます。 データベース エンジン、フルテキスト検索、および SQL Server management tools がインストール済みであることを確認します。

    メモ

    Always On が初期データ同期ページの選択 (可用性グループ ウィザードで常に使用する) で説明されているとおりに設定され、セカンダリ データベースを手動で準備するの指示に従っていることを確認します。

  2. ドメイン ユーザーまたは gMSA のいずれかとして SQL サービスを実行します。

  3. ConfigTemplate.xml ファイルで、SQL Server クラスター コンフィギュレーションを入力します。 SQL Server クラスターを作成している場合、各マシンの名前と、可用性グループのリスナー名を一緒に指定します。 クラスターの代わりに 1 つのインスタンスを作成している場合、マシンの名前は指定しますが、リスナー名は空白のままにします。 SQL Server クラスター/インスタンスの証明書をスクリプトで生成したくない場合は、SQLCert タイプの証明書に関して disabled 属性を true に設定します。

手順 11 証明書の構成

  1. リモート サーバー管理ツールがインストールされているマシンに移動するか、ドメイン コントローラーに移動します。

  2. Windows PowerShell を開き、インフラストラクチャ フォルダーを含むファイル共有に移動します。

  3. 証明書を生成します。

    1. 証明書を生成する必要がある場合は、次のコマンドを実行します。 これらのコマンドは AD CS で証明書テンプレートを作成し、テンプレートから証明書を生成して、マシンの LocalMachine\My 証明書ストアに格納してから、XML ファイルのサムプリントを更新します。

      # If you must create self-signed certs, set the generateSelfSignedCert attribute to true.
      #.\New-SelfSignedCertificates.ps1 -ConfigurationFilePath .\ConfigTemplate.xml
      
      .\New-ADCSCertificates.ps1 -ConfigurationFilePath .\ConfigTemplate.xml -CreateTemplates
      .\New-ADCSCertificates.ps1 -ConfigurationFilePath .\ConfigTemplate.xml
      
    2. 証明書を再利用する必要があるため、証明書を生成する必要がない場合は、ConfigTemplate.xml ファイルで generateADCSCert 属性を false に設定します。

  4. 以前に生成されている SSL 証明書を使用している場合は、証明書生成をスキップし、ConfigTemplate.xml ファイルのサムプリントを更新します。 証明書は、CurrentUser\My または LocalMachine\My 証明書店舗でインストールできます。 また、プライベート キーはエクスポート可能でなければなりません。

    警告

    Windows Server 2016 では、特定するのが難しい先頭の印刷不可能な特殊文字があるため、証明書管理ツール (certlm.msc) を使用してサムプリントをコピーしないでください。 印刷できない特殊文字が存在する場合、「X509 証明書が無効です」というエラー メッセージが表示されます。 拇印を取得するには、Windows PowerShell コマンドの結果を確認するか、Windows PowerShell で次のコマンドを実行します。

    dir cert:\CurrentUser\My
    dir cert:\LocalMachine\My
    dir cert:\LocalMachine\Root
    
  5. 各証明書の ProtectTo フィールドで、Active Directory ユーザーまたはグループのセミコロンで区切られた一覧を指定します。 ProtectTo フィールドで指定されたユーザーとグループのみに、スクリプトを使用してエクスポートされる証明書をインポートするアクセス許可があります。 エクスポートした証明書を保護するため、スクリプトではパスワードがサポートされていません。

  6. 証明書を .pfx ファイルにエクスポートします。 エクスポート プロセスの一環として、次のコマンドは、証明書に正しい暗号化プロバイダが設定されているかどうかをチェックします。

    # Exports certificates into a directory VMs\<VMName>. All the certs are written to the infrastructure\Certs folder.
    .\Export-Certificates.ps1 -ConfigurationFilePath .\ConfigTemplate.xml
    

手順 12 SSIS の設定

データ管理と SSIS ワークロードを有効にするには、SSIS を少なくとも 2 つのノード (環境がサンドボックス環境の場合は少なくとも 1 つ) にインストールする必要があります。 この手順は、DMF サービスが実行される場合に必要です。

重要

アプリケーション バージョン 10.0.32 よりも古い基本トポロジで配置された環境では、すべての AOS ノードに SSIS をインストールする必要があります。 さらに、DMF サービスは使用できなくなり、データ管理操作は AOS によって実行されます。

DMF サービスを構成する方法については、専用のデータ管理フレームワーク サービスを使用した環境の構成を参照してください。

  1. SSIS が必要な VM を決定したら、マシンが SQL インストールにアクセスできることを確認し、SQL 設定 ウィザードを開きます。
  2. 機能の選択ページの機能ウィンドウで、Integration Services および SQL クライアント接続 SDK のチェックボックスをオンにします。
  3. セットアップを完了し、インストールが正常に完了したことを確認します。

詳細については、統合サービス (SSIS) のインストールを参照してください。

手順 13 SSRS の設定

複数の SSRS ノードを構成できます。 詳細については、SSRS ノードの高可用性の構成を参照してください。

  1. 開始する前に、この記事の冒頭に記載されている前提条件 が満たされていることを確認します。

    重要

    • SSRS のインストール時にデータベース エンジンをインストールする必要があります。
    • SSRS インスタンスを構成しないでください。 レポート サービスは、すべてを自動的に構成されます。
    • データべース エンジンか SSRS サービスを設定するときは、名前の付いたインスタンスを 使用しないでください
    • 次の手順は、プラットフォーム更新プログラム 41 より古い基準トポロジで展開された環境では必要ありません。 このような環境では、オンプレミス配置の SQL Server Reporing Services のコンフィギュレーションの情報に従って SSSR を手動で構成する必要があります。
  2. 各 BI ノードについては、次の手順を実行します。

    1. 管理者特権モードで Windows PowerShell を開き、ファイル共有のインフラストラクチャ フォルダーに移動します。

    2. 次のコマンドを実行します。

      .\Initialize-Database.ps1 -ConfigurationFilePath .\ConfigTemplate.xml -ComponentName BI
      .\Configure-Database.ps1 -ConfigurationFilePath .\ConfigTemplate.xml -ComponentName BI
      

      Initialize-Database.ps1 スクリプトは、gMSA を次のデータベースおよびロールにマップします。

      ユーザー データベース データベース ロール
      svc-ReportSvc$ マスター db_owner
      svc-ReportSvc$ msdb db_datareader, db_datawriter, db_securityadmin

      Configure-Database.ps1 スクリプトは、以下のアクションを実行します:

      • CREATE ANY DATABASE 権限を [contoso\svc-ReportSvc$] に付与します。

    ノート

    これらのスクリプトは SSRS を構成 できません。 配置中に、そのノードに配置された Service Fabric サービス (ReportingService) によって SSRS が構成されます。 代わりに、これらのスクリプトは、Service Fabric サービス (ReportingService) が必要な構成を実行するために必要なアクセス許可を付与します。

手順 14 VMs の設定

  1. 管理者特権モードで Windows PowerShell を開き、ファイル共有のインフラストラクチャ フォルダーに移動します。

    # Exports the script files to be executed on each VM into a directory VMs\<VMName>.
    # .\Export-Scripts.ps1 -ConfigurationFilePath .\ConfigTemplate.xml -D365FOVersion "10.0.17"
    .\Export-Scripts.ps1 -ConfigurationFilePath .\ConfigTemplate.xml -D365FOVersion "<Version of Dynamics 365 that you will deploy>"
    

    ノート

    このスクリプトは、配置する Finance + Operations (on-premises) のバージョンによって、異なるバージョンのインストールや要求を行います。 配置するアプリケーションのバージョンを指定して、スクリプトがそのバージョンの環境を正しく構成できるようにします。 プラットフォーム更新 41 を適用したアプリケーション バージョン 10.0.17 を配置する場合は、D365FOVersion パラメータに 10.0.17 を指定する必要があります。

  2. 次の Microsoft Windows インストーラー (MSI) を全ての VM によりアクセスできるファイル共有にダウンロードします。 たとえば、インフラストラクチャ フォルダーを格納する場所と同じファイル共有を使用します。

    コンポーネント リンクのダウンロード 必要なファイル名 以降で必要 以降で不要
    SNAC – ODBC ドライバー 13 ODBC ドライバー 13.1 Msodbcsql .msi 10.0.0 該当なし
    SNAC – ODBC ドライバー 17.5.x ODBC ドライバー 17.5.2 msodbcsql_17_5.msi 10.0.17 適用できません
    SQL Server Management Studio 18.x SSMS 18.x SSMS-Setup-18-ENU.exe 10.0.31 該当なし
    Microsoft Visual Studio 2013 用 Visual C++ 再頒布可能パッケージ Visual C++ 2013 および Visual C++ 再頒布可能パッケージの更新 vcredist_x64.exe 10.0.0 該当なし
    Microsoft Visual C++ 2015-2019 再頒布可能パッケージ 結合された Visual C++ vc_redist.x64_1519.exe 10.0.17 10.0.30
    Microsoft Visual C++ 2015-2022 再頒布可能パッケージ 結合された Visual C++ vc_redist.x64_1522.exe 10.0.31 適用できません
    Access データベース エンジン 2016 再頒布可能パッケージ Microsoft Access データベース エンジン 2016 再頒布可能パッケージ AccessDatabaseEngine_x64_2016.exe 10.0.32 該当なし
    .NET Framework version 4.8 (CLR 4.0) .NET Framework 4.8 オフライン インストーラー ndp48-x86-x64-allos-enu.exe 10.0.0 該当なし
    .NET Framework version 4.7.2 (CLR 4.0) .NET Framework 4.7.2 オフライン インストーラー ndp472-x86-x64-allos-enu.exe 10.0.0 該当なし

重要

  • Management Studio の設定が 英語 (米国) であることを確認してください。
  • 前の表の "必要なファイル名" 列に指定されている名前がインストーラ ファイルに設定されていることを確認してください。 予期した名前がないファイルの名前を変更します。 そうしないと、Configure-PreReq.ps1 スクリプトの実行時にエラーが発生します。

次に、各 VM についてこれらのステップに従うか、または単一のコンピューターからリモート処理を使用します。

メモ

  • 次の手順では、複数の VM での実行が必要です。 ただし、プロセスを簡略化するために、提供されるリモート処理スクリプトを使用できます。 これらのスクリプトを使用すると、.\Export-Scripts.ps1 コマンドの実行に使用されるのと同じコンピューターなど、単一のコンピューターから必要なスクリプトを実行できます。 リモート処理スクリプトが利用可能な場合、Windows PowerShell セクションの # If Remoting コメントの後に宣言されます。 リモート処理スクリプトを使用する場合、セクション内の残りのスクリプトを実行する必要がない可能性があります。 この場合は、セクション テキストを参照してください。
  • リモート処理では WinRM を使用します。 場合によっては、CredSSP を有効にする必要があります。 リモート処理モジュールでは、実行ごとに CredSSP を有効または無効にします。 使用しない場合は、CredSSP を無効にすることをお勧めします。 そうしないと、資格情報の盗難リスクが伴います。 設定が完了したら、この記事後半のリモート処理が使用されたら、CredSSP を終了処理する セクションを参照してください。
  1. infrastructure\VMs\<VMName> フォルダーの内容を、対応する VM にコピーします。 (リモート処理スクリプトを使用している場合は、コンテンツが自動的に対象の VM にコピーされます。) 続いて、次のコマンドを管理者として実行します。

    # Install prereq software on the VMs.
    
    # If remoting, execute
    # .\Configure-PreReqs-AllVMs.ps1 -MSIFilePath <share folder path of the MSIs> -ConfigurationFilePath .\ConfigTemplate.xml
    
    .\Configure-PreReqs.ps1 -MSIFilePath <path of the MSIs>
    

    重要

    • 再起動するように求められるたびにコンピューターを再起動します。 すべての前提条件がインストールされるまでは、各再起動後に .\Configure-PreReqs.ps1 コマンドを必ず再実行してください。 リモート処理の場合、すべてのコンピューターがオンラインに戻ったときに AllVM スクリプトを再実行します。
    • リモート処理スクリプトを使用する場合は、現在のユーザーが MSI が配置されているファイル共有フォルダーにアクセスできることを確認してください。 さらに、ユーザーが AOSNodeTypeMRTypeReportServerType タイプのコンピューターにアクセスしていないことを確認してください。 そうしないと、ユーザーがログインしている理由によって、リモート処理スクリプトがコンピューターの再起動に失敗します。
  2. 次のコマンドを実行して VM 設定を完了します。

    # If remoting, execute
    # .\Complete-PreReqs-AllVMs.ps1 -ConfigurationFilePath .\ConfigTemplate.xml
    
    .\Complete-PreReqs.ps1
    
  3. 次のコマンドを実行して VM 設定を検証します。

    # If Remoting, execute
    # .\Test-D365FOConfiguration-AllVMs.ps1 -ConfigurationFilePath .\ConfigTemplate.xml
    
    .\Test-D365FOConfiguration.ps1 
    

重要

リモート処理を使用していた場合は、設定の完了後にクリーンアップ手順を実行します。 手順については、この記事の後半にある リモート処理が使用されたら、CredSSP の破棄セクションを参照してください。

手順 15 スタンドアロン Service Fabric クラスターの設定

  1. Service Fabric スタンドアロン インストール パッケージ を Service Fabric ノードのいずれかにダウンロードします。

  2. zip ファイルをダウンロードした後、ファイルを選択したまま (または右クリック) にしてから、プロパティを選択します。 プロパティ ダイアログ ボックスで、ブロック解除チェックボックスを選択します。

  3. ZIP ファイルを Service Fabric クラスター内のいずれかのノードにコピーし、解凍します。 インフラストラクチャ フォルダーが、このフォルダーにアクセスすることを確認します。

  4. インフラストラクチャ フォルダーに移動し、次のコマンドを実行して Service Fabric ClusterConfig.json ファイルを生成します。

    .\New-SFClusterConfig.ps1 -ConfigurationFilePath .\ConfigTemplate.xml -TemplateConfig <ServiceFabricStandaloneInstallerPath>\ClusterConfig.X509.MultiMachine.json
    
  5. 環境に基づいて、クラスター コンフィギュレーションへの追加の変更が必要な場合があります。 詳細については、手順 1B: 複数のマシンでクラスターを作成するX.509 証明書を使用して Windows スタンドアロン クラスターを保護する、および Windows Server で実行されているスタンドアロン クラスターを作成するを参照してください。

  6. 生成された ClusterConfig.json ファイルを <ServiceFabricStandaloneInstallerPath> にコピーします。

  7. 管理者特権モードで Windows PowerShell を開き、<ServiceFabricStandaloneInstallerPath> に移動して、次のコマンドを実行して ClusterConfig.go ファイルをテストします。

    .\TestConfiguration.ps1 -ClusterConfigFilePath .\ClusterConfig.json
    
  8. テストが成功した場合は、次のコマンドを実行してクラスターを展開します。

    # If using offline (internet-disconnected) install
    # .\CreateServiceFabricCluster.ps1 -ClusterConfigFilePath .\ClusterConfig.json -FabricRuntimePackagePath <Path to MicrosoftAzureServiceFabric.cab download>
    
    .\CreateServiceFabricCluster.ps1 -ClusterConfigFilePath .\ClusterConfig.json
    
  9. クラスターが作成された後、任意のクライアント コンピューターで Service Fabric Explorer を開き、インストールを検証します。

    1. まだインストールされていない場合、CurrentUser\My 証明書ストアで Service Fabric クライアント証明書をインストールします。
    2. Internet Explorer で、ツール (ギヤ記号) を選択してから、互換性表示の設定を選択します。 互換性表示でイントラネット サイトを表示するチェックボックスをオフにします。
    3. https://sf.d365ffo.onprem.contoso.com:19080 に移動します。sf.d365ffo.onprem.contoso.com は、ゾーンで指定されている Service Fabric Cluster のホスト名です。 DNS 名前解決が設定されていない場合は、マシンの IP アドレスを使用します。
    4. クライアントの証明書を選択します。 Service Fabric Explorer ページが表示されます。
    5. すべてのノードが緑で表示されることを確認します。

    重要

    • クライアント コンピューターがサーバー コンピューター (たとえば、Windows Server 2019 を実行しているコンピューター) である場合は、Service Fabric Explorer ページにアクセスするときに Internet Explorer のセキュリティ強化の構成をオフにする必要があります。
    • 任意のウィルス対策ソフトウェアをインストールする場合は、除外を設定してください。 Service Fabric ドキュメントのガイダンスに従ってください。

手順 16 テナント用 Lifecycle Services 接続を構成する

オンプレミスのローカル エージェントは、Lifecycle Services を通じて Finance + Operations (on-premises) の展開とサービスを調整するために使用されます。 Lifecycle Services から Finance + Operations (on-premises) テナントへの接続を確立するには、Microsoft Entra テナント (たとえば、contoso.onmicrosoft.com) の代わりに動作するローカル エージェントを可能にする証明書をコンフィギュレーションする必要があります。

CA から取得したオンプレミス エージェントの証明書またはスクリプトを使用して生成した自己署名証明書を使用します。 オンプレミス エージェント証明書は、テナントごとに複数のサンドボックス環境および運用環境で再利用できます。

グローバル管理者ディレクトリの役割を持つユーザー アカウントだけが、Lifecycle Services を承認するための証明書を追加できます。 既定では、組織の Microsoft 365 にサインアップする担当者が、ディレクトリのグローバル管理者です。

重要

  • テナントごとに証明書を正確に 1 回構成する必要があります。 同じ環境のすべてのオンプレミス環境では、同じ証明書を使用して Lifecycle Services に接続できます。
  • サーバー コンピューター ( Windows Server 2019 を実行しているコンピューターなど) で以下のスクリプトを実行する場合は、Internet Explorer セキュリティ強化の構成を一時的にオフにする必要があります。 そうしないと、Azure のサインイン ページのコンテンツがブロックされます。
  1. 顧客の Azure ポータルにサインインして、グローバル管理者ディレクトリの役割があることを確認します。

  2. 次のコマンドをインフラストラクチャ フォルダーから実行して、証明書が既に登録されているかどうかを確認します。

    # If you have issues downloading the Azure PowerShell Az module, run the following:
    # [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
    
    Install-Module Az -RequiredVersion 7.4.0
    .\Add-CertToServicePrincipal.ps1 -CertificateThumbprint 'OnPremLocalAgent Certificate Thumbprint' -Test
    

    重要

    既に AzureRM をインストールしている場合は、Windows PowerShell 5.1 の既存の AzureRM インストールとの互換性がない可能性があるため、削除してください。 詳細については、Azure PowerShell を AzureRM から Az に移行するを参照してください。

  3. 証明書が登録されていないことをスクリプトが示している場合は、次のコマンドを実行します。

    .\Add-CertToServicePrincipal.ps1 -CertificateThumbprint 'OnPremLocalAgent Certificate Thumbprint'
    

メモ

ログイン アカウントに関連付けられた複数のテナントがある場合、次のコマンドを実行してテナント ID をパラメーターとして渡すことができます。 これにより、コンテキストが正しいテナントに設定されていることを確認できます。

.\Add-CertToServicePrincipal.ps1 -CertificateThumbprint 'OnPremLocalAgent Certificate Thumbprint' -TenantId 'xxxx-xxxx-xxxx-xxxx'

手順 17 SQL Server 証明書をコンフィギュレーションする

Finance + Operations (on-premises) 向けに SQL Server を構成するために CA から SSL 証明書を取得します。 既定では、前の手順で AD CS または自己署名証明書が生成されました。

メモ

パブリック CA に証明書を発注する場合、証明書のサブジェクト代替名が SQL 可用性グループの各ノード/インスタンスの FQDN と一致している必要があります。

スクリプトを使用して、常時稼働の SQL 可用性グループまたはインスタンスに証明書を展開する

次のスクリプトは、次のセクションで説明する手動プロセスの手順を自動化するものです。 リモートを使用してしない場合は、SQL Server マシンに接続し、管理者特権で Windows PowerShell を開きます。 その後、ファイル共有のインフラストラクチャ フォルダーに移動し、次のコマンドを実行します。 各ノードに関する、これらの手順を完了します。

# If Remoting, execute
#.\Configure-SQLCert-AllVMs.ps1 -ConfigurationFilePath .\ConfigTemplate.xml

.\Configure-SQLCert.ps1 -PfxCertificatePath ".\Certs\SQL1.contoso.com.pfx"

次のコマンドを実行することで、すべてが正しく構成されていることを確認できます。

# If Remoting, execute
#.\Configure-SQLCert-AllVMs.ps1 -ConfigurationFilePath .\ConfigTemplate.xml -Test

.\Configure-SQLCert.ps1 -PfxCertificatePath ".\Certs\SQL1.contoso.com.pfx" -Test

常時稼働の SQL 可用性グループまたはインスタンスの証明書を手動で構成する

  1. インフラストラクチャ フォルダーには、Certs という名前のフォルダーを含める必要があります。 このフォルダーで、自身の証明書がある .pfx ファイルを検索します。

  2. SQL Server クラスターの各ノードに対して、次の手順を実行します:

    1. 生成した .pfx fファイルをノードにコピーし、LocalMachine 店舗に証明書をインポートします。

    2. SQL サービスを実行するために使用されるアカウントに証明書のアクセス許可を付与します。

      1. 証明書管理ツール (certlm.msc) を開きます。
      2. 作成した証明書を選択したまま (または右クリック) してから、タスク>秘密キーの管理をクリックします。
      3. SQL Server サービス アカウントを追加し、読み取りアクセスを許可します。
    3. SQL Server 構成マネージャーで ForceEncryption と新しい証明書を有効にします。

      1. SQL Server 構成マネージャーを開き、SQL Server ネットワーク構成を展開し、[サーバー インスタンス] 用プロトコルを選択したまま (または右クリック) にしてから、プロパティを選択します。
      2. プロトコル ダイアログ ボックスの、証明書タブの、証明書フィールドで、目的の証明書を選択します。
      3. フラグ タブの ForceEncryption ボックスで、はいを選択します。
      4. OK を選択して変更を保存します。
    4. SQL サービスを再起動します。

  3. 自己署名証明書を使用した場合、証明書 (.cer ファイル) をエクスポートし、各 Service Fabric ノードの信頼されたルートにインストールします。 SQL Server クラスター内の全ノードに対して、証明書は 1 つのみです。

重要

リモート処理を使用していた場合は、設定の完了後にクリーンアップ手順を実行します。 手順については、この記事の後半にある リモート処理が使用されたら、CredSSP の破棄セクションを参照してください。

手順 18 データベースを構成する

  1. Lifecycle Services にサインインします。

  2. ダッシュボードで、共有アセット ライブラリタイルを選択します。

  3. 資産タイプとしてモデルを選択します。 次にグリッドで、必要なリリースのデータ タイプを選択し、zip ファイルをダウンロードします。

    リリース データベース
    バージョン 10.0.39 Microsoft Dynamics 365 Finance + Operations (on-premises)、バージョン 10.0.39 デモ データ
    バージョン 10.0.39 Microsoft Dynamics 365 Finance + Operations (on-premises)、バージョン 10.0.39 空データ
    バージョン 10.0.38 Microsoft Dynamics 365 Finance + Operations (on-premises)、バージョン 10.0.38 デモ データ
    バージョン 10.0.38 Microsoft Dynamics 365 Finance + Operations (on-premises)、バージョン 10.0.38 空データ
    バージョン 10.0.35 Microsoft Dynamics 365 Finance + Operations (on-premises)、バージョン 10.0.35 デモ データ
    バージョン 10.0.35 Microsoft Dynamics 365 Finance + Operations (on-premises)、バージョン 10.0.35 空データ
    バージョン 10.0.32 Microsoft Dynamics 365 Finance + Operations (on-premises)、バージョン 10.0.32 デモ データ
    バージョン 10.0.32 Microsoft Dynamics 365 Finance + Operations (on-premises)、バージョン 10.0.32 空データ
  4. zip ファイルには、単一のバックアップ (.bak) ファイルが含まれます。 必要に応じて、ダウンロードするファイルを選択します。

  5. zip ファイルのダウンロード後、そのファイルがブロックされていないことを確認します。 ファイルを選択したまま (または右クリック) にしてから、プロパティを選択します。 プロパティ ダイアログ ボックスで、ブロック解除チェックボックスを選択します。

  6. infrastructure\ConfigTempate.xml ファイルのデータベース セクションが、次の情報と共に正しく構成されているか確認します。

    • データベース名。
    • データベース ファイルとログ設定。 データベース設定は、指定された既定値以上にする必要があります。
    • 以前にダウンロードしたバックアップ ファイルのパス。 Finance + Operations (on-premises) データベースの既定の名前は AXDB です。

    重要

    • SQL サービスを実行しているユーザーとスクリプトを実行しているユーザーは、バックアップ ファイルが格納されているフォルダーまたは共有に対して読み取りアクセス権を持っている必要があります。
    • 既に既存のデータベースの名前が同じである場合は、上書きされません。
  7. SQL Server クラスター内のマシンに接続します。 次に、管理者特権モードで Windows PowerShell を開き、ファイル共有のインフラストラクチャ フォルダーに移動します。

OrchestratorData データベースのコンフィギュレーション

  • 次のコマンドを実行します。

    .\Initialize-Database.ps1 -ConfigurationFilePath .\ConfigTemplate.xml -ComponentName Orchestrator
    

    Initialize-Database.ps1 スクリプトは、以下の処理を行います:

    1. OrchestratorData という名前の空のデータベースを作成します。 このデータベースは、オンプレミスのローカル エージェントによって配置を調整するために使用されます。
    2. データベースに対する db_owner アクセス許可をローカル エージェント gMSA (svc-LocalAgent$) に付与します。

Finance + Operations (on-premises) データベースの構成

  1. 次のコマンドを実行します。

    .\Initialize-Database.ps1 -ConfigurationFilePath .\ConfigTemplate.xml -ComponentName AOS
    .\Configure-Database.ps1 -ConfigurationFilePath .\ConfigTemplate.xml -ComponentName AOS
    

    Initialize-Database.ps1 スクリプトは、以下の処理を行います:

    1. 指定されたバックアップ ファイルからデータベースを復元します。

    2. SQL 認証が有効になっている新しいユーザーを作成します (axdbadmin)。

    3. AXDB データベースの次の表に基づいて、データベース ロールにユーザーをマップします。

      ユーザー データベース ロール
      svc-AXSF$ gMSA db_owner
      svc-LocalAgent$ gMSA db_owner
      svc-FRPS$ gMSA db_owner
      svc-FRAS$ gMSA db_owner
      axdbadmin SqlUser db_owner
    4. TempD データベースの次の表に基づいて、データベース ロールにユーザーをマップします。

      ユーザー データベース ロール
      svc-AXSF$ gMSA db_datareader, db_datawriter, db_ddladmin
      axdbadmin SqlUser db_datareader, db_datawriter, db_ddladmin

    Configure-Database.ps1 スクリプトは、以下の処理を行います:

    1. READ_COMMITTED_SNAPSHOTオンに設定します。
    2. ALLOW_SNAPSHOT_ISOLATIONオンに設定します。
    3. 指定したデータベースファイル と ログの設定を行います。
    4. VIEW SERVER STATE 権限を axdbadmin に付与します。
    5. ALTER ANY EVENT SESSION 権限を axdbadmin に付与します。
    6. VIEW SERVER STATE 権限を [contoso\svc-AXSF$] に付与します。
    7. ALTER ANY EVENT SESSION 権限を [contoso\svc-AXSF$] に付与します。
  2. データベース ユーザーをリセットするには、次のコマンドを実行します。

    .\Reset-DatabaseUsers.ps1 -DatabaseServer '<FQDN of the SQL server>' -DatabaseName '<AX database name>'
    

財務レポート データベースのコンフィギュレーション

  • 次のコマンドを実行します。

    .\Initialize-Database.ps1 -ConfigurationFilePath .\ConfigTemplate.xml -ComponentName MR
    

    Initialize-Database.ps1 スクリプトは、以下の処理を行います:

    1. FinancialReporting という名前の空のデータベースを作成します。

    2. 次の表に基づいて、データベース ロールにユーザーをマップします。

      ユーザー データベース ロール
      svc-LocalAgent$ gMSA db_owner
      svc-FRPS$ gMSA db_owner
      svc-FRAS$ gMSA db_owner

手順 19 資格情報の暗号化

  1. インフラストラクチャ フォルダーを AOS ノードにコピーします。

  2. 次のコマンドを実行して、Credentials.json ファイルを作成します。

    .\Configure-CredentialsJson.ps1 -ConfigurationFilePath .\ConfigTemplate.xml -Action Create
    

    スクリプトにより、いくつかの資格情報を入力するように求められます。

    • AccountPassword – AOS ドメインユーザー (contoso\axserviceuser) の暗号化されたドメイン ユーザー パスワード。 ドメイン ユーザーの代わりに gMSA が使用される最新の基本配置を使用して配置する場合は、このプロンプトはスキップされます。 ただし、インストーラーはプレースホルダー値を検索するため、スクリプトはプレースホルダー値を作成します。 Microsoftは、将来の更新でこの問題に対処する予定です。
    • SqlUser – Finance + Operations (on-premises) データベース (AXDB) にアクセス権限が付与されている暗号化された SQL ユーザー (axdbadmin)。
    • SqlPassword – 暗号化された SQL パスワード。

    ノート

    スクリプトは、Credentials.json ファイルを SMB ファイル共有 (\\AX7SQLAOFILE1\agent\Credentials\Credentials.json) に自動的に配置します。

    スクリプトは、エンティティ格納機能に必要な資格情報を要求しますが、この要求はスキップできます。 詳細については、オンプレミス環境との PowerBI.com の統合 を参照してください。

手順 20 AD FS のコンフィギュレーション

この手順を完了する前に、AD FS を Windows Server に展開する必要があります。 AD FS を展開する方法については、Windows Server 2016 配置ガイドおよび 2012 R2 AD FS 配置ガイド を参照してください。

Finance + Operations (on-premises) では、既定で標準のコンフィギュレーション以外の、AD FS の追加のコンフィギュレーションが必要です。 以下の Windows PowerShell コマンドを、AD FS ロール サービスがインストールされているマシン上で実行する必要があります。 ユーザー アカウントには、AD FS を管理するための十分なアクセス許可が必要です。 たとえば、ユーザーには、ドメイン管理者アカウントが必要です。 複雑な AD FS シナリオでは、ドメイン管理者に問い合わせてください。

  1. AD FS 識別子を構成して、AD FS トークン発行者と一致するようにします。

    このコマンドは、Finance + Operations (on-premises) クライアントのユーザー ページ (システム管理>ユーザー>ユーザー) でのユーザーをインポートするオプションの使用による新しいユーザーの追加に関連しています。

    $adfsProperties = Get-AdfsProperties
    Set-AdfsProperties -Identifier $adfsProperties.IdTokenIssuer
    

    警告

    AD FS がシングル サインオン用 Microsoft 365 (旧 Office 365) と連携するように設定されている場合、この手順はシナリオを壊す可能性があります。 AD FS Microsoft 365 互換性の配置オプションを使用する場合は、上記のコマンドを実行しないでください。

    シナリオが引き続き機能するには、展開オプションを指定して、Dynamics 365 for Finance + Operations (on-premises) インストールをその要件に合わせることができます。 詳細については、AD FS Microsoft 365 互換性 を参照してください。

  2. 混在環境用に AD FS を構成していない限り、イントラネット認証接続用に Windows 統合認証 (WIA) を無効にする必要があります。 WIA を AD FS で使用できるように構成する方法の詳細については、AD FS で Windows 統合認証 (WIA) を使用するようにブラウザを構成する を参照してください。

    このコマンドは、Finance + Operations (on-premises) クライアントへのサインイン時のフォーム認証の使用に関連しています。 シングル サインインなどの他のオプションはサポートされていません。

    Set-AdfsGlobalAuthenticationPolicy -PrimaryIntranetAuthenticationProvider FormsAuthentication, MicrosoftPassportAuthentication
    
  3. サインインの場合、ユーザーの電子メール アドレスは許容される認証入力でなければなりません。

    このコマンドは、電子メール要求の設定に関連しています。 変換ルールなど、他のオプションも利用できる場合がありますが、追加の設定が必要です。

    Add-Type -AssemblyName System.Net
    $fqdn = ([System.Net.Dns]::GetHostEntry('localhost').HostName).ToLower()
    $domainName = $fqdn.Substring($fqdn.IndexOf('.')+1)
    Set-AdfsClaimsProviderTrust -TargetIdentifier 'AD AUTHORITY' -AlternateLoginID mail -LookupForests $domainName
    
  4. Office アドインを使用してサインインするには、クロス オリジン リソース共有 (CORS) ヘッダーを有効にする必要があります。

    Set-AdfsResponseHeaders -EnableCORS $true
    Set-AdfsResponseHeaders -CORSTrustedOrigins https://az689774.vo.msecnd.net
    

    メモ

    これらのコマンドは、Windows Server 2019 以降が稼働する AD FS サーバーでのみ実行できます。 Windows Server 2016 の AD FS は廃止されました。 詳細については、Microsoft Dynamics 365 Finance + Operations (on-premises) サポート ソフトウェアを参照してください。

  5. 設定が正しく適用されるように、AD FS サービスを再起動します。

AD FS が認証を交換するために Finance + Operations (on-premises) を信頼できるようにするには、AD FS で AD FS アプリケーション グループの下にさまざまなアプリケーション エントリを登録する必要があります。 設定プロセスをスピードアップしてエラーを減らすために、Publish-ADFSApplicationGroup.ps1 スクリプトを使用して登録します。 AD FS を管理するための十分なアクセス許可を持つユーザー アカウントを使用してスクリプトを実行します (たとえば、管理者アカウント。)

スクリプトの使用方法の詳細については、スクリプトに記載されているドキュメントを参照してください。 後の Lifecycle Services でこの情報が必要となるため、出力に指定されているクライアント ID を書き留めておいてください。 クライアント ID を失った場合は、AD FS がインストールされているコンピューターにサインインし、サーバー マネージャーを開き、ツール>AD FS 管理>アプリケーション グループ>Microsoft Dynamics 365 for Operations オンプレミスの順に移動します。 ネイティブ アプリケーションでクライアント ID を検索できます。

メモ

以前に構成した AD FS サーバーを別の環境で再利用する方法については、複数の環境に同じ AD FS インスタンスを再使用する を参照してください。

AD FS インスタンスまたはファームをホストしているサーバーに接続し、管理者特権で Windows PowerShell を開き、ファイル共有内のインフラストラクチャ フォルダーに移動します。 次に、次のコマンドを実行します。

# Host URL is your DNS record\host name for accessing the AOS
.\Publish-ADFSApplicationGroup.ps1 -HostUrl 'https://ax.d365ffo.onprem.contoso.com'

アプリケーション グループのプロパティ。

最後に、AOSNodeType タイプの Service Fabric ノード上の AD FS OpenID コンフィギュレーション URL にアクセスできることを確認します。 このチェックを行うには、Web ブラウザーで https://<adfs-dns-name>/adfs/.well-known/openid-configuration を開きます。 サイトが安全でないことを示すメッセージが表示された場合は、AD FS SSL 証明書が信頼済ルート証明機関ストアに追加されていません。 この手順については、「AD FS 展開ガイド」で説明されています。 リモート処理を使用している場合は、次のコマンドを実行して Service Fabric Cluster のすべてのノードに証明書をインストールできます。

# If remoting, execute
.\Install-ADFSCert-AllVMs.ps1 -ConfigurationFilePath .\ConfigTemplate.xml

URL にアクセスできる場合、JavaScript Object Notation (JSON) ファイルが返されます。 このファイルには AD FS コンフィギュレーションが含まれており、AD FS URL が信頼されていることを示します。

これで、インフラストラクチャの設定を完了しました。 次のセクションでは、コネクタを設定して Lifecycle Services に Finance + Operations (on-premises) 環境を展開する方法について説明します。

手順 21 コネクタを構成し、オンプレミスのローカル エージェントをインストールする

  1. Lifecycle Services にサインインし、オンプレミスの実装プロジェクトを開きます。

  2. メニュー ボタン (ハンバーガーまたはハンバーガー ボタンと呼ばれる場合もあります) を選択してから、プロジェクト設定を選択します。

  3. オンプレミス コネクタ を選択します。

  4. 追加を選択して、新しいオンプレミス コネクタを作成します。

  5. 1: ホスト インフラストラクチャ設定タブで、エージェント インストーラーをダウンロードするを選択します。

  6. zip ファイルのダウンロード後、そのファイルがブロックされていないことを確認します。 ファイルを選択したまま (または右クリック) にしてから、プロパティを選択します。 プロパティ ダイアログ ボックスで、ブロック解除チェックボックスを選択します。

  7. OrchestratorType タイプの Service Fabric ノードの 1 つでエージェント インストーラーを解凍します。

  8. ファイルの解凍後、Lifecycle Services のオンプレミス コネクタに戻ります。

  9. 2: エージェントのコンフィギュレーション タブで、コンフィギュレーションの入力を選択し、コンフィギュレーション設定を入力します。 必要な値を取得するには、インフラストラクチャ フォルダーと最新のコンフィギュレーション ファイルを持つすべてのコンピューターで次のコマンドを実行します。

    .\Get-AgentConfiguration.ps1 -ConfigurationFilePath .\ConfigTemplate.xml
    

    メモ

    バージョン 2016 または バージョン 2019 を使用している場合は、必ず正しい SQL Server のバージョンを選択してインストールしてください。

  10. コンフィギュレーションを保存してから、コンフィギュレーションのダウンロードを選択して localagent-config.json コンフィギュレーション ファイルをダウンロードします。

  11. localagent-config.json ファイルを、エージェント インストーラー パッケージが展開されているコンピューターにコピーします。

  12. ローカル エージェントには、環境固有の設定/要件を指定するために設定可能な追加のオプション コンフィギュレーションがあります。 追加のオプションについては、ローカル エージェントの配置コンフィギュレーション を参照してください。

  13. PowerShell ウィンドウで、エージェント インストーラーを含むフォルダーに移動して、次のコマンドを実行します。

    LocalAgentCLI.exe Install <path of config.json>
    

    メモ

    このコマンドを実行するユーザーは、OrchestratorData データベースに対して db_owner のアクセス許可を持っている必要があります。

  14. ローカル エージェントが正常にインストールされてから、Lifecycle Services のオンプレミス コネクタに戻るようにします。

  15. 3: 検証の設定 タブで、エージェントにメッセージを送るを選択して、ローカル エージェントへの Lifecycle Services 接続をテストします。 接続が正常に確立されると、下のメッセージが表示されます: 「検証が完了しました。 エージェントへの接続が確立されました。」

手順 22 リモート処理が使用されたら、CredSSP を終了処理する

セットアップ中にリモート処理スクリプトのいずれかが使用された場合は、セットアップ プロセスの中断時または完了後に、次のコマンドを実行してください。

.\Disable-CredSSP-AllVMs.ps1 -ConfigurationFilePath .\ConfigTemplate.xml

以前のリモート処理 Windows PowerShell ウィンドウが誤って終了し、CredSSP が有効になったままである場合、このコマンドにより、コンフィギュレーション ファイルで指定されたすべてのコンピューター上で無効にされます。

手順 23 Lifecycle Services から Finance + Operations (on-premises) 環境を配置する

  1. Lifecycle Services で、オンプレミスの実装プロジェクトを開きます。

  2. 環境>サンドボックスに移動し、コンフィギュレーションを選択します。 必要な値を取得するには、プライマリ ドメイン コントローラ VM で次のコマンドを実行します。 その VM には、AD FS および DNS サーバー設定へのアクセス許可が必要です。

    .\Get-DeploymentSettings.ps1 -ConfigurationFilePath .\ConfigTemplate.xml
    
  3. 新しい展開では、環境のトポロジを選択し、展開を開始するウィザードを完了します。

    準備フェーズ中に、Lifecycle Services は環境の Service Fabric アプリケーション パッケージを組み立てます。 配置を開始するローカル エージェントにメッセージを送信します。 環境ステータスが準備中であることに注意します。

    準備状態の環境。

  4. 環境の詳細ページで、完全な詳細を選択します。 ページの右上隅には、環境ステータスが準備中として表示されることを確認します。

    準備中ステータスを表示する環境の詳細ページ。

    ローカル エージェントは展開要求を受け取り、展開を開始し、環境の準備ができたら Lifecycle Services に再度通知します。 展開を開始すると、環境の状態が展開中に変わることに注意します。

    展開状態の環境。

  5. 環境の詳細ページで、完全な詳細を選択します。 ページの右上隅には、環境ステータスが展開中として表示されることを確認します。

    展開中ステータスを表示する環境の詳細ページ。

  6. 展開に失敗すると、環境の状態が失敗に変更され、再構成ボタンが環境で使用可能になります。 基になる問題を修正し、再構成を選択して、任意のコンフィギュレーションの変更を更新してから、展開の再試行を選択します。

    失敗状態の環境で使用する再構成ボタン。

    環境を再構成する方法の詳細については、環境を再構成して、新しいプラットフォームまたはトポロジを採用するを参照してください。

次の図は、正常な展開を示します。 ページの右上隅には、環境ステータスが展開済として表示されることを確認します。

正常に展開された環境。

手順 24 Finance + Operations (on-premises) 環境に接続する

既知の問題

.\Create-GMSAAccounts.ps1 スクリプトを実行すると、次のエラー メッセージが表示されます: 「キーが存在しません」

ドメインで gMSA パスワードを初めて作成し生成する場合は、最初にキー配分サービス KDS ルート キーを作成する必要があります。 詳細については、キー配分サービス KDS ルート キーの作成を参照してください。

リモート処理スクリプト Configure-Prereqs-AllVms cmdlet を実行すると、次のエラー メッセージが表示されます: 「WinRM クライアントは要求を処理できません」

Service Fabric Cluster のすべてのコンピューターで新しい資格情報委任を許可するコンピューター ポリシーを有効にするには、エラー メッセージの指示に従います。

Publish-ADFSApplicationGroup cmdlet を実行すると次のエラー メッセージが表示されます:「ADMIN0077: アクセス制御ポリシーが存在しません: すべてのユーザーを許可してください」

英語以外のバージョンの Windows Server 2016 と共に AD FS をインストールすると、すべてのユーザーを許可するアクセス許可ポリシーがローカル言語で作成されます。 次の方法で cmdlet を呼び出して AccessControlPolicyName パラメーターを指定します。

.\Publish-ADFSApplicationGroup.ps1 -HostUrl 'https://ax.d365ffo.onprem.contoso.com' -AccessControlPolicyName '<Permit everyone access control policy in your language>'

追加リソース