Web Deployを活用した複数IISサイトのクラウド移行手順を徹底解説
オンプレミス環境で稼働している複数のインターネット インフォメーション サービス(IIS)サイトをクラウドへ移行するよう依頼されるケースは少なくありません。しかし、サイトを1つずつ手作業で移行するのは時間がかかり、非常に骨の折れる作業です。本記事では、Microsoft® Web Deployツールを活用して、この移行プロセスを大幅に簡素化する方法を詳しく解説します。
はじめに
Microsoft® Web Deployツールを使用すると、ソース環境からサイトとそのコンテンツをエクスポートし、ターゲット環境へインポートできます。本記事では、Web Deployを使ったIISサイト移行の手順として、以下のステップを順番に説明します。
- ソースサーバーとターゲットサーバーの両方にWeb Deployをインストールする。
- Web Deployを使用して、ソース環境からIISのコンテンツをエクスポートする。
- PowerShellの
copy/syncコマンドを使用して、ソースからターゲット環境へデータをコピーする。 - Web Deployを使用して、IISのコンテンツをターゲット環境にインポートする。
- バックアップおよびリストアコマンドを使用して、データベースをソースからターゲット環境へコピーする。本記事ではMySQL®データベースを例に説明します。
ソースサーバーとターゲットサーバーへのWeb Deployのインストール
以下の手順に従って、Web Deployをインストールしてください。
- Web Deployが含まれているMicrosoftのWeb Platform Installer(WebPI)をダウンロードしてインストールします。
- WebPIのダウンロード完了後、インストーラーを起動します。
- 検索バーに「Recommended」と入力し、次のスクリーンショットのように「Recommended Configuration for Hosting Providers(ホスティングプロバイダー向け推奨構成)」を選択します。
- インストールされるすべてのコンポーネントの一覧を確認するには、ウィンドウ下部の「Items to be installed(インストールされる項目)」をクリックします。横に「X」が付いている項目は削除可能です。次のスクリーンショットは、Web Deployの機能を示しています。
- 何もチェックを外さずに「Next(次へ)」をクリックし、「Install(インストール)」を選択します。ライセンス契約に同意すると、次のスクリーンショットのようにインストールが開始されます。
- WebPIのインストールが完了したら、WebPIを閉じます。
ソース環境からのIISコンテンツのエクスポート
Web Deployを使用してIISサイトのコンテンツをエクスポートする前に、以下のファイルのバックアップコピーを作成しておきましょう。
- C:\Windows\System32\inetsrv\config\administration.config
- C:\Windows\System32\inetsrv\config\applicationHost.config
これらのファイルには、すべてのサイト設定が含まれています。以降の手順では、これらのファイルは宛先サーバー上でのみ変更されます。処理中に問題が発生し、宛先サーバーを元の状態に戻す必要がある場合は、バックアップしたファイルをリストアしてください。
バックアップコピーを作成したら、以下の手順に従ってソースサーバー上でIISサイトのコンテンツをエクスポートします。
- 移行対象のIISサイトがあるソースサーバー上で、IIS 7.0マネージャーを開きます。
- サーバー名を右クリックし、「Deploy(配置)」を選択して、「Export Server Package(サーバーパッケージのエクスポート)」をクリックします。次のスクリーンショットを参照してください。
- 「Export Server Package(サーバーパッケージのエクスポート)」画面で、次のスクリーンショットのように「Manage Components(コンポーネントの管理)」をクリックします。
- 「Manage Components(コンポーネントの管理)」ウィンドウで、一覧の最初の「Provider Name(プロバイダー名)」が「webServer」になっていることを確認します。次のスクリーンショットを参照してください。これにより、サーバー構成全体をエクスポートできます。表示されていない場合は、「Provider Name」の下のセルをクリックし、表示されたリストから選択してください。
- 「OK」→「Next(次へ)」→再度「Next(次へ)」の順にクリックします。
- エクスポートファイルの保存先パスを入力し、「Next(次へ)」をクリックします。
- 要求された場合は、セキュリティ保護された設定用の暗号化パスワードを入力します。
- 次のスクリーンショットのように、「Export Progress and Summary(エクスポートの進行状況と概要)」画面で「Finish(完了)」をクリックします。
ソースからターゲット環境へのデータコピー
前のセクションで作成したエクスポートファイルを、標準のrobocopyコマンド、Windowsのコピーユーティリティ、または任意のコピーツールを使用して、ターゲットサーバーにコピーします。
ターゲットサーバーへのIISコンテンツのインポート
以下の手順に従って、ターゲットサーバー上にIISの設定をインポートします。
- 移行対象サイトのある宛先サーバー上で、IIS 7.0マネージャーを開きます。
- サーバー名を右クリックし、「Deploy(配置)」をクリックして、「Import Server or Site Package(サーバーまたはサイトパッケージのインポート)」を選択します。
- ソースサーバーからコピーしたエクスポート済みzipファイルを参照して選択します。
- 「Next(次へ)」をクリックします。
- 要求された場合は、セキュリティ保護された設定用の暗号化パスワードを入力します。
- 「Next(次へ)」をクリックします。
- 次のスクリーンショットのように、サーバー上の既存のIIS構成を上書きすることを確認するダイアログで「OK」をクリックします。
- 「Next(次へ)」をクリックします。
- 「Export Progress and Summary(エクスポートの進行状況と概要)」画面で「Finish(完了)」をクリックします。
インポート失敗時の対処法
パッケージのインポート時に以下のようなエラーが発生した場合は、次の手順で問題を解決できます。
Child object 'customFields' cannot be added to object 'logFile'.
The 'logFile' provider may not support this deployment."
msdeployでエクスポートしたzipファイルを開きます。- zipファイル内のarchive.xmlをテキストエディターで開きます。
- customFieldsが含まれる行を削除します。
- xmlファイルを保存します。
- zipファイルを再度インポートします。
MySQLデータベースのバックアップとリストア
ソースサーバー上のMySQLデータベースをバックアップするには、mysqldumpコマンドを使用します。
ターゲットサーバー上でMySQLデータベースをリストアするには、作成したダンプファイルの名前を指定してmysqlコマンドを実行します。
まとめ
IISサイトを手作業で移行するのは、膨大な単純作業になりがちです。Web Deployを活用すれば、数千規模のサイトとその構成をコードを意識することなく、シームレスにターゲット環境へ移行できます。Web Deployは移行作業の大部分を自動化するだけでなく、人的ミスの発生を防ぎ、作業時間の短縮にも大きく貢献します。
データベースに関する詳細情報については、関連ドキュメントをご参照ください。
ご意見やご質問がある場合は、フィードバックタブからお気軽にお寄せください。また、私たちとの対話も歓迎します。
-
WebからExcelへデータをインポートする方法【2つの簡単ステップで解説】
大きなMicrosoft Excelのワークシートを扱っていると、Web上のデータをExcelに取り込みたい場面がよくあります。実は、Webからのデータ取得はとても簡単で、手作業で入力するのに比べて大幅な時間短縮にもなります。この記事では、ExcelにWebデータを効率的にインポートできる、2つの簡単な手順をわかりやすい図解付きでご紹介します。 WebデータをExcelにインポートする2つの簡単なステップ ここでは、アルマーニ・グループの複数の営業担当者に関する情報が記載された大きなExcelワークシートがあると仮定します。列Bには営業担当者の氏名、列CにはID番号、列Dには各担当者が獲得した
-
ExcelでCSVファイルを複数のシートに結合する方法(初心者向けかんたん手順)
Excelで作業をしていると、複数のCSVファイルを同時に扱わなければならない場面によく出くわします。そうしたCSVファイルを1つのワークブックにまとめたいというニーズは非常に頻繁に発生します。この記事では、ExcelでCSVファイルを複数のシートに結合するための手順を、ステップごとにわかりやすく解説します。 サンプルのCSVファイルと、結合後の完成ワークブックはこちらから無料でダウンロードできます。 CSVソースファイル: 結合後の最終ファイル: CSVファイルを複数のExcelシートに結合する手順 ここでは例として、6年生・7年生・8年生それぞれの生徒の各教科の成績表が、3つ