Google Cloud: PaaSとIaaSの最良の部分を結集する
はじめに
クラウドネイティブなアプリケーションの構築を考える開発者にとって、最初の選択肢は重要です。それは、**Infrastructure as a Service (IaaS)**を基盤にするか、**Platform as a Service (PaaS)**を選ぶかということです。これまで、開発者は完全な柔軟性と制御を求め、IaaSを選ぶのか、高い生産性を求めてPaaSを選ぶのか、選択を迫られてきました。Googleは、開放性と柔軟性を持ちながらも自動化管理によって生産性を高めるという、両者の利点を融合することを目指しています。
Managed Virtual Machines (MVMs)の導入
Google Cloud Platform Liveでも発表された**Managed Virtual Machines**は、PaaSとIaaSの境界をなくすための一歩です。Managed VMsを使用すると、Google Compute Engineで稼働する仮想マシンを使用しながら、Google App Engineの自動管理機能やサービスの利点を享受できます。使い慣れたプログラミング言語や独自のコードを活用できるため、環境をより自由に利用することが可能です。特に、デバッグが必要な場合には、容易に仮想マシンにアクセスして問題を解決できる利点があります。
Managed VMsに移行するプロセスは非常にシンプルで、アプリの設定ファイルに「vm: true」を追加するだけで済みます。このようにして、開発者はより自由に技術を選択することができます。
Google Cloud Deployment Managerの紹介
次に、**Google Cloud Deployment Manager**の登場です。この新しいサービスは、クラウドプラットフォームリソースの宣言的なデプロイメントを可能にし、すべての設定を単一の真実のソースから自動的に行うことを目的としています。手動設定によってユニークなコンポーネントが生じることを防ぎ、維持管理やスケーラビリティを簡単にするためのベストプラクティスが統合されています。
Deployment Managerの機能には以下のようなものがあります。
- Compute Engine仮想マシンの属性の設定(インスタンスタイプ、ネットワーク設定、永続ディスクなど)
- ヘルスチェックやオートスケーリングの設定
- アプリケーションを起動するためのスタートアップスクリプト
このように、Deployment Managerは論理的なインフラに基づいて、自身のサービスを宣言的に記述し、Googleがその管理を代行してくれる仕組みです。
オペレーティングシステムのアップデート
近年のアップデートとして、Google Compute Engineに**SuSE**と**Red Hat Enterprise Linux**のサポートが加わりました。特にSuSEは現在一般利用が可能で、Red Hatに関しても先週オープンプレビューが発表されています。さらに、**Windows Server 2008 R2**の有限プレビューも開始しており、アクセスの申し込みが可能です。
シンプルで低価格な料金体系
Googleは料金体系の簡素化を目指し、**2014年4月1日**から複数の変更を実施します。具体的には、仮想マシンの価格を最大**53%**削減し、全般的に**32%**の価格引き下げを行います。使用が増加することでの割引制度も導入され、月の**25%**以上使用すると割引が開始され、全月使用するとさらに**30%**の追加割引が適用されます。
また、App Engineの料金も簡素化され、インスタンス時間は**37.5%**、専用メモリキャッシュは**50%**、Datastoreの書き込みは**30%**削減されているため、経済的に利用することができます。
まとめ
新たに発表されたManaged VMsとDeployment Managerは、クラウドの未来に向けた進展の第一歩です。これらのサービスは、開発者が求めている柔軟性や開放性、自動管理による生産性向上を同時に実現するものであり、今後のクラウド利用の幅を広げてくれるでしょう。興味がある方は、Google Cloud Platformに登録してみることをお勧めします。