コラム
はじめに
皆さんはクラウド移行に携わったご経験はあるでしょうか。クラウド移行は現代のビジネスにおいて重要な戦略的取り組みです。本記事では、クラウド移行の概要について解説します。
その中で、特に「リビルド」という移行方式に焦点を当て、クラウド移行とアプリケーションのモダン化の検討ポイントについて触れたいと思います。
クラウド移行
移行の主な目的とメリット
クラウド移行の主な目的は、ビジネスの効率性と競争力を高めることです。
特にコスト削減については移行方式並びにどの程度クラウド最適化を進めるかによって効果が変わってきます。下図の「クラウド最適化」の状態を目指して、継続的にコスト削減を意識していく必要があります。
移行方式と特徴
クラウド移行のプロセスは、単純にシステムをクラウドに移すだけではなく、移行方式の選択が必要となります。
クラウド移行方式は、そのアプローチによって分類されます。それぞれの移行方式は、組織のビジネスニーズ、費用、時間、リソース、技術的な制約により選ばれます。
クラウド移行の主要な方式はGartnerや各CSP(クラウドサービスプロバイダ)で定義されており、「○つのR」と呼ばれています。移行方式については以下の記事で解説していますので、是非一読してみてください。
次に、この中から「リビルド」について簡単に触れます。
移行方式「リビルド」
「リビルド」は、既存のアプリケーションを一から再構築するクラウド移行の方法で、各CSPの最新の技術とクラウドネイティブな設計を最大限に活用します。
リビルドは基本的に新しいアプリケーションの開発と同様で、従来のシステムの機能を再現しつつ、クラウドの機能を活用して新たな機能を追加することも可能です。これは、特に古いテクノロジーやアーキテクチャ(技術の老朽化)からの脱却、そしてクラウド特有の機能やサービスを最大限に活用する際に有効な移行方式となります。
また、リビルドと類似した移行方式に「リファクタ」があります。こちらは既存のコードを変更することでアプリケーションをクラウドに適応させる移行方法ですが、その外部的な動作は変更しません。こちらもクラウド移行の有効な選択肢の一つですが、本記事内でのご紹介は割愛します。
アプリケーションのモダン化
アプリケーションのモダン化(Application Modernization)とは、レガシーシステムや古いテクノロジーを使用しているアプリケーションを、現代の技術やアーキテクチャに更新するプロセスを指します。
これには、マイクロサービスアーキテクチャの導入、コンテナ化、DevOpsの採用など、多くの手法や技術が含まれることがあります。モダン化の主な目的は、アプリケーションのパフォーマンスと効率性を向上させ、ビジネスのアジリティを強化することです。
「リビルド」によってクラウド移行する際にモダン化についても同時に考えたほうが良いでしょう。一度に全ての要素をモダン化することが難しい場合は、段階的にモダン化を進めます。
移行とモダン化のイメージは以下の通りです。
メインフレーム構成とモノリス
レガシーシステムの中でもオープン構成やメインフレーム構成で移行の難易度は大きく変わります。ここでは、モノリシックなシステム(以下、モノリスとします。)について簡単に触れます。
企業で昔から稼働しているシステムでは、移行前のオンプレミスシステムがオープン構成ではなくメインフレーム構成であるケースもあります。メインフレーム構成はモノリシックなシステム構成が主流で、高度にカスタマイズされて複数の業務アプリケーションが統合されている場合は、想定している以上にリソースや時間を要する可能性があります。
モノリスは、ソフトウェアアプリケーションの設計パターンの1つで、そのアプリケーションのすべての機能が単一のプログラム(モジュール)に統合されているシステムを指し、すべての機能が一つのプログラム内で管理されています。
モノリスは、開発とデプロイメントがシンプルであるという点で一定の利点を持っています。すべてが一つの場所に集約されているため、開発者は別々のサービスを組み合わせて動作させるための追加の調整が必要ありません。
しかし、モノリスには以下に挙げるような欠点があります。モノリシックなアプリケーションの欠点を克服し、スケーラビリティと柔軟性を提供するために、多くの組織がマイクロサービスアーキテクチャに移行する流れとなっています。
- システム全体をスケールアップするのが難しい。
- 一部の機能に問題があった場合でも、システム全体をデプロイし直す必要がある。
- 一部の機能を変更する際に、コード全体に影響を及ぼす可能性がある。
モジュラーモノリス
モノリスを一度にマイクロサービス化できれば問題ないのですが、コストやスケジュール、移行の難易度など様々な課題があり、まずはモジュラーモノリス(Modular Monolith)を採用するケースも検討したほうが良いでしょう。ここでは、モジュラーモノリスの考え方について簡単に触れます。
モジュラーモノリスは、一種のソフトウェア設計パターンで、モノリシックなシステムの構造を保持しつつ、システムを互いに関連性のある複数のモジュールに分割するものを指します。各モジュールは独自の機能を持ち、アプリケーションをモノリスのまま疎結合化します。
この設計パターンは、モノリシックアーキテクチャとマイクロサービスアーキテクチャの間のバランスを取るような形で用いられます。モジュラーモノリスは、モノリスの開発やデプロイメントの容易さを維持しながら、マイクロサービスのような柔軟性とモジュール間の疎結合を実現します。
リビルドによる移行を検討する際に、一度にクラウド最適化の状態に移行することが難しい場合の設計パターンの候補の一つとして知っておいたほうが良いでしょう。
移行方式「リビルド」と検討ポイント
さて、これまでの内容を踏まえてリビルドを選択する際のポイントを以下に挙げます。
これらのポイントをよく検討した上で、移行計画を策定してください。
簡単ではありますが、ここまででクラウド移行とモダン化についてざっくりと触れてきました。実際の移行プロセスでの検討項目については、またの機会に紹介したいと思います。
まとめ
クラウドへの移行は、現代のビジネスでデジタルトランスフォーメーションを達成するための重要なステップとなっています。しかしながら、その過程は単純なものではありません。移行方法の選択は、ビジネスの特定のニーズや目標に対して最適な結果をもたらすための重要な決定です。
移行方式の一つであるリビルド方式では、クラウドの最新の技術とクラウドネイティブな設計を最大限に活用するために、アプリケーションを基本的にゼロから再構築します。クラウドの利点を最大限活かすことが可能ですが、リビルドは時間、コスト、専門知識を必要とし、ビジネスに一時的な影響を及ぼす可能性があるため、移行前に十分な検討と計画が必要です。
全ての選択肢を詳細に検討し、適切なパートナーと協力してプロジェクトを遂行することで、クラウド移行のプロセスをスムーズかつ効果的に進めることができます。
ので、移行についてお悩み中の方は是非ご相談ください。
今回は以上です。ではまた。
-
PICK UP
ピックアップ
-
ピックアップコンテンツがありません
-
RANKING
人気の記事
-
-
1
EKSのノードオートスケーラーとしてKarpent…
EKSのノードオートスケーラーとしてKarpenterを試す
2022/08/17
-
2
~マルチアカウントのベストプラクティスを手軽に実現…
~マルチアカウントのベストプラクティスを手軽に実現~AWS Control To…
2019/09/27
-
3
EBS CSI driverをEKSアドオンとして…
EBS CSI driverをEKSアドオンとして導入してみた
2022/09/27
-
4
Infrastructure as Codeを理解…
Infrastructure as Codeを理解する(第2回)AWS Clou…
2020/11/27
-
5
Ciliumを使ってマルチクラウドのKuberne…
Ciliumを使ってマルチクラウドのKubernetes間でService Di…
2024/07/25
-
-
ARCHIVE
アーカイブ
-
- July 2024 (1)
- January 2024 (1)
- December 2023 (2)
- June 2023 (2)
- May 2023 (1)
- April 2023 (1)
- March 2023 (2)
- February 2023 (2)
- January 2023 (1)
- December 2022 (2)
- October 2022 (2)
- September 2022 (2)