先日ある会社でRuby on Rails中級者向け教育を行いました。中級者向けコースはまだメニューには乗せていませんが、入門教育よりさらに実践的なRuby on Railsでの開発を学んで頂くものですが、この中で作ったアプリをネット上のサーバーにインストールし動かす(デプロイする)章があるのですが、その際に使うサーバーをどうしたらよいだろうと考えたときに Amazon EC2 が思いつきました。
Amazon EC2 のコスト
普通のサービス用サーバーを借りると24時間動かしておきますので、Ruby on Railsが普通に動かせるスモール インスタンスだと1月約 5千円くらいです。
しかし、EC2の価格は1時間あたり$0.092という課金なので、教育を行うときだけ動かし。終わったら止めてしまうので安く運用出来そうです。
実際に今回の教育では、サーバー環境の準備 + 約7時間 x 3台 でトータル28時間使いました。
なんとCPU使用料は 約206円 でした! もちろん、ディスクやネットワークにも課金されるのですが、これも 約14円 !
環境作成の手間
今回は、受講者用 2台、講師用 1台 のサーバーを準備したのですが、RubyやMySQL,Nginx等のインストールは1回だけで済みました。
EC2ではインスールしたマシンのディスクからAMIという起動可能なイメージを作っておくと、そこから複数の同じソフトがインストールされたサーバーを起動する事が出来ます。これは便利です。
結論
手間もお金もかけずに受講者分のサーバーを用意できる、Amazon EC2 はとても教育向きだと思います。
今回行った教育のデプロイの章ではサーバーへのデプロイを体験する事が主な目的です。しかし受講者が自分の作ったアプリを自分のPC/Macだけではなく、たれでもアクセス出来るインターネット上のサーバーで動すことで受講者のモチベーションが上がり、教育効果も高いと感じました。