はじめに
前回、基本的なシステム構成図を理解するためのAWS基礎をまとめてみたという記事を書きましたが、システム構成図に載っていなくても知っておきたいAWSサービスってあるよねということで、それについてまとめてみました。
主にIAMについてで、あとは個人の独断と偏見でよく聞く用語やサービスをまとめています。
操作系
AWSマネジメントコンソール
- この画面(AWSを操作する画面)
- GUIでボタンぽちぽちしてAWSの色々なサービスの設定ができる
AWS CLI
- Command Line Interfaceの略
- その名の通り、コマンドライン(Windowsならコマンドプロンプト、Macならターミナル)でAWSの操作・設定をする
- このページに沿ってインストールをすることで使用することができる
セキュリティ系
IAM
- Amazon Identity and Access Managementの略
- 「アイアム」と読んだりする
- AWS操作の権限管理の仕組み
- AWS上でセキュアなサービスを動かすには、IAMの正しい理解と設計が必須になる
IAMポリシー
- IAMユーザーやIAMグループ、IAMロール(※後述)がどのリソース(EC2、S3など)にアクセスできるのかを定めたもの
- JSON形式で設定される
管理ポリシー
- 管理者が管理者権限で作成したポリシー
- AWS側が作成して管理しているAWS管理ポリシーと、個人で作成、管理をするカスタム管理ポリシーがある
- 1つのポリシーを複数のユーザーやグループに適用できる
インラインポリシー
- 対象ごとに個別に作成・付与するポリシー
IAMユーザー
- いわゆるユーザー
- 1ユーザーに1つのIAMポリシーをつける
- 個人利用、少数利用の場合にはIAMユーザーにポリシーを適用して管理することが多い
- AWSアカウント作成時のユーザーはルートユーザーとよばれ、絶大な権限を持つ神様みたいな存在なので日常的には使用しない
- 必ずIAMユーザーを作成してAWSサービスを利用する
IAMグループ
- IAMユーザーの集合
- 1グループに1つのポリシーをつける
- 組織利用はIAMグループにポリシーを適用して管理するのが望ましい
- 「アプリケーショングループ」や「インフラグループ」などの括りでグループを作成すると管理しやすい
IAMロール
- 一時的にAWSリソースへのアクセス権限を付与する場合に使用する(一時的に別のアクセス権を得たいユーザーが利用するなど)
- ユーザーやアプリケーション、EC2などのサービスがロールを引き受けることができる
セキュリティグループ
- EC2やELB、RDSなどのインスタンス単位の通信制御に利用する(仮想ファイアーウォール)
- インスタンスごとにセキュリティグループを割り当てることができ、各インスタンスには少なくとも1つのセキュリティグループをアタッチする必要がある(指定しない場合はデフォルトのものが割り当てられる)
- デフォルトではSSH(22番ポート)のみアクセス可能な設定になっている
- IPアドレスの制限の設定もできる
ネットワークACL
- サブネット単位の通信制御に利用する(仮想ファイアーウォール)
セキュリティグループとネットワークACL
監視系
Cloud Watch
- 運用監視を支援するマネジメントサービス
- 各AWSリソースの状態(メトリクス)を定期的に取得する
- メトリクスに対して、あらかじめアラームを定義しておき、アラームの条件を満たしたときにSNS(※プッシュ通知型のサービス)に通知するように設定できる
- 条件の例:Webサーバ用のEC2インスタンスのCPU使用率が70%を超えた
標準メトリクス
- AWSであらかじめ定義されているメトリクス
カスタムメトリクス
- 利用者が定義した独自のメトリクス
Cloud Watch Logs
- ログをモニタリングするサービス
- 収集したログに対してアラームを設定する(ERRORの文字列が含まれる行があったらアラームを出すなど)
- Cloud Watchと同じように、アラームをトリガーとして処理を行える
構築自動化
Cloud Formation
- AWSリソースを自動構築するためのサービス
- YAML形式かJSON形式で定義したらあら不思議、環境が構築されます
- 例えば以下の記述でVPCをつくることができる
vpc.yaml
AWSTemplateFormatVersion: '2010-09-09'
Description: Vpc Template
Resources:
cfnVpc:
Type: 'AWS::EC2::VPC'
Properties:
CidrBlock: '10.10.0.0/16'
Tags:
- Key: 'Name'
Value: 'goldayushi-vpc'
参考資料
以下を参考にさせていただきました。ありがとうございました。