昨今のAWSのトレンド
EC2やS3を始め様々なサービスがありますが、それら100以上のサービスを組み合わせていかに堅牢なシステムを作るかがトレンドになっています。また、後述するマネージドサービスを使えば高負荷に耐えられる信頼性の高いシステムを少ない手間で運用することができます。
AWSの構成
AWSは下記のような構成になっており、AWSで仮想サーバを構築する場合は「それぞれどのリージョンのどのアベイラビリティゾーンであるか」を意識する必要があります。
リージョン
世界17箇所の分散されたデータセンター郡で構成されています。(例えば、東京リージョンや、バージニアリージョン等)、リージョンごとに使えるサービスが異なるので事前に使いたいサービスがそのリージョンにあるかどうかをチェックすることが重要です。基本的に最新機能はアメリカのリージョンで利用可能になり、徐々に他の地域のリージョンでも利用可能になっていくイメージになります。
アベイラビリティゾーン(AZ)
物理的に相当な距離が離れた独立したファシリティ(ネットワーク電源網も含めて)を用いており災害による耐障害性を高めています。実際に、Amazonでは複数のAZにAmazon EC2インスタンスを配置する等の工夫をしています。
どのリージョンやAZに仮想サーバを配置するか。
下記のことを考慮します。
- エンドユーザーに近いリージョンを選びレスポンス速度を向上させる。(日本にいるなら「東京リージョン」が良い。)
- 耐障害性を高めるために同じリージョンでもサーバ構成をばらけさせる。
「アンマネージドサービス」と「マネージドサービス」
AWSのサービスは二つに分かれます。
アンマネージドサービス
自分で自由にカスタマイズできるサービスです。ほぼ自分で責任を持たなくてはならなくなります。
マネージドサービス
ソフトウェアやセキュリティアップデート等の保守作業をやってくれるサービスです。バックアップや二重化等の障害対策までお任せすることが可能です。自分で責任を持つ範囲が狭くなります。
マネージドサービスの落とし穴
OSやミドルウェアがアップデートされるので上で動いているアプリも動作するかどうかの保守が必要になります。アンマネージドサービスももちろん保守は必要になりますがインフラ部分の保守を自分たちでコントロールできないので思わぬトラブルになる可能性があります。
費用の見積もり
従量課金であり定額での運用ができないです。AWS簡易見積もりツール等も世の中にはありますのでどのくらいの費用がかかるのかはそうしたツールで見積もると良いでしょう。使った分だけ課金されるので費用対効果には優れています。
無料枠
AWSを勉強をするにあたり実際に触ってみるのが一番早いですよね。
そんな中、AWSには2019年11月現在AWSアカウント作成後の12ヶ月の無料枠があると言うことが調べたらすぐにわかると思いますがこれがどう言うことなのか調べてみました。
どのように課金されるのか。
事前にカード情報はAWSに登録しておきます。無料枠を超えて使ってしまった場合やサービスを立ち上げたまま13ヶ月目に到達してしまった場合はそのカードから自動で課金されるようになります。
料金の締はいつ?
月末締めのようです。基本的に締めが確定した後は何があっても料金が覆ることは無いようです。
現在の請求額を知るには?
AWSのマネジメントコンソールに「請求ダッシュボード→コストエクスプローラ」というものがありそこで現在の請求金額を確認することが可能です。
サービス別無料枠
EC2であれば
「何でも無料!」と言うわけではなく無料には以下の条件があるようです。
- そもそも無料のインスタンスは「t2.micro」のみ
- 登録後1年間は「使用時間が毎月750時間までは無料」
- サーバの種類による(LinuxサーバやWindowsServerは普通に使えるようです。)
使用時間が毎月750時間までは無料
1ヶ月31日として24時間インスタンスを起動していても、744時間で常に無料です。ただこれは1台あたりに割り当てられいる無料時間では無いようですので、複数インスタンスを起動していた場合は有料扱いになります。1台のインスタンスのみを使おうとされている方は実質この制約はあって無いようなものでしょう。
S3であれば
- 5GBのストレージ容量まで無料
- 1ヶ月あたり20000回のアップロード(Getリクエスト)と2000回のダウンロード(Putリクエスト)
RDSであれば
- そもそも無料なのはインスタンスタイプ「db.t2.micro」のみ
- 1ヶ月あたり750時間
- 20GBのディスク容量
- 20GBのスナップショット(バックアップ)
課金額の目安
課金額の目安は下記のような感じらしいので仮に料金が発生していて忘れていたとしてもそんなに大層な額請求されるわけでは無いですが、チリも積もれば山となってしまうので不用意な課金には気をつけましょう。
- 利用時間50時間超過で1ドルくらい
- Elastic IPアドレス、1アドレスあたり0.005ドルくらい。(ただしEC2インスタンスが起動していたら無料です。)
課金されないようにするための対策
上限が近くなったら飛ぶ通知メールの設定をする。
上限が近くなると送信される通知メールを設定しましょう。
「AWSマネジメントコンソール→請求ダッシュボード→Billding設定」にて上限が近くなったらメールを送ってくれるよう設定ができます。
電子メールでPDF版請求書を受け取る
請求書をPDFでメールで送ってくれます。
無料利用枠の使用のアラートの受信
無料利用枠12ヶ月過ぎた場合に12ヶ月過ぎたという通知をしてくれます。メールアドレス欄に自分のメールアドレスを入れておきましょう。
請求アラートを受け取る
ここにチェックを入れておくことでCloud Watchで〜円を超えたら請求アラートを送信するという設定をすることが可能になります。
予算を超えた場合に飛ぶ通知メールの設定をする。(「Budgets」 or 「cloud watch」)
「AWSマネジメントコンソール→請求ダッシュボード→Budgets→アラームの作成」にて請求が発生していたらメールを送ってくれるよう設定ができるようです。もしくはcloud watchで設定することも可能です。
cloud watch
無料枠が切れそうになった場合
無料枠の12ヶ月が過ぎようとした際に基本的に勉強用で使いおうと思っている方はそのアカウントでのAWSの利用は取りやめたい所ですよね。その場合はインスタンス自体を全て削除してしまうようにしましょう。
また、インスタンスを削除したとしてもElasticIPを割り当てたままにしておくと料金が発生してしまうようです。ElasticIPアドレスの開放も忘れずに行うようにしましょう。
裏技
あまり大きな声では言えないのですがAWSでは複数アカウントを作ることは禁じられていないため、1年経過後にまた新しく別のメールアドレスでアカウントを作り直せば1年間の無料枠を享受することが可能だそうです。
この記事へのコメントはありません。