見出し画像

AWSを無料で利用する方法を実際にやってみて注意点まとめてみた。

AWS アカウントには 12 ヶ月の無料利用枠が含まれています。でもいくつかの注意点があり、課金されてしまうこともあるのでその辺を自分用にまとめてみた。

AWSとは「Amazon Web Services」のこと

Amazon.comにより提供されているクラウドコンピューティングサービスである。ウェブサービスと称しているが、ウェブサービスに限らない多種多様なインフラストラクチャーサービスを提供している。これらのサービスは全世界で22の地理的リージョンで提供されている。

・・・

【AWS 無料利用枠】

AWSの「無料利用枠」には3種類あります。AWS のプラットフォーム、製品、サービスを無料で実際に体験できます。

オファーの種類
60 を超える製品から選んで、無料利用枠で実際に AWS に構築してください。ご使用の製品によって、3 種類の無料オファーがご利用いただけます。各製品の詳細について以下をご覧ください。

・AWS 無料利用枠の種類

画像12

(1)無期限無料
これらの無料利用枠に有効期限はなく、AWS のお客様すべてが利用可能
次の(2)の期間が制限付きに対して、こちらは無期限に無料で使えます。「AWS Lambda 100 万/月の無料リクエスト 」が無料となります。

画像13

(2)12 か月間無料
AWS への最初のサインアップ日から 12 か月間無料で利用可能
AWSアカウントを 新規作成した日から1年間 有効な無料枠で、「Amazon EC2 750 時間 /月」を無料で利用できるといったものがあります。
※750時間 = 約1ヵ月

画像14

(3)トライアル
さまざまなソフトウェアソリューションが、短期間の無料トラアイルとして利用可能
はじめてサービスを使う場合、一定期間だけ使える 無料利用枠で、「Amazon Lightsail750 時間1 か月間無料」などが利用できます。

画像15

実際に詳細はアカウント登録後に、料金が発生しないように、発生してもすぐ通知が来るように設定するので、詳細は別途利用編で説明します。

ちなみに最初に注意したいのは、「(2)12 か月間無料」というものは、1年間無料で使えるサービスがある。という事ではなくて、AWSのアカウント作成した日から1年間有効な無料枠(上記のカードに並べられた無料枠の事)があるということ。たとえば、EC2インスタンスを 750時間/月 無料で利用できるといったものを、アカウント作成した1年以内に約1ヵ月分の時間(750時間)を利用できるというものです。起動したままであれば1カ月後に無料期間がなくなるという事です。無料内でなにができるを考えるととりあえず「ややこしい」です。

・・・

【AWSの登録編】

AWSを利用するにはまずアカウントを作成する必要があります。クレジットカードが必要になりますので用意して登録しましょう。

・AWS アカウント作成の流れ

アカウント自体の作成の流れは公式にもありますが下記の通り、無料とはいえクレジットカードで登録する必要があります。登録自体は下記の通り5ステップですが、そのあとに課金されないように設定をいくつかします。

ステップ 1: AWS アカウントの作成
ステップ 2: 連絡先情報を入力
ステップ 3: お支払い情報を入力
ステップ 4: SMS によるアカウント認証
ステップ 5: AWS サポートプランの選択
ステップ 6: AWS アカウントの作成完了

・ステップ 1: AWS アカウントの作成

「AWS」で検索して、AWSのトップページに飛びます。(フィッシングに引っかからないためにGoogle検索してみよう)
URL:https://aws.amazon.com/jp/

下記のような画面になっています。

画像1

右上の「無料サインナップ」よりアカウントの登録します。既存のアカウントがある場合は、「既存の AWS アカウントでログイン」から一部省略してアカウント作成進めます。

AWS アカウントには 12 ヶ月の無料利用枠が含まれています
Amazon EC2、Amazon S3、および Amazon DynamoDB の使用が含まれます

画像2

既存のアカウントで利用する場合

画像3

・ステップ 2: 連絡先情報を入力

次に連絡先情報を入力します。アカウントの種類に「プロフェッショナル」か「パーソナル」か選べますが、違いは会社名を入れるかどうか、個人利用ならば「パーソナル」を選んで会社名を非表示にできます。どちらでも。

画像4

入力は、基本英語扱いになります。2バイト文字を入れると「半角英数字で入力する必要があります。」とアラートがでます。住所の記載が分からない場合は、Google翻訳で住所を英語に変換しても良いでしょう。基本ローマ字入力になります。

<入力例>
フルネーム:Yamada Taro
電話番号:09012345678
国/地域:日本(プルダウン)
アドレス:White House 120
市区町村:Chuo-ku, Saitama City
都道府県または地域:Saitama
郵便番号:3310001

・ステップ 3: お支払い情報を入力

無料で使いたいけど、AWSの仕組み的にクレジットカードで登録する必要があります。

画像5

・ステップ 4: SMS によるアカウント認証

SMS または日本語自動音声電話によるアカウント認証では、本人確認のための手続きを選んで認証します。音声電話よりもSMSで自分のスマホに番号を送ってもらうと楽だと思います。

画像6

SMSを送信すると自分のスマホに4桁の数字が届くので、時間内に入力します。

画像7

認証コードの入力にパスすると「本人確認が終了しました」となり次に進めます。

画像8

・ステップ 5: AWS サポートプランの選択

AWS では、お客様のニーズに合ったさまざまなサポートプランをご用意しています。お客様の AWS の使用に最も合ったサポートプランを選択してください。今回は無料プランでもある「ベーシックプラン」を選びます。

画像9

実際のプランごとのサービス比較はこちらにあるので、詳細はこちらを参照ください。「AWSサポートプのプラン比較

・ステップ 6: AWS アカウントの作成完了

アマゾン ウェブ サービスへようこそ

アマゾン ウェブ サービスアカウントを作成していただきありがとうございます。わずか数分でアカウントが有効になります。完了すると E メールが届きます。

画像10

・・・

【AWSの利用編】

ここまで来たら実際に登録したアカウント(ルートアカウント)でコンソールにログインして使ってみます。

AWSマネジメントコンソールが下記のような感じのダッシュボードのようになっていると思います。

画像11

・リージョンの変更

アカウント登録した直後は、リージョンが日本以外になっています。下記の通り「オハイオ」に私の場合はなっていました。これを東京があるので変更します。AWSサービスのバックボーンは、「リージョン」と呼ばれる地理的に離れた領域のデータセンター群がそれぞれ接続されることで構成されています。

右上のリージョン名「オハイオ」をタップして「東京」を選びます。
リージョン名「アジアパシフィック (東京)ap-northeast-1」

画像18

・EC2でサーバーを作る

まず最初に細かいことは置いといてサーバーを作っていきます。サービス検索で「EC2」と検索するとすぐ見つかります。リージョンは東京にしておく。

画像29

画面中央あたりにあるオレンジのボタン「インスタンスを起動」でインスタンスを起動する

画像30

・ステップ 1: AMI の選択

Amazonマシンイメージ (AMI)を選択します。LinuxとかWindowsなどのOSイメージを選択できます。ここでは、「無料利用枠の対象」になっているものから選びますが、今回は一番上の「Amazon Linux 2 AMI (HVM), SSD Volume Type」を選びます。

Amazon Linux 2 AMI (HVM), SSD Volume Type
Amazon Linux 2 には 5 年間のサポートが含まれます。Amazon EC2、systemd 219、GCC 7.3、Glibc 2.26、Binutils 2.29.1 で最適なパフォーマンスを発揮できるように調整された Linux カーネル 4.14、および、追加の最新のソフトウェアパッケージを提供します。
ルートデバイスタイプ: ebs  仮想化タイプ: hvm ENA 有効: はい

画像31

・ステップ 2: インスタンスタイプの選択

CPU、メモリ、ストレージ、ネットワークキャパシティの組み合わせによって変えられるのだが、今回は無料利用枠の対象がひとつしかないのでそれを選び、次のステップをタップしてください。

画像32

・ステップ 3: インスタンスの詳細の設定

用途に応じて細かい設定ができるのだが今回はすべて初期値のままにする。

画像33

・ステップ 4: ストレージの追加

ストレージの追加ができます。今回は初期値のまま「汎用 SSD(GP2)」にして次へ進みます。

画像34

・ステップ 5: タグの追加

タグの追加ができます。インスタンスなどに分かりやすくタグを追加できます。名前や組織の場合組織の名前や部署など、大規模な組織的に利用するときに便利だが、今回は名称のみ設定して、次のステップに進みます。

キー:name
値:aws_user_name

画像35

・ステップ 6: セキュリティグループの設定

セキュリティグループは、インスタンスのトラフィックを制御するファイアウォールのルールセットです。主にEC2へのアクセスの制御ができます。標準でSSHがフルオープン「0.0.0.0/0」入っています。ルールは追加せずに次のステップに行きます。

画像36

・ステップ 7: インスタンス作成の確認

インスタンスの作成に関する詳細を確認してください。各セクションの変更に戻ることができます。[作成] をクリックして、インスタンスにキーペアを割り当て、作成処理を完了します。

画像37

インスタンスのセキュリティを強化してください。 セキュリティグループ launch-wizard-1 は世界に向けて開かれています。

アラートが表示されます。これは世界に向けてリリースしてしまいますというメッセージで今回無視して「起動」を押します。

・キーペアの作成

キーペアは、AWS が保存するパブリックキーとユーザーが保存するプライベートキーファイルで構成されます。組み合わせて使用することで、インスタンスに安全に接続できます。Windows AMI の場合、プライベートキーファイルは、インスタンスへのログインに使用されるパスワードを取得するために必要です。Linux AMI の場合、プライベートキーファイルを使用してインスタンスに SSH で安全に接続できます。

画像38

今回は、「新しいキーペアの作成」を選択して、キーペア名「aws_user」でキーペアのダウンロードします。(何でもよいです)
ダウンロードするとテキストファイルで「RSA PRIVATE KEY」なるものがダウンロードされます。今回は「aws_user.pem」というファイル名になる。

このpemファイルでインスタンスにアクセスできるようになります。
※大事なファイルになるのでなくさないようにする。

続行するには、 事前にプライベートキーファイル (*.pem ファイル) をダウンロードする必要があります。 それを、安全でアクセス可能な場所に保存します。 一度作成されたファイルは再度ダウンロードすることはできなくなります。

これで作成されましたので、インスタンスの表示してみましょう。

画像39

・作成したインスタンスの状態確認

作成したインスタンスが表示されます。作成した直後は作成中になっていてステータスは「pending」になっていると思いますが数分も待つと下記のようにグリーンの「running」になっていると思います。これでLinuxサーバーが出来上がりました。

画像40

・・・

【請求アラート設定】

最初にやっておきたいのは、細かいサービスを設定するよりも先に、請求アラート機能で料金が発生しないように、発生しても通知が来るように設定しておきます。

・無料利用枠の使用のアラート設定

「AWS マネジメントコンソール」にログインして、右上にあるアカウント名をタップすると「マイ請求ダッシュボード」があるので押してみよう。

画像16

「請求情報とコスト管理ダッシュボード」という画面に入るので、左下にある「Billingの設定」を押して、コスト管理設定にある赤枠3つを設定しよう。

画像17

コスト管理設定
■無料利用枠の使用のアラートの受信(チェック)
AWS のサービスの使用量が AWS 無料利用枠の使用の制限に近づいているか、超えた場合に E メールのアラートを受信するには、この機能をオンにします。このアカウントに関連付けられたメインの E メールアドレスとは異なる E メールアドレスでこのアラートを受信する場合は、以下に E メールアドレスを指定してください。
 E メールアドレス: __________(通知先)
■請求アラートを受け取る(チェック)
AWS の利用料金と毎月発生する料金を自動的に監視する場合は、このサービスをオンにしてください。これにより、容易に AWS での使用料金を調べて管理することができます。請求アラートで、料金が設定した値に達したときにメール通知を受け取る様に設定することもできます。また請求アラートは一度オンにするとオフに戻す事はできません。請求アラートを管理する または、新しい予算機能をお試しください!

任意で「電子メールで PDF 版請求書を受け取る」にもチェックする
※「請求アラート」は一度オンにするとオフに戻す事はできません。

・・・

【アラームの作成】

アラートの次に今度はアラームの作成をします。サービスではCloudWatch機能になるのでサービス検索で「CloudWatch 」と検索すると見つかります。

・CloudWatchのアラームの作成する

請求のアラームをモニタリングするには、リージョンを「US East (バージニア北部)」にします。

CloudWatch はすべての請求データとアラームを US East (バージニア北部) で表示します。リージョンを US East (バージニア北部) に切り替えて請求メトリクスを表示し、すべてのリージョンにわたって請求見積もりをモニタリングするアラームを設定してください。

画像22

「メトリクスの選択」画面に入ります。

画像20

「メトリクスの選択」を押すと、「2.メトリクス」の画面に「請求」というメトリクスのカードが出てくるのでそれをタップ

画像21

「2.メトリクス」の画面に左に「サービス別」と「概算合計請求額」というカードが表示されるので、「概算合計請求額」をタップします。

画像22

メトリクスにチェックを入れて「メトリクスの選択」をタップします。

画像23

各種設定していきます
設定は最小値を取るのか最大値を取るのか、より大きい、以上など閾値条件を設定できます。

画像24

今回設定したのは下記の通り、金額の単位を日本円「JP」にして、条件を「以上」にして金額は1000としました。

メトリクス名:EstimatedCharges(何でも)
Currency:JP
しきい値の種類:静的
条件が次の時:以上
いくらよりも:1000(JP)

画像25

上記まで入れたら右下の「次へ」をタップ

アクションの設定ができます。
アラーム状態トリガーは初期値の「アラーム状態」にしておきます。

SNS トピックの選択では下記の通り、
SNSとは 「Simple Notification Service」の事です。

画像の通りだが、トピックの選択で「新しいトピックの作成」を選択し、トピックの名称は仮に「billing_alarm」とし、通知を受け取るメールアドレスはこれは、ダミーメールだが 「aws_user_name@gmail.com」を入れました(実際は自分のメールアドレスを入れる)

〇 既存の SNS トピックを選択
● 新しいトピックの作成
〇 トピック ARN の使用

ここまで入力したら「トピックの作成」ボタンをタップしてください。

画像26

説明の追加の画面では、特に何でも構わないです。
今回先ほど付けた名称そのままでアラーム名「billing_alarm」としました。

画像27

最後に「次へ」をタップして、「アラームの作成」をタップすることでアラームの設定が完了されました。

画像28

開始直後はデータがデータ不足になっているので状態がエラー状態ですが、もし正常ならしばらくたったら、状態が緑の「OK」になります。ちなみに現時点でまだEC2など何も準備してないのでもちろんデータなしが正常。

一部サブスクリプションが確認待ちの状態です
Amazon SNS は、サブスクリプションが確認されるまでエンドポイントにメッセージを送信しません

確認用メールが自分の設定したメールアテに届いているので確認してアクティブにしたら確認待ちはOKです。

・・・

【料金発生の回避】

想定外の課金を回避するために、1 年間の AWS 無料利用枠を使用している場合にやっておくことを簡単にまとめておきます。

・EC2のインスタンスを停止しておく

AWS マネジメントコンソール を開きます。リソースを割り当てた各リージョンを確認します。EC2のサービス画面に起動しているインスタンスがあったら停止しておきましょう。停止だけだとストレージ料金は残ってしまうので、つかわないならば「削除」しましょう。削除すると復帰はできません。

画像41

他のサービスによって起動されるサービス
多数の AWS サービスがリソースを起動するため、使用していたサービスによって起動されている可能性があるサービスの有無を確認しておきましょう。また普段使っていないリージョンで稼働してるなども考えられるのでよく確認しておきましょう。

・このまま使いづづける

無料利用枠の期間が終了しても、同じサービスを使用し続けることはできますが、アカウントのすべてのリソースに標準料金で課金されます。

どのリソースを使用しているかについては、AWS の請求書を確認してください。次に、使用しているリソースの料金を確認して、使い続けるものを決定します (ある場合)。アカウントのリソースが標準料金で請求されることに同意する場合は、何もする必要はありません。

料金を発生させたくない場合は、アカウントのリソースを削除、停止、終了する必要があります。リソースを削除する方法については、AWS ドキュメントを確認してください。必要に応じて、アカウントを閉じることができます。

▼AWS ドキュメント
https://docs.aws.amazon.com/index.html

▼AWS 無料利用枠に関するよくある質問
https://aws.amazon.com/jp/free/free-tier-faqs/

▼アカウントを解約
https://aws.amazon.com/jp/premiumsupport/knowledge-center/close-aws-account/

・・・

【書籍】図解即戦力 Amazon Web Servicesのしくみと技術がこれ1冊でしっかりわかる教科書

Amazon Web Services(AWS)のしくみや関連技術についてわかりやすく解説する図解本です。エンジニア1年生、IT業界などへの転職・就職を目指す人が、AWS関連の用語、しくみ、クラウドとネットワークの基礎技術などを一通り学ぶことのできる、1冊目の入門書としてふさわしい内容を目指します。本書では、クラウドやネットワークの基礎から解説し、AWSのサーバーサービス、ストレージサービス、ネットワークサービス、データベースサービスについて具体的なサービス名を挙げながら初心者向けにわかりやすく紹介します。今までのAWS解説書では用語がわからず難しかったという人も本書なら安心して学ぶことができます。

【書籍】AWS認定資格試験テキスト AWS認定 クラウドプラクティショナ

合格への最短ルート!
AWS(Amazon Web Services)を活用・構築する知識を持っていることを証明するのがAWS認定です。「AWS認定 クラウドプラクティショナー」は、エンジニアだけでなくマネージャーや営業職など、さまざまなポジションを対象とした新しい試験で、AWSクラウドの知識とスキルを身に付け、全体的な理解を効果的に説明できるようになることが求められます。
本書はその「AWS認定 クラウドプラクティショナー」向けの試験対策教科書です。AWSを利用していくのに必要となる「クラウドの概念」「セキュリティ」「テクノロジー」「請求と料金」といったカテゴリを、しっかり丁寧に解説しています。
実際に豊富な構築経験と深い知識を持った著者が、試験の合格のポイントになる知識と解答の考え方が理解できるように構成しています。さらに、練習問題で知識を解答につなげる力がしっかりと身につきます。

【書籍】AWS認定資格試験テキスト AWS認定ソリューションアーキテクト

AWSを使って安全で堅牢なアプリケーションの設計およびデプロイできる知識をもっているかを証明するのが、「AWS認定 ソリューションアーキテクト - アソシエイト」試験です。
本書は、2020年に改訂された新しい「SAA-C02」試験に対応した改訂を行った試験対策教科書です。合格に必要な「レジリエントアーキテクチャの設計」「高パフォーマンスアーキテクチャの設計 」「セキュアなアプリケーションとアーキテクチャの設計」「コスト最適化アーキテクチャの設計」といったカテゴリの知識を、しっかり丁寧に解説しています。
実際のAWSを使ったシステムの豊富な構築経験と深い知識を持った著者が、合格のポイントになる知識と解答の考え方を理解できるように構成しています。
さらに、練習問題と模擬問題で知識を解答につなげる力がしっかりと身につきます。

以上、レッツトライ!

Webのお仕事、元phpプログラマ、今主にWebディレクタ、たまにエンジニア、UXディレクタ、LTのネタ探ししてます。