Skip to content

MS_CRMDeploymentManager

nishi_74322014 edited this page Sep 1, 2026 · 1 revision

CRMの展開マネージャを使用した管理

概要

Use Deployment Manager to manage the deployment
https://technet.microsoft.com/ja-jp/library/dn920265.aspx

展開マネージャを使用して、次のような、展開全体の管理タスクを実行できる。

  • 既存の組織の管理

  • CRM 展開内のサーバの管理

  • ライセンス情報の表示

  • インターネット展開用の構成(IFD)

  • PowerShell を使用した展開タスクの実行

展開

  • 1 つの展開は

    • 複数の Dynamics CRM サーバを持つ事ができる。
    • 構成情報を「MSCRM_CONFIG(構成データベース)」に格納する。
    • 複数の組織「OrganizationName_MSCRM(組織データベース)」を持つ事ができる。
      (この機能は、Workgroup エディションでは利用できない)
  • 展開マネージャは 1 つの展開のみ管理する。

補足(「展開」という単位): Dynamics CRM の
展開(deployment)= 1 つの MSCRM_CONFIG を共有するサーバ群である。
CRMのインストールと構成
「SQL Server インスタンスごとに 1 つの展開がサポートされる」とあるのは、
MSCRM_CONFIG がインスタンスに 1 つだけ置けるためである。

その中に**複数の組織(テナント)**を持てるのがサーバー エディションで、
Workgroup エディションでは 1 組織に限られる
(→ CRMのエディションとライセンス)。

展開マネージャ

次の項目の管理が可能な、
マイクロソフト管理コンソール(MMC)
のスナップインとして提供される。

補足: MMC のスナップインであるため、
GUI が使えるサーバでしか動かない
CRMのサーバ要件
Server Core 構成がサポート外とされている一因である。
後述の PowerShell コマンドレットは、この制約を補うものと言える。

展開管理者(ロール)

展開マネージャーを実行するには、展開管理者ロールが必要。

展開管理者ロールは

  • セキュリティ・グループ(=ドメインのグループ)でも、
  • セキュリティ・ロールでもないもよう。

説明

  • 展開管理者(ロール)が展開マネージャの実行権限を持つ。

  • 2 人以上のユーザを割り当てる必要がある。

  • Dynamics CRM サーバのセットアップ実行ユーザが
    始めに、自動的にこの展開管理者(ロール)のメンバに追加される。

  • セットアップ実行ユーザは後に、展開マネージャを使用して、
    他のユーザを展開管理者(ロール)に追加できるようになる。
    AD DSドメインのグループに追加するのではなく)

  • 組織単位(OU)には CRM で必要なセキュリティ・グループを追加するだけ。

  • セキュリティ・ロールではないので、

    • 展開管理者は Dynamics CRM クライアント・アプリケーションで管理しない。
    • 一般ユーザは、Dynamics CRM クライアント・アプリケーションで管理する。
  • 展開管理者は組織に追加されていない場合、
    クライアント・アクセス・ライセンスを必要としない。

補足(この「第 3 の権限体系」がわかりにくい理由): 著者が
「セキュリティ・グループでもセキュリティ・ロールでもないもよう」と
戸惑っているとおり、Dynamics CRM には3 系統の権限が並存する。

権限 管理場所 対象
AD のセキュリティ グループ Active Directory サービス間の権限(PrivUserGroup 等)
展開管理者ロール 展開マネージャMSCRM_CONFIG に格納) 展開全体の管理
セキュリティ ロール CRM の Web アプリ(組織データベース) 業務データへのアクセス

つまり展開管理者は組織より上の階層を管理する権限であり、
業務データを見る権限とは独立している。
「組織に追加されていなければ CAL 不要」というのはこの独立性の帰結で、
CRMのインストールと構成
アクセスモード「管理」(CAL 不要)とも整合する。

2 人以上を割り当てるという要件は、
1 人しかいない状態でそのアカウントが失われると
展開全体を管理できなくなるためで、
Azure 条件付きアクセス
break-glass アカウントと同じ発想である。

参考

組織の管理

新しい組織の作成

  • 組織 → 新しい組織 → 組織の設定の指定

    入力して → 次へ

  • カスタマー・エクスペリエンス向上プログラム → 入力して → 次へ

  • SQL Server を選択 → 入力して → 次へ

  • SSRS の URL を入力 → 入力して → 次へ

  • システムのチェック → 次へ

  • 作成する準備ができました → 作成 → 完了

既存の組織の管理

作成 / インポート

  • = 組織データベースの作成・インポート
  • 作成時、インストール時と同様に以下を指定
    • 表示名
    • 一意なデータベース名
    • ISO 通貨コード
    • SQL 照合順序を指定する。
    • SSRS サーバーの URL

プロパティの表示

有効化 / 無効化

組織を無効にするとユーザがデータベースにアクセスできなくなるので、
データベースのメンテナンスを行う場合、組織を無効化する。

  • 無効化

    • 変更時
    • 削除時
  • 有効化
    無効化の状態から元に戻す時。

    • 利用時
    • 更新時

組織の変更 / 削除 / 更新

組織の編集ウィザードを使用する。

  • 組織の変更
    組織を無効化してから更新する。

    • 組織の表示名の変更
    • 組織データベースの配置先の SQL Server の変更
      組織データベースの移動は手動で移動する。
    • SSRS の URL の変更
      SSRS のレポート公開は自動で行われる。
  • 組織の削除
    組織を無効化してから削除する。

    • 組織データベースの配置先の SQL Server
      組織データベースは削除されないため、後にインポート可能
    • [Reporting Services サーバーを指定]の URL の SSRS
      SSRS と、そのレポートは削除されない。
  • 組織の更新
    組織を有効化してから更新(Microsoft Update や、手動更新)する。

    • 必要に応じて組織データベースをバックアップする。

補足(「削除しても DB は残る」という設計): 展開マネージャの「削除」は
MSCRM_CONFIG から組織の登録を外すだけで、
実体の組織データベースは SQL Server 上に残る。
このため、誤って削除してもインポートで戻せる一方、
本当に消したいときは DB を別途削除する必要がある。
移行や再展開の手順が「削除 → インポート」で成立するのは、この性質による。

サーバの管理

情報の表示

  • 名前
  • 状態(有効 / 無効)
  • バージョン
  • ロール(サーバのロール)

有効化 / 無効化

無効化により、当該役割の機能が使えなくなったり、
アプリケーションにアクセスできなくなることがある。

  • Web アプリケーション・サーバー

  • 組織 Web サーバー

  • ヘルプ・サーバ

  • 検出 Web サービス

  • 展開 Web サービス

  • 非同期処理サービス

  • 非同期処理サービス(メンテナンス)

  • サンドボックス処理サービス

  • Dynamics CRM VSS ライター・サービス

  • 以下は対象外

    • 組織データベースの配置先の SQL Server
    • レポート拡張機能の SSRS サーバ

移行メモ(正誤): 元ページの「SQL Serve」は「SQL Server」の脱字と判断し、補った。

削除

削除により、当該役割の機能が使えなくなったり、
アプリケーションにアクセスできなくなることがある。

削除した役割の復元は、再インストールにより行う。

インターネット展開用の構成(IFD)

※ Internet Facing Deployment (IFD)

  • クレームベース認証の構成
  • インターネットに接続する展開の構成

展開プロパティ

Webアドレスの更新

Webアドレスの変更

  • セットアップ時に次の Web サービスの内部接続用の Web アドレスが確立される。

    • Web アプリケーションサーバ
    • 組織 Web サービス
    • 検出 Web サービス
    • 展開 Web サービス
  • IIS のバインディングやアドレスを変更した際は、
    展開プロパティのページの[Web アドレス]タブで更新する。
    (IIS の変更する設定を登録するのではなく、IIS で変更した設定を登録する。)

  • フルサーバの場合、全て同じ Web アドレスになるが、
    フロントサーバやバックエンドサーバの場合は異なるアドレスになる。

  • 設定
    展開マネージャーの[Dynamics CRM]の[プロパティ]の[Web アドレス]タブで、

    • バインディングの種類:HTTP または HTTPS
    • Web アドレス:address:port

補足(著者の括弧書きが要点): 「IIS の変更する設定を登録するのではなく、
IIS で変更した設定を登録する」という注意は重要である。
つまり、この画面は IIS を設定する画面ではなく、
IIS の現状を CRM に教える画面
である。
手順としては IIS を先に変更 → 展開マネージャで追随の順になる。
逆順で操作すると、CRM が存在しないアドレスを参照して
アクセスできなくなる。

ネットワーク負荷調整

SSLオフロード ハードウェア

  • SSL オフロード ハードウェアの SSL ヘッダーを指定する。

  • 展開マネージャーの[Dynamics CRM]の[プロパティ]の[Web アドレス]タブで、
    [詳細]の[SSL ヘッダー]に SSL ヘッダーを入力する。

補足(SSL オフロードで必要になる理由): ロード バランサ等で
HTTPS を終端すると、CRM サーバには HTTP で届く
このままだと CRM が「自分は HTTP で公開されている」と判断し、
リダイレクト先や生成する URL が http:// になってしまう。
そこで、ロード バランサが付与するヘッダー
X-Forwarded-Proto 相当)を CRM に教えることで、
元の要求が HTTPS だったことを認識させる
これは現在のリバース プロキシ構成でも共通する定番の設定である。

ライセンスの管理

必要な CAL の概要が表示される。

  • 展開マネージャーの[Dynamics CRM]の[プロパティ]の[ライセンス]タブ
    • 製品 ID
    • 管理ユーザ
    • ライセンス
      • Professional CAL
      • Basic CAL
      • Essential CAL
      • サーバーライセンス

アップグレード

(インストールキーによってエディションが決まるため)
アップグレード ライセンスとプロダクト キーを入手し
展開マネージャで入手した新しいプロダクト キーを入力する。

サポートされているエディションのアップグレード パス

現在のエディション アップグレード可能なエディション
Workgroup Trial Server Trial、Workgroup or Server
Server Trial Server
Workgroup Server
Server

再展開

以下の様なケース

  • 評価、検証、テスト

    • テスト環境
    • アドオンの評価
    • 外部コンサル用環境
    • トレーニング用環境
  • 構成の変更

    • インフラの変更
    • AD ドメインの再編成
    • 複数のインスタンスを 1 つの展開に統合

ユーザのマップ

組織データベースをドメイン間で移動する際、
展開マネージャのインポート ウィザードで
組織データベース内の CRM ユーザを
新しいドメインの AD の GUID にリンクさせる。

補足(なぜマップが要るのか): CRM のユーザ レコードは
AD アカウントの GUID(SID)で紐づいている
ドメインが変われば GUID も変わるため、
DB を移しただけでは「誰のレコードか」が解決できなくなる。
これは AD 移行全般で起きる問題で、
Active Directory(移行)で扱う
SID 履歴の話と同じ構図である。

再展開の計画

  • 新しいドメインやフォレストに CRM をインストール。
  • SQL ServerExchange Server などのインストール(移行)

再展開プロセス

  • 組織データベースをバックアップ
  • 組織データベースのバックアップを "別の DB 名で?" リストア
  • 展開マネージャで組織データベースをインポート

組織のインポート

前提

  • 1 つの展開で複数の組織をサポートするのは、2013 Server Edition のみ。
    Workgroup Edition にインポートする場合、既存の組織は削除される。

  • 組織データベースが、まだ展開に含まれていないこと。

手順

SQL Serverを選択する。

  • [SQL Server の選択]ページの[SQL Server]ボックスで
    インポートする組織データベースが格納されている
    SQL Server を実行するコンピュータ名を入力 or 選択

  • [組織データベース]ボックスの一覧でインポートする組織データベースを選択。

組織の設定の指定

  • [組織の設定の指定]ページ
    • 表示名
    • 一意なデータベース名

SSRSサーバを指定

  • [Reporting Service サーバーを指定]ページで、レポートサーバの URL を入力。

ユーザー マッピングの方法を選択

CRM ユーザー レコードとドメイン アカウント間のマップ。
ドメイン アカウントはインポートによって新規に作成されないので
事前にドメイン アカウントを作成しておく必要がある。

  • [ユーザーを自動的にマップする(推奨)]

    • [ユーザー マッピングの編集]ページが表示される。
  • [カスタム マッピング オプションを選択する]

    • [既存のユーザーのマッピングの保持]
      組織データベースを同一ドメイン内にインポートする場合

    • [ユーザーを手動でマップ]
      ウィザードのページで各ユーザを手動でマップ

    • [新しいマッピング ファイルの生成]

      • XML を生成し、ウィザードを再起動。
      • 下記の[既存のマッピング ファイルを使用]へ。
    • [ユーザーの自動マップ]

      • AD アカウント名
        CRM ユーザー レコードと同じアカウント名の
        ドメイン アカウントにマップする。

      • CRM のフルネームから AD フルネームへ
        CRM ユーザー レコードと同じフルネームの
        ドメイン アカウントにマップする。

      • [既存のマッピング ファイルを使用]
        [新しいマッピング ファイルの生成]で
        生成した XML にマッピングを設定。

補足(実務での進め方): 件数が多い場合は、
[新しいマッピング ファイルの生成]で XML を出し、
表計算などで機械的に対応表を作ってから読み込ませるのが確実である。
自動マップ(アカウント名一致 / フルネーム一致)は、
同姓同名や、命名規則が変わっている場合に誤マップする危険がある。
業務データの所有者が入れ替わると影響が大きいため、
件数が少なくてもマッピング結果は必ず目視確認したい。

ユーザー マッピングの編集

  • [ユーザー マッピングの編集]ページには
    インポートする組織データベース内のユーザの一覧が表示される。

  • 各ユーザーについて、次の項目が一覧に表示される。

    • 既存の Active Directory ユーザ名
    • ユーザが属する CRM セキュリティ ロール
    • 新しい Active Directory ユーザ名
  • 新しい Active Directory ユーザ名がない場合は、
    マップされていないユーザをマップする必要がある。

システムのチェック

(元ページ未記載)

インポートする準備ができました。

(元ページ未記載)

PowerShellを使用した展開の管理

展開コマンドを実行して展開の構成を変更できる。

PowerShell は、展開ツールのサーバ役割をもつ CRM Server 上にインストールされる。

コマンドレットをセッションに登録

Add-PSSnapin Microsoft.Crm.PowerShell

ヘルプを取得

Get-Help *crm*

詳細なヘルプは

Get-Help cmdletname -full

例えば、Get-CrmOrganization のヘルプを取得するには、

Get-Help Get-CrmOrganization -full

補足(PSSnapin であることの含意): Add-PSSnapin を使っている点に注目したい。
PowerShell Module vs Snapin で述べたとおり、
PSSnapin は PowerShell 6.0 で廃止されている。
したがって、これらのコマンドレットは
Windows PowerShell 5.1 でしか動かない
PowerShell Core へ統一しようとすると、
ここが移行の障壁になる典型例である。

サポートされるコマンドレット

参考


Tags: Dynamics CRM

NetDevInfraWiki

マイクロソフト系技術情報 Wiki
Open 棟梁 Wiki

(未着手)

開発基盤部会 Wiki

移行管理: DONETODO

Clone this wiki locally