検索
特集/連載

「他のクラウドでも動くアプリを作る」のはなぜ必要か? ただの無駄な場合もクラウドの「ベンダーロックイン」を避ける方法【第3回】

アプリケーションの移植性を高めることは、ベンダーロックインの影響を抑える方法の一つだ。ただしむやみに移植性を高めても、結局は無駄になることもあるという。どういうことなのか。

Share
Tweet
LINE
Hatena

 クラウドサービスを利用する際に気を付ける必要があるのが、特定ベンダーに過度に依存する「ベンダーロックイン」だ。ベンダーロックインの影響を抑えるには、アプリケーションの移植性を向上させることが有効な手段となる。移植性とは、アプリケーションが他のインフラでも変更なしで稼働できることだ。

移植性を高めることは常に正解なのか?

 アプリケーションの移植性を高めると、インフラ移行時に必要な変更の数を抑えやすくなる。システムインテグレーターのEnsonoでバイスプレジデントを務めるオリバー・プレスランド氏は、自社の各アプリケーションの設計や依存関係(動作するために他のアプリケーションを必要とすること)、利用中の技術に注目することを勧める。次にこうした要素がアプリケーションの移植性にどのように影響するのか、将来的にクラウドサービス間でアプリケーションを移行させる場合にどのような影響を及ぼすのかを検討する。

 IT調査会社Everest Groupのプリンシパルを務めるユガル・ジョシー氏は、そもそもアプリケーションの移植性を高める必要があるかどうかを考えることを推奨する。例えば、これまでにアプリケーションのインフラを変えた頻度を調査するとよいという。変えたことがなければ、移植性を考える必要性はそれほどないと考えられる。「クラウドサービス間で重要なアプリケーションを移行させる例は、非常に限られている」とジョシー氏は主張する。

移植性を高めるための具体策とは

 アプリケーションの移植性を高める方法は幾つかある。アプリケーション開発ツールベンダーStyraの最高技術責任者(CTO)、ティム・ヒンリクス氏は、特定のクラウドサービスに依存しないツールを使うことで、アプリケーションの移植性を高めることを勧める。クラウドサービスを変えても、セキュリティやコンプライアンス、業務管理の手法を変更しないで済むようにするためだ。例えばHashiCorpのIaC(Infrastructure as Code:コードによるインフラの構成管理)ツール「Terraform」は、異なるIaaS(Infrastructure as a Service)を横断して、仮想マシンなどのリソースをプロビジョニング(準備)できるようにする。

 ヒンリクス氏の経験によると、アプリケーションの移植性を高める作業は、クラウドサービスの導入に掛かる時間やコストを増大させる可能性がある。ベンダーロックインによるデメリットと、アプリケーションの移植性を高める際に掛かる負荷を比較検討するとよい。そうすることで、クラウドサービスに移すべきアプリケーションや、移植性を高めるべきアプリケーションを判断しやすくなる。


 第4回は、ベンダーロックインの影響を抑えるための方法をさらに説明する。

TechTarget発 世界のインサイト&ベストプラクティス

米国TechTargetの豊富な記事の中から、さまざまな業種や職種に関する動向やビジネスノウハウなどを厳選してお届けします。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る