ヤマムギ

growing hard days.

*

リザーブドインスタンスはじめました

   


このブログも2014年9月にはじめたので、もうすぐ3年。

1件~17件とばらつきはあるものの書かなかった月はなく続けられております。

開始当初(2014年9月)の構成

  • DNSはお名前.comさん
  • ApacheとMySQLをナウでヤングなレンタルサーバもロリポップさんに借りてました
  • バックアップはWordpPressのプラグインを使ってDropBoxに取っていました

レンタルサーバのプランは月額500円だったかと思います。
アクセスが増えるにつれてだいぶ重たくなってきたことと、AWSを勉強したいなと思い2015年5月にAWSに移設しました。

当時の話はEC2 Amazon LinuxのNginx+RDS MySQLにレンタルWebサーバーからWordPressを移設する(手順整理版)に書いてました。

現在の構成(2017年8月現在)

  • webサーバはEC2上のNGINX
  • データベースはRDSのMySQL
  • CloudFrontで配信して、ACM証明書で常時SSL
  • DNSはRoute53
  • サイトのステータス監視をLambda(python)で5分おきに監視し200以外はSlackへ通知
  • データベースのバックアップはRDSの自動バックアップで取得
  • RDSの再起動をLambdaで日次で実行し結果をSlackへ通知
  • EC2のバックアップはLambdaで日次でAMIを取得して結果をSlackへ通知
  • EC2 , RDSともにt2.micro
  • CloudFrontを立てるまではEC2でout of Memoryが発生するのでインスタンスタイプをt2.smallにしてました

現在は当ブログとあわせて4サイトを同じ環境で運用しています。

リザーブドインスタンス

この構成で1ヶ月ほど運用してみて課題はいくつかあるもののインスタンスタイプはt2.microでも問題なさそうだと思い、コスト削減のためリザーブドインスタンスを買ってみることにしました。

24時間稼働してますし、当面1年は続けているとも思うので。

勉強のためでもあるので他サービスもちょこちょこ使ったり、運用サイトが増えてアクセスも安定してさばけてという点は良いものの、月コストがおよそ8倍(約4,000円)になっているので、コスト最適化の検証もあわせてしていこうという目論見です。

EC2

EC2マネージメントコンソールの[リザーブドインスタンス]-[リザーブドインスタンスの購入]から申し込みます。

今回はスタンダードプラン、1年、前払いなしのt2.microを買いました。

リザーブドインスタンスの良いところは、インスタンスを限定して特定期間予約するのではなく、インスタンスタイプを限定して特定期間予約するという点。
今回の例言うと「1年間t2.microを割安で使うクーポン」を買って月々分割払いにしました、という事になるかと思います。

1時間あたり $0.016が $0.0124になりまして23%のコスト削減です。

RDS

RDSマネージメントコンソールの[リザーブドインスタンス]-[リザーブドインスタンスの購入]から申し込みます。

RDSも1年、前払いなしのt2.microを買いました。

1時間あたり $0.026 が $0.0208になりまして19%のコスト削減です。

請求書

リザーブドインスタンスをはじめて翌月の途中の請求書です。

EC2が744時間分で $9.23 、
RDSが744時間分で $15.48
月の初めにすでに課金されています。

それぞれその時間までは $0.00 となるので他にかかるコストはCloudFront , データ転送 , Route53 , S3(アクセスログなど)なので、それほど膨れ上がることもないかなと思います。

EC2とRDSで月 $6.54(120円レートで785円)の削減です。

t2.microのEC2とRDS(120円レートで月3,700円ぐらい)でこれだけの効果ですので、大規模な環境であればかなりのコスト削減が見込まれるんじゃないかと思います。


最後までお読みいただきましてありがとうございました!

【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。

【PR】 「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS , ,

ad

ad

  関連記事

AWS AmplifyでTodoアプリを作るハンズオンをやってみました

【お手軽ハンズオンで AWS を学ぶ】AWS Amplify で Todo アプ …

Amazon Linux2のPHPを7.2から7.3へアップデートしました

WordPressのサイトヘルスの推奨に従って使っていないテーマを削除したの推奨 …

kintoneでEveryoneに権限が設定されているアプリをAWS Lambdaで一括チェックする

こないだ、kintone Cafeでユーザーが自由に作成している環境だと、どんな …

ブログの画像を別アカウントのS3に移動するためにIAMロールでクロスアカウントアクセス

ずっと先延ばしにしていたのですが、このブログの画像はEC2から直接配信しています …

AWS Summit Tokyo 2017 聴講したセッションのメモ

2017年6月に参加しましたAWS Summitで聴講したセッションのメモを記し …

AWS EC2 でインスタンスにIPアドレスを紐付ける

AWS EC2で作ったサーバは何もしなければ起動するたびにIPアドレスが変わって …

AWS Data Pipelineを使ってDynamoDBのアイテムを全件S3バケットに書き出した

ちょっと試してみたくてやってみました。 手順はこちらのチュートリアルを参考にすす …

Cloud9でAWS CDK環境

最初ローカルに作ろうと思ったのですが、環境依存がというか、Macbookの環境で …

前からできましたっけ??CloudWatch Logsの保持設定を複数まとめて設定

AWSの個人アカウントで要らなさそうなリソースの断捨離をしてます。 CloudW …

Microsoft TeamsのIncoming Webhooksを使ってAWS Lambda(Python)からFeedlyの記事を自動投稿する

Microsoft Teamsの検証を始めましたので、Slackで自動化している …