AWS
IAM
インフラ
Cloudtrail
未経験

モダンな技術を全く知らないSIer5年目がWebサービスを作ることになったため0から勉強する ~AWS編その1~


はじめに

初のQiita投稿になります。

色々と間違ってる点や拙い文章になると思いますが生暖かく見守って、ついでにアドバイスをいただけると幸いですw

現在SIer5年目でjavascript(Jqueryのみ)、PHP(フレームワーク無し)を2年ほど、C#(Windowsアプリ)3年ほどやってきました。

色々なご縁があり、個人で最近Webサービスの立ち上げをやることになったのですが何せ本当にWebサービスを立ち上げるための知識がほぼ0に等しいです:sob:

ただ今後のキャリアを考えた時に今のままではいけないと思いチャレンジすることにしました。

まずは最初に技術を習得しないといけないので、学ぶ&アウトプットするために毎回投稿していこうと思います。

今後身についていこうと思ってるのは下記のような技術です。

AWS

Docker

CI/CD環境の構築(何を使うかはまだ未定)

Laravel

Nuxt.js

今回はAWSについて学んでいきます。


AWSアカウント作成と初期設定諸々


  1. AWSアカウント作成

  2. 作業用IAMを作る

  3. CloudTrailを設定

  4. 料金アラートを設定


1. AWSアカウント作成

下記のURLからAWSのアカウントを作成する

手順通り作成していく

AWS公式サイト

作成後にIAMユーザで請求確認できるように設定する

[UserName]>[マイアカウント]

image.png

この次の手順で作成するIAMユーザでも請求書を確認できるようにする

image.png


2. IAMユーザの作成

AWSでアカウントを作成した直後では、rootユーザのみで全権限を持っており

アカウントの設定方法、サポートプラン変更時はこのrootユーザでなければできない

それ以外はIAMユーザに権限を与えてそちらで作業させるのがAWSのベストプラクティスらしい

それぞれのアカウントの特徴は下記の通り


rootユーザ


  1. 全サービスを扱える特権ユーザ

  2. アカウント設定変更/サポートプラン変更はこのユーザのみでしか行えない

  3. セキュリティ的に通常の作業はこのユーザの仕様は非推奨


IAMユーザ


  1. 許可されたAWSサービスしか行えない

  2. 利用者ごとに払い出し、通常の作業はこちらで行い


IAMユーザの作成をしていく

(1) AWSサービスの検索ボックスで「IAM」と検索し、IAMユーザの画面に移動する

(2) [ユーザ]タブ>[ユーザーを追加]ボタン

(3) 任意のユーザ名を入力

(4) アクセス種類[AWSマネジメントコンソールへアクセス]にチェック

(5) パスワード設定

※他の作業者のために作成してるならパスワードリセットのチェックボックスをONにする


アクセスポリシーの設定

今回は一旦全てのサービスを利用できるようにするためAWSで定義されている下記のポリシーで設定する

image.png

IAMユーザの作成をしたら、ログイン用の独自のURLが発行され

作成したIAMユーザはそのURLからログインすることになる


3. CloudTrailの設定

CloudTrailはAWSに関する操作ログを自動取得するサービス

デフォルトでは90日まで残すようになっているが、個人ならいいが実際に稼働するサービスを構築する場合にはもっと長い期間を置いておく必要がある

cloudtrailのサービス画面に移動する

image.png

移動したら次にログを永続的に残すために[証跡の作成]ボタンを押下する

image.png

今回はこんな感じの設定にしました。ちなみにスクショにはないけどS3のバケットを作成し、S3バケット名も定義しました

image.png

image.png


4. 料金アラートの設定

AWSの料金が指定の値を超えたら通知するように設定する


「請求アラートの設定」

[マイアカウント]>[Billing の設定]

請求アラートを受け通るのチェックボックスをONにする


[CloudWatch機能を利用する]

CloudWatchサービスの画面に移動する

[請求]メニュー>[アラームの作成]ボタン

(1)アラームする金額設定

(2)通知先のメールアドレスの設定


補足:AWS料金の調べ方

最近Qiitaで良さげなの見つけたんでこれ貼っときます

ざっくりAWS