クラウドロックインとは何なのか?
クラウドサービスの利用が進むにつれて、特定のクラウドサービスの利用から移行が困難になるクラウドロックインの懸念も出てきています。
では、クラウドロックインとは何なのでしょうか?
Gigaom(2015.2.21)の記事「Cloud hosting services and the future of lock-in」では、クラウドロックインについて
- Code-level lock-in
- Architectural lock-in
の2つについて触れています。
Code-level lock-in
Google App Engine(GAE) の場合は、コードレベルでのロックインが懸念されています。GAEでは、システムにあわせて特殊な手法でアプリケーションを構築する必要があるとしています。このことは、自社の綿密なインフラ設計においてメリットがあるものの、根の深いロックインはあまりにも危険である点も指摘しています。
Architectural lock-in
コードロックインの影響は少ないものの、アーキテクチャーロックインのインパクトが大きい事例として「Amazon Web Services Lambda」をあげています。Lambdaは、Node.js でコードを書き、S3やKinesis、 DynamoDB上で処理することになり、他のクラウドサービスでは利用することができず、AWSのクラウドサービスにロックインされることになる点を指摘しています。
IaaSのレイヤにおいては、OpenStackに代用されるオープンソースのIaaS基盤を採用する事業者も増加傾向にあり、AWSのような垂直型モデルで展開する事業者を支持し前向きにロックインされるユーザと、OpenStackのようなオープンソースをベースとしたサービスを利用しロックインを回避したいというユーザと二分されていくのではと考えています。
マイクロサービスの行方
昨今注目が集まっているのが、本記事でも指摘されているマイクロサービスです。マイクロサービスは、システムを独立したサービスとしてユニット構成で分割するアプローチで、事業者にロックインされることなく、さまざまな事業者で利用できるメリットもあげられています。
マイクロサービスの展開では、「Azure BizTalk Microservices」を発表し、今後、Microsoft Azureをマイクロサービス志向のPaaSにしていく計画もたてているようです(関連記事)。
マイクロサービスの普及の後押しをすると見られているのが、コンテナ技術を採用したDockerで、分割管理やクラウド事業者間の移植性も容易になり、ロックインという概念も払拭されていく方向に進んでいく可能性があるでしょう。