Exchange OnlineにPSTインポートでデータ移行
目次
はじめに
メールサービスを切り替える場合、既存のデータをどうするかは必ず検討することになると思います。移行しないで済むならそれに越したことはありませんが、なかなかそうはいかないのが実情だと思います。またホスティングサービスでメールを利用している場合、データはPCにダウンロードされていてサーバ上にデータがない場合もあると思います。今回の記事では、PCのOutlookにダウンロードされてしまっているデータの移行方法をご紹介します。
そもそもMicrosoftなのかGoogleなのかで迷っていらっしゃる場合はこちらへどうぞ
事前準備
本操作の実行には組織の全体管理者権限とExchangeのMailbox Import Export の役割および Mail Recipients の役割の割り当てが必要になります。権限の割り当てからメニューが表示されるまでに結構な時間がかかります。管理画面には最大24時間かかる旨記載が出ていますので、余裕をもって確認するようにしてください。
Exchangeの役割設定
Exchange Online標準の役割グループにRecipient Managementグループがありますが、このグループはMailbox Import Exportの役割が割り当たっていません。最低限の機能を渡すという意味でも役割グループをコピーから新たに役割グループを作成して対象の役割を割り当てしていきます。
PSTファイルアップロードまでの準備をする
まずはMicrosoft365コンプライアンス管理センターの[情報ガバナンス]にあるインポートにアクセスして[新規インポートジョブ]を作成します。権限設定がされていないと[新規インポートジョブ]メニューが表示されません。
※リンクをクリックすると直接インポート画面に飛べるようになっています。
ジョブ名を入力した後、インポートジョブの種類を選択します。ここでは下記の2パターン選択が可能になっています。
- データをアップロードする
- Microsoftの物理的な場所のいずれかにハードドライブを送付する
今回は1つ目の選択肢「データをアップロードする」をベースにお話を進めます。2つ目の選択肢はハードディスクをMicrosoftに送付する方法になります。ネットワーク負荷を考慮すると2つ目の選択肢になります。
ネットワークアップロード用のSAS URLをコピーします。このURLはAzure AzCopyのDestパラメータで使用します。Azure AzCopyもダウンロードしてインストールまでしておいてください。
これで、AzCopy.exe ツールを使って Office 365 に PST ファイルをアップロードする準備が整いました。 ヘルプ記事には以下の記載があります。
このツールで、PST ファイルを Microsoft クラウドの Azure Storage の場所にアップロードして保存します。 PST ファイルをアップロードする Azure Storage の場所は、組織が所在するのと同じ地域の Microsoft データ センターにあります。 この手順を完了するには、PST ファイルを組織内のファイル共有やファイル サーバーに配置する必要があります。
つまりPSTファイルをどこかに集める必要があります。バージョンにもよりますがオンプレミスExchangeサーバからの移行であればサーバ側でまとめてPSTをエクスポートする手段がありますが、そうでない場合は、各利用者のPCにPSTファイルが存在することになると思います。それをどうやって回収するのかがこの手順の一番の問題になります。また1つのPSTファイルあたりの容量は20GB以内に抑える必要があるようです。
PSTファイルをアップロードする
先ほどAzure AzCopyをインストールしたコンピュータをコマンドプロンプトを開きます。Azure AzCopyをインストールしたディレクトリに移動します。
cd "\Program Files (x86)\Microsoft SDKs\Azure\AzCopy"
続いてPSTファイルのアップロードを実行します。コマンドパラメータは下記の通りです。
パラメータ | 説明 |
---|---|
/Source: | Office 365 にアップロードする PST ファイルを含む組織内のソース ディレクトリを指定します。 このパラメーターの値は必ず二重引用符 (” “) で囲むようにしてください。 |
/Dest: | 取得した SAS URL を指定します。 このパラメーターの値は必ず二重引用符 (” “) で囲むようにしてください。※1 |
/V: | ログ ファイルに詳細な状態メッセージを出力します。 既定では、詳細ログ ファイルは AzCopyVerbose.log という名前が付けられ、%localappdata%\microsoft\azure\azcopy に作成されます。 このオプションで既存のファイルの場所を指定する場合、詳細ログがそのファイルに追加されます。 このパラメーターの値は必ず二重引用符 (” “) で囲むようにしてください。 |
/S | この省略可能なスイッチによって再帰モードが指定され、AzCopy ツールが /Source: パラメーターで指定されるソース ディレクトリのサブフォルダーにある PST ファイルをコピーするようになります。 |
/Y | この必須スイッチにより、Azure Storage の場所に PST ファイルをアップロードするときに、書き込み専用の SAS トークンを使用できます。 |
※1 スクリプトまたはバッチ ファイルで SAS URL を使用している場合は、エスケープする必要がある特定の文字に注意する必要があります
実際のコマンドは下記の形で、環境に合わせて修正してから実行してくださいね。この例では再起呼び出ししていませんが、階層があるところにPSTを配置している場合は「/S」オプションも指定してください。
AzCopy.exe /Source:"<PST配置ディレクトリ>" /Dest:"<SAS URL>" /V:"<ログファイルのパス>" /Y
アップロードが完了するとコマンドプロンプト上にアップロードしたファイル数などのログが出力されます。エラーになった場合は指定したログを確認して原因を調査するようにしましょう。
アップロードしたファイルの確認を行う
アップロードしたPSTファイルはAzure Storageにアップロードされています。アップロード結果の確認にはMicrosoft Azure Storage Explorerを利用します。無料のツールですのでご安心を!
インストールが完了したらMicrosoft Azure Storage Explorerを起動して、リソースの選択画面でBLOBコンテナーをクリックします。
BLOBコンテナーへの接続方法は Shared Access Signature URL(SAS)を選択して[次へ]を押下します。
表示名(任意)を入力してSAS URLを貼り付けて[次へ]を押下します。
概要欄で接続情報を確認して[接続]を押下します。下記のようにアップロードしたファイルが見えていれば確認完了です。
PSTファイルとインポート先のユーザを紐づける
PSTファイルとインポート先のユーザの紐づけはCSVファイルを使って行います。ひな形も用意されています。CSVの各カラムに入力する内容は下記の通りです。
パラメータ | 説明 |
---|---|
Workdload | データのインポート先のサービスを指定します。 ユーザ メールボックスに PST ファイルをインポートするには、Exchange を使用します。 |
FilePath | PST ファイルをアップロードした Azure Storage の場所でフォルダーの場所を指定します。この記事の例では空白で問題ありません。 |
Name | ユーザ メールボックスにインポートする PST ファイルの名前を指定します。 このパラメーターの値には、大文字と小文字の区別があります。 インポート ジョブ用のマッピング ファイル内の各 PST ファイルのファイル名は一意である必要があります。 |
Mailbox | PST ファイルのインポート先になるメールボックスのメールアドレスを指定します。 パブリックフォルダの指定はできません。 |
IsArchive | PST ファイルをユーザのアーカイブ メールボックスにインポートするかどうかを指定します。次のような 2 つの選択肢があります。 FALSE: PST ファイルをユーザのプライマリ メールボックスにインポートします。 TRUE: PST ファイルをユーザのアーカイブ メールボックスにインポートします。 これは、ユーザのアーカイブ メールボックスが有効であることが前提です。 |
TargetRootFolder | PST ファイルのインポート先のメールボックス フォルダーを指定します。受信トレイを結合する場合は[ / ] |
ContentCodePage | 中国語、日本語、韓国語 (CJK) を使用する組織から PST ファイルをインポートする場合に使用します。日本語は932固定です。 |
SPFileContainer 、 SPManifestContainer 、 SPSiteUrl のパラメータはPSTインポートでは使用しませんので空白のままにしてください。
インポートジョブを作成します
「ファイルのアップロードを完了しました]と[マッピングファイルにアクセスできます]にチェックを入れて[次へ]を押下します。
先ほど作成したCSVファイルを選択して[検証]を押下します。検証結果にエラーがなければ[次へ]を押下します。
レビュー画面で[送信]を押下して、クラウドへのアップロード成功と出れば完了です。[完了]を押下して閉じましょう。
データをフィルター処理して、PST インポート ジョブを開始する
作成したインポートジョブを選択して[Office365にインポート]をクリックします。
データのフィルタ処理ページで、インポート前にデータをフィルタするかを選択して[次へ]を押下します。
すべてをインポートを選択された方は、データ移行を行う前にどれだけの期間を移行する必要があるのかよく検討してみてください。データ移行においては、過去の全部のデータを移行することを推奨しません。3年前のメール誰が読み返しますか?そのメール返信することありますか?全部のデータを移行することでコスト・時間は見合った結果をもたらすでしょうか?
フィルタオプションには経過年数、差出人による除外、宛先による除外などが可能になっています。個人的にはメールデータは1年もあれば十分ではと思ってます。メール量が増えれば増えるほど処理が重たくなったり、検索性が落ちたりすると思いますのでデータは少ないに越したことはない。必要なものだけがあればそれでよいを前提に進めていただくと良いかと思います。
フィルタオプションの画面は割愛しますが、フィルタ設定が完了したら[送信]を押下します。
以上の操作でPST移行の指示が完了です。あとは果報は寝て待てなので移行ジョブ完了まで気長にお待ちください。管理画面で進捗の確認も可能になっていますので進捗が気になる方はコンプライアンスセンターでご確認ください。
まとめ
今回はExchange OnlineへのPSTファイルアップロードの方法をご紹介しました。私はデータ移行なんてやめましょう、構築期間中だけメールを並行配送して乗り切りましょうといった提案を出すことが多く、全データを移行することはあまりありませんが、どうしても全データを移行しなければならない場合や、オンプレミスExchangeサーバからの移行でハイブリット移行なんてやりたくないって方はPSTアップロードをご提案いただくのもありなのではと思います。
この方法ではAzure Storage使ってるはずなのになぜか無料でストレージが使えてしまう謎仕様になっていてお得感もあります。ユーザのメールボックスではなく、会議室の予定を移行したい場合は別記事に記載してますので合わせてご確認ください。本記事が皆様の導入の一助となりましたら幸いです。
もう一つのよくある移行ニーズとしてファイルサーバ移行があります。そちらについても別記事でご紹介しています。ファイルサーバも移行したい方はこちらからどうぞ