クラウド移行戦略「7つのR」とは? それぞれのメリットと注意点は?:モダナイゼーションを成功させるには
レガシーアプリケーションのモダナイゼーションを成功させるにはどうすればいいのか。「7つのR」に沿ったモダナイゼーションの手法を紹介する。
クラウドサービスを活用しながら、従来使用してきたレガシーアプリケーションのモダナイゼーションを実施する手法として、「7つのR」に沿った進め方がある。調査会社Gartnerが提唱した基本となる戦略モデルを、Amazon Web Services(AWS)が拡張したものだ。それぞれ7つのRにどのように取り組めばいいのか、以降で具体的に見てみよう。
「7つのR」のメリットと注意点とは?
併せて読みたいお薦め記事
レガシーアプリのモダン化は喫緊の課題
7つのRは以下の通り。クラウドサービスを活用したモダナイゼーションを進める際の指針となるものだ。
- Rehost(リホスト)
- ソースコードの変更を最小限に抑えて、あるいはソースコードに変更を加えずにアプリケーションを移行する
- Relocate(リロケート)
- アプリケーションを仮想マシンのインフラごと別の稼働環境に移す
- Replatform(リプラットフォーム)
- アプリケーションのアーキテクチャを変えずにプラットフォーム(インフラ)を最適化する
- Refactor(リファクタリング)
- アプリケーションの挙動は保ったまま内部構造を変更する
- Repurchase(リパーチェス)
- レガシーアプリケーションの代わりに、クラウドサービス用のアプリケーションを導入する
- Retire(リタイア)
- レガシーアプリケーションの使用を完全に中止する
- Retain(リテイン)
- 既存のインフラ内でアプリケーションをそのまま維持する
Rehost(リホスト)
リホストはアプリケーションをモダナイゼーションするための最もシンプルな手法だ。「リフト&シフト」と呼ばれることもある。
リホストの分かりやすい例として、ローカルにインストールしたオフィススイートをSoftware as a Service(SaaS)に移行することが挙げられる。SaaSの利用によって拡張がしやすくなることがメリットの一つだ。SaaSはインフラを用意する必要がなく、移行コストを抑えられる可能性があることもメリットだ。
メリット
- 初期コストを抑制できる
- アプリケーション利用の中断が最小限に抑えられる
- 拡張しやすくなる
注意点
- リホストしたアプリケーションは、クラウド移行後に何らかの調整が必要になる場合がある
- アプリケーションとクラウドサービスの相性が悪いと、クラウドサービスのメリットが失われる場合がある
- 計画的な管理を怠ると、コストが増加する場合がある
Relocate(リロケート)
リロケートとは、オンプレミスの仮想化インフラからクラウドサービスに仮想マシンを移行することを指す。アプリケーションそのものではなく、アプリケーションをホストするインフラを変更するということだ。リロケートのメリットの一つは、データセンターを自社では用意せず、クラウドサービスベンダーのデータセンターを利用できることだ。
リロケートのメリットはコスト抑制だけではない。アプリケーションへのアクセスしやすさや拡張性、信頼性の向上といった利点もある。例えば、自社データセンターでMicrosoftのハイパーバイザー「Hyper-V」を使い、仮想マシン10台を運用している企業があるとする。その仮想マシンをクラウドサービス群「Microsoft Azure」に移行すれば、システムの拡張がしやすくなる。
メリット
- 移行が比較的簡単かつ迅速
- 必要な専門知識を最小限に抑えられる
- 自社データセンターを構築するコストが不要
注意点
- 費用が設備投資(CAPEX)から運用経費(OPEX)に変わる
- 移行先の環境で既存のアプリケーションがサポートされるかどうかを確認する必要がある
- 長期的なコストが発生する
Replatform(リプラットフォーム)
プラットフォーム(インフラ)を変更し、そのプラットフォームに応じてアプリケーションを最適化するリプラットフォームによって、アプリケーションのパフォーマンスの向上やセキュリティの強化などができる。コーディングするためのリソースが必要になることがあるが、それでも新しいアプリケーションをゼロから構築するよりは安価かつ迅速にモダナイゼーションが可能になる。
リプラットフォーム後のアプリケーションはクラウドネイティブアプリケーションとの連携が可能になる。重要なビジネスアプリケーションのリプラットフォームに取り組む場合は、アプリケーション開発者、システム管理者、クラウド管理者、データベース管理者などがチームを組み、密に連携することが重要だ。
メリット
- アーキテクチャが変わらないため、求められる専門知識は少ない
- パフォーマンス向上とコスト削減により、投資を回収しやすい
注意点
- リソースと時間の両面でコストがかかる可能性がある
- クラウドネイティブの機能が十分活用されないケースがある
- リファクタリングと比べると、長期的にはメリットが得られない可能性がある
Refactor(リファクタリング)
アプリケーションのリファクタリングでは、アプリケーションの主要なソースコードに大幅に手を加える必要があることがある。「リアーキテクティング」とも呼ばれる。主要ソースコードの変更によって、アプリケーションの機能を拡張したり、パフォーマンスを向上させたりできる。ただし、リファクタリングにはアプリケーションの設計の全面的な見直しが必要になる。そのため、他の手法よりも複雑で、コストもかかる。
重要なビジネスアプリケーションをリファクタリングする際には、高額な初期コストが発生する可能性がある。組織はリファクタリングによって得られるメリットとコストをてんびんにかけ、リファクタリングに踏み切るかどうかを慎重に判断しなければならない。とはいえ、ゼロからアプリケーションを作り直すことに比べたら、リファクタリングの方が安価になることが多い。
メリット
- クラウドネイティブの技術を実装し、最大限に活用できる
- 保守しやすいアプリケーションを作成できる
- 長期的にコストが削減される
注意点
- 初期コストが高い
- 移行作業が複雑になる
- 高度な専門知識が求められる
Repurchase(リパーチェス)
アプリケーションの再購入を指す。リファクタリングやリプラットフォームにコストがかかり過ぎると判断した場合は、再購入を検討するといいだろう。リパーチェスのメリットは、他の手法より労力が少なく、すぐに移行を完了させられる可能性があることだ。ただし、新しいアプリケーションを選定するための調査や、新しいアプリケーションへのデータ移行にリソースが必要になる。新しいアプリケーションのベンダー選定に当たり、製品に加え、技術サポートや移行支援サービス、保守サービスがあるかどうかも確認しておこう。
メリット
- クラウドサービスに最適化したコーディングを実装できる
- アプリケーションのモダナイゼーションが素早くできる
- 専門家のサポートを受ける選択肢が得られる
注意点
- ベンダーロックインが懸念される
- 新しいアプリケーションに関するITサポートやユーザー向けトレーニングが必要になる可能性がある
- パッチ(修正プログラム)適用や定期アップデート、機能強化はベンダーが管理する
Retire(リタイア)
アプリケーションのリタイア(廃止)を決めるに当たり、まず、そのアプリケーションが実際に使われているかどうかを確認する必要がある。アプリケーションがもはや使われておらず「不要」と判断したら、廃止プロセスに着手する。もし廃止するアプリケーションを利用している一部のユーザーがいる場合は、新しいアプリケーションのトレーニングを提供するといい。
例えば、遠隔拠点にレガシーの在庫管理システムが存在し、少数の従業員が利用しているといったケースが考えられる。利用中のユーザーに新しいアプリケーションの使い方をレクチャーし、1〜2カ月間程度のトライアル期間を設けて新しいアプリケーションの利用を本格開始すれば、スムーズに移行ができるだろう。
アプリケーションのリタイアは、基本的にそれほど多くの費用と時間を必要としない。ただし、新しいアプリケーションを用意し、レガシーアプリケーションがなくても業務を維持できることが前提になる。
メリット
- 使われていないアプリケーションを管理するリソースが解放される
- コストが低い、あるいは全くかからない
- サポートされていないレガシーアプリケーションによるセキュリティリスクをなくせる
注意点
- アプリケーションが利用されていないことを確認する必要がある
- リタイアが早過ぎると混乱を招く恐れがある
- 廃止するアプリケーションのデータを移行する必要がある
Retain(リテイン)
業務に必要だが、クラウドサービスへの移行候補としてはまだ現実的でないアプリケーションがある。例えば、リファクタリングやリプラットフォームを実施するには時間や費用がかかり過ぎたり、サードパーティー製アプリケーションでは必要な機能を実現できなかったりするアプリケーションがそれだ。
アプリケーションのリファクタリングやリプラットフォームを計画していても、優先度の高い他のアプリケーションの移行に専念しなければならず、移行が遅れるケースもある。アプリケーションを保持すると、費用負担も現状維持になるため、追加コストの発生を避けられる。
メリット
- クラウド移行に伴うコスト発生を回避できる
- アプリケーションのパフォーマンスや使用状況をゆっくり評価し、最適なモダナイゼーション手法を考えるための時間を得られる
注意点
- クラウドのメリット(スケーラビリティや耐障害性など)を生かせない
- 効率の低い既存のサポートを全て残すことになる
- コスト関連の変化が起きない
7つから最適な手法を選ぶには
アプリケーションのモダナイゼーション計画を検討する際は、コストとパフォーマンスが大きな検討事項になる。パフォーマンスの向上によってユーザー体験の改善につながる。しかし予算が限られている中、費用をどう抑えるかも考えなければならない。上記で紹介した手法から自社に最適なものを選ぶために、以下の質問が指針になる。
- アプリケーションのリファクタリングやリプラットフォームを実施するためのスキルがあるかどうか
- アプリケーションの大幅な再コーディングに投じる時間と予算があるかどうか
- 移行に時間や費用をかけるに値する長期的なメリットは何か
- 同時に移行する必要のあるアプリケーションは幾つあるか
- 移行先のクラウドサービスはどのようなものが最適か
- モダナイゼーションしたアプリケーションを利用するためのトレーニングはどの程度必要か
TechTarget発 先取りITトレンド
米国Informa TechTargetの豊富な記事の中から、最新技術解説や注目分野の製品比較、海外企業のIT製品導入事例などを厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.