AWS EC2 の エフェメラルディスクに Nginx の cache を置く

この記事は公開されてから7年経過しています。現在とは内容が異なる場合がありますのでご注意ください。
最新の記事や関連記事をお探しの方は下の「サイト内検索」で検索してみてください。

このブログも Nginx をつかっていますが、Nginx のキャッシュ機能を使えるというのが便利ですね。
AWS EC2 の Small 以上のインスタンスだと、インスタンスに付属しているエフェメラルディスクがあり、EBS に比べるとレスポンスもいいということなので、ここにキャッシュファイルを置くことにしました。

ですが、エフェメラルディスクはインスタンスが停止するとディスク内容がが消えるため、特定のディレクトリをインスタンス起動時に作成する必要があります。
なので、今回はそのスクリプトを作成してみました。

スクリプトを作成

/etc/init.d にシンボリックリンクをはる

service に登録する

これで、インスタンス起動時に nginx のスタートより前に /mnt/ephemeral/nginx ディレクトリが作成されます。
あとは Nginx の設定で cache のパスを /mnt/ephemeral/nginx/cache とかにすると、Nginx スタートの時に cache ディレクトリが勝手に作成されます。