日本の企業でも、年々、オンプレミスからクラウド環境へ乗り換える企業が増えてきており、一部の調査によると、企業のクラウド導入率は 6割を超えていると言われています。この記事では、既存のオンプレミスで実装しているVMwarenの仮想環境を、簡単に AWS に持っていける VMware Cloud on AWSについて解説します。
DXの推進により、企業におけるITの重要性は増すばかりです。オンプレミスでは対策が難しい災害対策やデータの分散保存など、既存のオンプレミスで動いているシステムを手軽にクラウドに移行でき、災害対策やデータ保全は AWSがやってくれる VMware Cloud on AWSに注目が集まっています。
- VMware は仮想PC環境を構築するソフトウェアである
- AWSとVMware がパートナーシップを結び VMware Cloud on AWS が使用可能に
- オンプレミス上の vSphere を EC2に展開するには、仮想マシンを作り直す必要がある
- VMware Cloud on AWSであれば、オンプレミスの仮想サーバーをクラウドに持っていける
- ハードは AWS が管理するた、サーバーや周辺設備の管理から解放される
目次
AWSとVMwareの革新的パートナーシップ
AWS(Amazon Web Services)とVMware、前者はクラウドの王者ですが、後者はオンプレミスの王者です。ライバルであるこの2社が手を取り合うという革新的パートナーシップが、2017年8月31日に結ばれました。
この出来事は、利用者へとてつもない利益をもたらします。本記事では、このパートナーシップが一体なぜそんなにメリットを生むのかという理由と、ほんのささやかながら実際に仮想マシンをAWS上にアップする方法を解説します。
VMwareとは何か
VMwareというのは、仮想PC環境を構築するソフトウェアです。これを使えばホストOSとは異なるゲストOSの仮想マシン環境を構築できます。クライアントでの実行に特化したものをVMware Workstationといいます。
VMwareは古くからあり、現在では無償で配布されています。個人でも、非営利目的ならVMware Workstationを使って自分のPCに複数のOS環境を立ち上げることができます。VMwareという単語を聞いて、そちらを思い浮かべる方も多いことでしょう。
しかしVMwareは、個人のPCに複数のOS環境を構築するのが主目的ではなく、もっと大規模なデータセンターレベルの仮想環境を構築するのが本来の目的です。オンプレミス環境内で複数の仮想サーバーを立てたり、仮想サーバーをコピーすることにより手早く新規サーバーを立てたり、といった感じです。
「大規模なVMware」という呼び方は若干稚拙ですがお許しいただくとして、大規模なVMwareにはvSphere/vSAN/NSXがあります。いずれも仮想環境を構築する要素群です。これらを使ってデータセンターを構築している企業は多数あります。
本来はライバルのAWSとVMwareの2社
本サイトの多数の記事で、AWSの各種サービス、とりわけEC2の使いやすさ、拡張のしやすさを解説してきました。いずれも、クラウド上のサービスであるが故のメリットです。
ところがVMwareは、オンプレミス市場を主戦場とする企業です。VMwareはAWSが誕生する以前から存在しており、その信頼度や技術レベルの高さには定評があります。AWSから見れば、オンプレミス市場は手を出したくても出せない市場でした。そのオンプレミス市場を支配するVMware社は、まさにAWSにとっては「はがゆい存在」だったことでしょう。
2社のパートナーシップ
この2社がお互いパートナーシップを結ぶと、双方に何のデメリットもない、といえるでしょう。この2社の共存共栄だけでなく、利用者側にもとてつもないメリットが生まれます。つまり、オンプレミスで築き上げた環境や運用ノウハウをクラウドに持っていくことができる…夢のようですね。
VMware Cloud on AWSとは
VMware Cloud on AWSとは、簡単に言ってしまえば「VMware vSphere/vSAN/NSXが実装されたサーバーを、AWS上で実行するサービス」となります。これだけだと全然伝わらないし、本記事で一番重要な内容なので、じっくり解説します。
VMwareで仮想サーバーを構築した環境において、ユーザーが仮想サーバーを立てたとします。仮想サーバーとはいえ、要は1つの物理ファイル、そのファイルをコピーすることによって複数の環境を作ることができます。
では、AWS上にVMware vSphere/vSAN/NSXが実装された環境があればどうでしょうか?ユーザーはオンプレミスの仮想サーバーファイル(OVA、vmdx等)をAWSに実装するだけですぐに仮想サーバーが実現できます。
もっと簡単に言うと、環境はどうであれ、仮想サーバーのファイルさえあればAWSクラウド上にサーバー環境を実現できる、ということです。オンプレミス上のサーバーをクラウドにすぐに移行できる、というわけです。
いつから日本で提供されるのか
VMware Cloud on AWSは2017年8月31日に発表されました。最初は米国西部 (オレゴン) リージョンのみでの提供です。AWSの公式アナウンスによると、東京リージョンでの提供は2018年の第4クウォーター(2019年1〜3月)です。
VMware Cloud on AWSのメリット
環境の新規構築なら、何もVMwareを使わなくても普通にEC2インスタンスを構築します。ではVMwareの仮想サーバーをAWSへ持っていくメリットは何でしょうか?
ハードの安定はAWSが責任を持つ
オンプレミスの仮想サーバーをクラウドに持っていくと、ハードウェアの安定性はAWS側がもつので、サーバーの実体(どちらかというと筐体的な意味)の運用コストを削減できます。サーバーの設置したファシリティ的な問題、つまり電源設備の定期点検やサーバー室の空調をきにする必要がなくなります。
AWSの各種サービスとの連携
EC2のマシンイメージからサーバーインスタンスを立ち上げても、VMwareのイメージから立ち上げても、同じサーバーのインスタンスです。そこからはまったく同じように扱えるので、EC2の他のサービスとの連携が可能になります。今までオンプレミスが故に使えなかったあのサービス、このサービスも・・・夢が膨らみますね。
未経験で、もっとクラウドを使った実績的に学習したい場合は、「ポテパンキャンプ」がおすすめです。最短5か月で未経験からプログラマー・エンジニアになれるプログラミングスクールです。
VMware Cloud on AWSが活躍するシーン
VMware Cloud on AWSが活躍するシーンを、ケーススタディ的に解説しましょう。
災害発生時
データセンターが災害に見舞われたときを考えましょう。施設ごと破壊されてしまうと元も子もありませんが、仮にサーバー機だけ起動できた場合、仮想イメージだけをサーバーから取り出し、VMware Cloud on AWSに乗せて暫定的に運用、といったことが考えられます。
オンプレミス環境の拡張の限界
オンプレミス環境の拡張が限界にきたとしましょう。新たに仮想サーバーを立てるのも、ハード的に限界・・・となると、VMware Cloud on AWSへの移行を考えるときです。仮想サーバーすべてをAWSへ移行し、それ以降は存分に環境を拡張できますね。
料金
料金は、1時間あたりでは$8.3681、年間契約ですと$51,987、3年間契約では$109,366となります。いずれも米国東部(バージニア)の料金です。
始め方
では実際に、データセンターの仮想サーバーをAWSへ移行しましょう・・・といっても、さすがにデータセンターを気軽にAWSへ移行できるわけではありません。代わりにクライアント環境の仮想マシンをAWSに移行してみましょう。VMware Cloud on AWSの利用とは根本的に異なりますが、それでも仮想マシンをアップする雰囲気は十分に伝わります。
おおまかな流れ
なんらかの方法でクライアント側の仮想マシンをova形式にエクスポートし、S3バケットにアップし、それをAMIイメージに変換してインスタンス作成、という順序になります。ただし、Linuxのディストリビューションとバージョンの制限がありますので注意して下さい。
- Red Hat Enterprise Linux 5.1 – 6.5
- Centos 5.1 – 6.5
- Ubuntu 12.04, 12.10, 13.04, 13.10
- Debian 6.0.0 – 6.0.8, 7.0.0 – 7.2.0
S3バケットの作成とアップロード
アップするVMwareのイメージを格納するための、S3バケットを作成します。名前は任意のもので結構です。またアップして環境構築した後は、不要なら消してしまいましょう。その方が課金されずに済みます。ここではS3バケット名をpotepanとして、Ubuntu.ovaをアップします。
できましたね。
これをAWS CLIにて、AMIイメージに変換しましょう。
ここからは一応は掲載しますが、雰囲気だけをつかんで頂けると幸いです。
cat << "_EOF_" > trust-policy.json { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "vmie.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals":{ "sts:Externalid": "vmimport" } } } ] } _EOF_ aws iam create-role --role-name vmimport --assume-role-policy-document file://trust-policy.json
cat << "_EOF_" > role-policy.json { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::potepan" ] }, { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::potepan/*" ] }, { "Effect": "Allow", "Action":[ "ec2:ModifySnapshotAttribute", "ec2:CopySnapshot", "ec2:RegisterImage", "ec2:Describe*" ], "Resource": "*" } ] } _EOF_ aws iam put-role-policy --role-name vmimport --policy-name vmimport --policy-document file://role-policy.json
cat << "_EOF_" > containers.json [ { "Description": "OVA Disk Image", "Format": "ova", "UserBucket": { "S3Bucket": "potepan", "S3Key": "Ubuntu.ova" } } ] _EOF_ aws ec2 import-image --description "OVA Disk Image" --disk-containers file://containers.json
このステップを経ると、AWSマネジメントコンソールのAMIの場所に、OVA形式からAMIへ変換した後のイメージが現れます。
あとは通常のEC2インスタンスの立ち上げと同じ要領です。
まとめ
本記事では、VMware Cloud on AWSを解説しました。すでにVMWareを使ってデータセンターを構築した環境なら、本記事で解説した内容を理解すれば即時にAWSへ移行することが可能です。ぜひこれを機に、移行を検討してみてください。確かに移行することは大変なことですが、移行したあとは別世界が待っています。ぜひ頑張ってみてくださいね!
冒頭でも述べたとおり、近年クラウドを活用する企業が増えています。近い将来、エンジニアにはクラウドの知識が必須で求められる時代も考えられます。
未経験から、クラウドを活用したエンジニアを目指すなら、AWS・Azure などのクラウド基盤を積極的に活用しているスタートアップ企業への転職も可能な「ポテパンキャンプ」がおすすめです。