Google Compute Engineのハンズオンを受けました。
素人なのでEC2との違いを上手く語れませんが、 Webコンソールも軽くて使いやすいし、 EC2ほどややこしい設定をしなくて済むので、 ちょっとした利用だったらむしろ使いやすいかもと思いました。
さて、とりあえずメジャーなIaaSの選択肢が増えたわけですが、 クラウドの利点として、同じ設定のマシンを複製してたくさん作れるというのがあります。
EC2にしろcompute engineにしろ、他プラットフォームへのインスタンスの移植はできません。
簡単に言えば、ベンダーにロックされてしまいます。
そこでDockerです。
Dockerで設定などを保存しておくと、Dockerが入っているマシンであればEC2でも、Googleでも、ローカルでも同じ環境を作れます。
これによってベンダー依存がなくなり、万が一EC2がサービス辞めても、Googleが値上げしても、すぐに退避できるわけです。
さらに、オンプレの環境だろうがVMが使えればDockerは立てられるので、 費用はもっと安くなるかもしれません。
Build Once, Run Anywhere
の概念でコンテナごと移植ができると、もはやJavaのメリットがごっそり消えるんじゃないかとすら思います。
どんな言語でもDockerImageごと乗っけちゃえば動かせるわけですし。
おまけ、chef
chefはなにがいいのかまだ全然わかっていませんが、先輩いわく、
スナップショットとかを使おうが、万が一のために環境構築の手順は残しておくべきで、chefのスクリプトとして残せれば再現も楽でお得じゃない?
ということでした。