ここ一年半くらい、このブログが乗っていたサーバをメンテンスしていませんでした。4月に Ubuntu 14.04 LTS が EOL になることと、サーバの面倒をみることに疲れてしまったので、このブログを CloudFront+Heroku に移しました。

さくらのVPSに引っ越したのは [2013-05-27-2] だったので、5年半くらい使っていたことになります。このブログ自体は静的コンテンツですが、nginx のログを fluentd に流したり、各種メトリクスを kibana や GrowthForecast で可視化したり、ちょっとしたアプリケーションを動かしたり、いろいろ実験や素振りをすることが出来ました。今までありがとう。

さて、引っ越し前後の環境の変化です。

引っ越し前(さくらのVPS)

仮想サーバのプラン 2G、石狩リージョン、年額 18,770 円
ドメイン さくらのドメイン、年額 1,852 円
OS Ubuntu 14.04 LTS
構成管理 knife-solo
デプロイ方法 GitHub の master ブランチに push すると、CircleCI 上で capistrano が自動デプロイ
ビルド方法 capistrano でのデプロイ時に chalow が CHANGELOG メモを HTML に変換
配信方法 静的な HTML ファイルを nginx が配信

引っ越し後(CloudFront + Heroku)

Dyno Type Hobby、年額 $7 x 12 = $84 ≒ 9,554 円
ドメイン AWS Route53、年額 $12 + ($0.5 x 12 ※) ≒ 1,976 円(※ HostedZone 代)
構成管理 Dockerfile + terraform
デプロイ方法 GitHub の master ブランチに push すると、Heroku が自動デプロイ
ビルド方法 docker build 時に chalow が CHANGELOG メモを HTML に変換
配信方法 静的な HTML ファイルを nginx コンテナが配信。かつ CloudFront を使って高速化

維持費は年間 9,000 円くらい削減できました。

単なる HTML の配信なので、GitHub Pages を使って維持費をゼロにしても良かったのですが、学習のために業務と同じ Heroku にしました。

CloudFront も使ったのは、Heroku のレイテンシー問題と、Heroku で HTTP2 使えない問題を回避するためです。

参考までに 4MB 程度のファイルは、以下のような転送速度でした。10 回の平均値です。

さくらのVPS(石狩) 0.511 sec
Heroku (US) 2.949 sec
CloundFront 0.338 sec ※

※ キャッシュを使えなかった場合は 2.265 sec とかです。

Heroku では New Relic APM Add-on が使えますが、Free plan であっても自身の外形監視ができます。今までサーバは Mackerel で監視していましたが、外形監視が出来ていなかったので、想定外のメリットでした。

あと、今回初めてドメインを引っ越したのですが、以下の記事が大変参考になりました。

さくらの管理画面は非常に分かりづらいので、Route53 に移行できて良かったです。ドメインまわりの理解が進みましたし、terraform でも管理出来ました。

所感

管理するサーバが減ったのは良いのですが、手頃な Linux マシンがなくなってしまいました。Docker は何か違うし、VirtualBox は起動するのが面倒です。

やはり作業マシンを Linux にするかあ…。

おまけ

これ知らなかった。 今回は 3,921 円戻ってくるみたいです。