s12 windows server 2003 sql server 2000 sql server 2005 を azure 仮想マシンへ移行

33
1

Upload: microsoftazurejapan

Post on 01-Jul-2015

1.280 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

1

Page 2: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

更新履歴

• 以下の日付でドキュメントを更新、確認しています。

2

バージョン

1.00 2014/6/30 ・初版リリース

1.10 2014/9/30 ・2014年9月現在の情報に更新。

1.20 2015/1/31 ・2015年1月現在の情報に更新。

Page 3: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

目次

• Windows Server 2003 のサポート終了と移行

• Classic ASPを Azure 仮想マシン へ移行

• ASP.NET を Azure 仮想マシン へ移行

• SQL Server 2000/2005 をAzure 仮想マシンへ移行

3

Page 4: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

4

Page 5: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

Windows Server 2003 のサポート終了と移行

• Windows Server 2003 の延長サポートが 2015年7月に終了するため、OSのバージョンアップを含む移行が必須

• 移行先のサーバーOSは、Windows Server 2008 R2 以降を検討

• 移行に際しては、運用や今後の情報戦略も検討した上での環境選択が必要

• 仮想環境での運用コスト削減は検討必須

5

Page 6: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

移行先の選択肢としての Azure

• 移行先として、柔軟にサーバーやストレージの調達が可能で、社内とセキュアなVPN接続も出来る Azure 仮想マシン は検討対象といえる

• 旧資産を Azure 仮想マシン 上に移行することで、ハードウェア購入費・ハードウェア障害対応が不要になり、運用コストの削減が期待できる

• ハードウェアのリース切れもなく、調達のスピードも速い

• ハードウェアやソフトウェアライセンスを固定資産から変動費化することが可能であり、経費削減が期待できる

6

Page 7: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

Classic ASP, ASP.NET, SQL Server の移行

• Classic ASP

• ASP.NET

• SQL Server のシステム データベース

7

1 : .NET Framework 2.0 のメインストリームサポートは既に終了している参考:マイクロソフト プロダクト サポート ライフサイクル http://support.microsoft.com/lifecycle/?c1=501&ln=ja

Page 8: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

8

Page 9: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

Classic ASP を Azure 仮想マシンに移行

• Classic ASP は IIS 全てのバージョンでサポートされており、Windows OS の一部としてリリースされているために OS のサポートサイクルに準拠する1

• イントラネットで利用している資産を移行する場合、認証方式の変更が必要な場合がある。例えば、Windows 認証を利用する場合、VPN接続が必要になる2

9

1 : Active Server Pages (ASP) support in Windows http://support.microsoft.com/kb/26690202:Windows 認証を設定する (IIS 7) http://technet.microsoft.com/ja-jp/library/cc754628.aspx

Page 10: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

1. Windows Server の設定

2. Windows Server に IIS の機能を追加

3. IIS のセットアップ

4. Classic ASP 実行モジュールの移行

Azure 仮想マシン上に Classic ASP を移行

10

移行元(オンプレミス)旧資産から Azure 仮想マシン へ移行

Microsoft Azure

Windows Server 2003 等

IIS 6 等

Classic ASP (*.asp, *.asa)

Page 11: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

1. Windows Server の設定

• 管理ポータルから仮想マシンを作成

• 日本語パックをインストール

• 時刻を GMT から JST に変更

11

コントロールパネルから[日本語]パックを追加し、[日本語]を第一言語に設定し、OS を再起動する

日本のタイムゾーンに変更する

Page 12: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

2. Windows Server に IIS の機能を追加

• [役割と機能の追加] から IIS 機能と Classic ASP 機能を追加し、Classic ASP が実行できる環境をセットアップ

12

IIS で Classic ASP Web サイトを構築する http://technet.microsoft.com/ja-jp/library/hh831387.aspx

IIS の役割を追加

Classic ASP の実行ランタイムを追加

Page 13: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

3. IIS のセットアップ

• IISマネージャーでClassic ASP アプリケーションが稼働する環境を設定

13

1 :セキュリティを弱める設定となるため、システムのセキュリティポリシーを確認すること2 :32bit 版のサードパーティライブラリや COM ライブラリを利用している場合、本手順を利用して別途稼働は検証する必要がある参考:IIS 7.0 および IIS 7.5 上で Classic ASP アプリケーションを実行する http://technet.microsoft.com/ja-jp/library/ee155445.aspx

② 親パスを設定可能にする1

④ 32bit アプリケーションを有効化する2

③ マネージ パイプラインモードを[クラシック]に変更する

①エラーをブラウザ側に返す1

※本番環境で必要かは要検討

Page 14: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

4. Classic ASP 実行モジュールの移行

• Classic ASP の実行モジュール( *.asp, *.asa 等)をコピーで移行可能だが、アプリケーションの実行形式、実行権限が異なるため以下の設定が必要

14

1:IIS 7.0 でのサイト、アプリケーション、および仮想ディレクトリについて http://technet.microsoft.com/ja-jp/library/dd939093.aspx2:セキュリティを弱める設定となるため、システムのセキュリティポリシーを確認すること

アクセス許可設定を追加アプリケーションの変換

Page 15: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

15

Page 16: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

ASP.NET Web フォームと ASP.NET MVC の概要

• .NET Framework 3.5 SP1 より、従来型の ASP.NET Web フォームに加え、HTML5 対応が容易な ASP.NET MVC が利用可能

16

Page 17: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

.NET Framework の各バージョンへのサポート

• .NET Framework は各バージョンでインストール可能な OS が異なるため、古い資産はバージョンアップ対応が必要

• .NET Framework のバージョンアップによって

Windows Serverのバージョン

.NET Framework のバージョン1

1.0 1.1 2.0 3.0 3.5 4 4.5

Windows Server 2003(R2)

Windows Server 2008(R2)

Windows Server 2012(R2)

Windows Server 2012, Windows Server 2012 R2 は .NET Framework 1.x は利用できない

詳細は .NET Framework のバージョンおよび依存関係 http://msdn.microsoft.com/ja-jp/library/bb822049%28v=vs.110%29.aspx を参照

15

Page 18: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

ASP.NET 資産のバージョンアップ方針

大きく二つに分かれる方針

• 既存資産移行の改修コストを抑えたい場合は、ASP.NET のランタイムを .NET Framework 3.5 SP1 に指定して最低限の改修を実施1

• 今後の機能拡張を見据え、運用コストを抑えたい場合は、最新のランタイム(.NET Framework 4.5.1)を指定し、ASP.NET MVC を利用して刷新する2

18

.NET Framework

4.0

または

.NET Framework

4.5

.NET Framework

2.0

.NET Framework

3.0

.NET Framework

3.5

16

■機能拡張が少ない

=改修コストを抑えたい

.NET Framework のサポート期限と改修量を考慮し、.NET Framework 3.5 SP1 へ最低限の改修

■機能拡張がある

=運用コストを考慮した適切な改修

サポート期間が最も長い.NET Framework 4.0 or 4.5 の選択およびASP.NET MVC へのアーキテクチャ変更を検討

Page 19: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

.NET Framework 3.5 SP1 に指定、最低限の改修

• .NET Framework 1.x からのアーキテクチャ変更に伴う注意点1,2

• IIS 7 以降のアーキテクチャ変更に伴う注意点1

• サードパーティ DLL 利用時のバージョン互換に関する注意点1

19

1: .NET Framework 1.0/3.5 移行ホワイトペーパー http://www.microsoft.com/ja-jp/net/migration/document35.aspx2: .NET Framework 2.0 での重大な変更点 http://msdn.microsoft.com/ja-jp/library/Cc825631

17

Page 20: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

最新の.NET Framework, ASP.NET MVC への移行

• HTML5 対応、マルチデバイス対応

• 開発効率が向上

• オープンソース化されており内部ロジックの理解が可能

1: ASP.NET ディベロッパー センター ASP.NET MVC とは? http://msdn.microsoft.com/ja-jp/asp.net/aa336581.aspx2: CodePlex http://aspnetwebstack.codeplex.com/3: GitHub https://github.com/ASP-NET-MVC/aspnetwebstack

18

Page 21: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

21

Page 22: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

SQL Serverのバージョンと互換性レベル

• SQL Server 2000の互換性レベルはSQL Server 2008 R2までしかサポートされていない

• 移行がサポートされている互換性レベルであれば、下位バージョンのSQL Serverのデータベースを以下の方法で移行可能

22

SQL Serverのバージョン移行をサポートする互換性レベル

2000 (80) 2005 (90) 2008 (100) 2012 (110) 2014 (120)

SQL Server 2000 ○ - - - -

SQL Server 2005 ○ ○ - - -

SQL Server 2008 R21 ○ ○ ○ - -

SQL Server 20121 - ○ ○ ○ -

SQL Server 20141 - ○2 ○ ○ ○

1 : 仮想マシンのギャラリーでSQL Serverインストール済みのイメージとして提供されているバージョン2 : 互換性レベル90からの移行をサポートしているが、90での動作はサポートされていないため、移行時に自動的に互換性レベルが100に更新される

20

Page 23: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

バックパップ/リストアでの移行

• 移行元でバックアップを取得し移行先でリストア1

• バックアップはオンラインで取得できるため移行元の停止は不要

• 移行先がSQL Server 2012 SP1 CU2以降であれば、BLOBストレージにバックアップをコピーしてリストアも可能2

23

1 : バックアップと復元によるデータベースのコピー http://technet.microsoft.com/ja-jp/library/ms190436.aspx2 : Windows Azure BLOB ストレージ サービスを使用した SQL Server のバックアップと復元

http://technet.microsoft.com/ja-jp/library/jj919148.aspx

移行先仮想マシン

移行元SQL Server

データベース

バックアップ

(.bak)

BLOB

仮想ディスク

取得したバックアップを仮想マシンに接続された仮想ディスクまたは

BLOBストレージにコピー

リストア

Microsoft Azure

Page 24: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

デタッチ/アタッチでの移行

• 移行元でデータベースをデタッチし移行先でアタッチ1

• デタッチをした際にデータベースのエントリが削除されるためオフラインになる

• 移行先がSQL Server 2014以降であれば、BLOBストレージにデータベースのファイルをコピーしてアタッチすることも可能2

24

1 : デタッチとアタッチを使用したデータベースのアップグレード (Transact-SQL) http://technet.microsoft.com/ja-jp/library/ms189625.aspx2 : レッスン 6: 内部設置型のソース コンピューターから Windows Azure のターゲット コンピューターにデータベースを移行する

http://technet.microsoft.com/ja-jp/library/dn466433(v=sql.120).aspx

移行先仮想マシン

移行元SQL Server

BLOB

仮想ディスク

Microsoft Azure

データベースをデタッチし仮想ディスクまたは

BLOBにコピー

アタッチ

データファイル(mdf)

ログファイル(ldf)

Page 25: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

SQL Server 2000からの移行

• 移行先のバージョンを決定

• SQL Server 2008 R2に移行する場合

• SQL Server 2012/2014に移行する場合

25

Page 26: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

SQL Server 2008 R2を経由して最新バージョンへ移行

• SQL Server 2008 R2には、バックアップ/リストアまたはデタッチ/アタッチでデータベースを移行

• その後、互換性レベルを2008 R2 へ変更• 最新バージョンへ、バックアップ/リストアまたはデタッチ/アタッチでデータベースを移行

26

SQL Server 2008 R2へ移行後互換性レベルを変更 互換性レベル変更後に

バックアップ/リストアまたは

デタッチ/アタッチで最新バージョンへ移行

Page 27: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

スクリプト+BCPを使用しての移行 (1)

• テーブルやストアドプロシージャの定義情報をスクリプトの生成機能で作成し、移行先のSQL Serverでスクリプトを実行して移行

27

移行用のSQL スクリプトを生成

移行先で生成したスクリプトを実行し

データベースの定義を移行

Page 28: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

スクリプト+BCPを使用しての移行 (2)

• データをBCPコマンドでエクスポートして移行

28

移行元で out オプションを使用してデータをエクスポート

移行元で in オプションを使用してデータをインポート

Page 29: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

システムデータベースの情報の移行

• システムデータベースについてはバックアップ/リストア、デタッチ/アタッチで異なるバージョンへ移行することはできないため、システムデータベースに含まれる以下の情報は個別に移行する

• これらの情報は以下の方法で移行することが可能

29

移行元SQL Server

Microsoft Azure

移行先SQL Server

Integration Services タスク実行環境

移行元SQL Server

移行用スクリプト

ログイン移行用スクリプト

SQL Server Agentジョブ

移行用スクリプトスクリプトをエクスポート

エクスポートしたスクリプトを移行先で実行

Microsoft Azure

移行先SQL Server

タスク実行環境を間に挟むことでインスタンス間が直接通信できなくても移行可能

Page 30: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

Integration Servicesタスクで移行

• ログイン転送タスク1/ジョブ転送タスク2による移行• ログイン移行タスクでは、ログインにランダムなパスワードが設定され移行されるため、移行後にパスワードの再設定が必要

301 : ログイン転送タスク http://technet.microsoft.com/ja-jp/library/ms137870.aspx2 : ジョブ転送タスク http://technet.microsoft.com/ja-jp/library/ms137568.aspx

ログイン転送タスク ジョブ転送タスク

Page 31: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

スクリプトで移行

• SQL Server Enterprise Manager(2000)/SQL Server Management Studio (2005)のスクリプト作成機能で移行用スクリプトを作成1

• ログインの移行用スクリプトでは。パスワードは移行されないため移行後に再設定が必要

311 : スクリプトの生成 (SQL Server Management Studio) http://technet.microsoft.com/ja-jp/library/hh245282.aspx

SQL Server Enterprise Managerからスクリプトを作成 SQL Server Management Studioからスクリプトを作成

Page 32: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

ログイン移行時の注意点

• ログインのSIDを移行しないと孤立ユーザーとして認識されてしまう1

• ログイン転送タスクで移行する場合は、ログイン転送タスクのプロパティからCopySidsをTrueにして同一のSIDで移行2

• スクリプトで移行する場合は、CREATE LOGINで移行元のSIDを指定する3

32

1 : 孤立ユーザーのトラブルシューティング (SQL Server) http://technet.microsoft.com/ja-jp/library/ms175475.aspx2 :[ログイン転送タスク エディター] ([ログイン] ページ) http://technet.microsoft.com/ja-jp/library/ms188955.aspx3 : CREATE LOGIN (Transact-SQL) http://technet.microsoft.com/ja-jp/library/ms189751.aspx

ログイン転送タスクのCopySidsの設定

CREATE LOGIN [azurestudy] WITH PASSWORD=N'studyP@ss',SID=0xAE4064BB422DC7469583EB9125548654

CREATE LOGIN でSIDを指定したログインの作成

Page 33: S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行

33