🦄

AWS SAAのノート

8 min read

はじめに

AWS SAA の対策がてら各サービスの特徴をおさえたノートを作成する。

AWSSAA の解き方

問題文が長いのでキーワード抽出して考える。
可用性、コスト最適化、セキュリティ、どの観点でサービスを選定しなければならないのかを判別することが重要

コンピューティング

料金モデル

  • オンデマンド

通常の従量課金モデルで使った分だけかかる。

  • リザーブド

予約して使う利用年数で契約する。

スポット

AWS 内で空いたリソースを使う。
一番安いモデルであるが、予告なしに落ちる場合はある。
長時間連続で稼働するバッチ処理には不向き

-point-
試験では
オンデマンドとリザーブドは使う期間を見定めることで正解につながる。
スポットは落ちても良いという要件があるときに使う。

例)
大量のデータを定期的に処理する業務アプリケーションを有しています。
このアプリケーションは EC2 インスタンスに障害が発生した場合や
高負荷によって処理性能に限界が発生した場合に、Auto Scaling を利用して拡張するように設計されています。
このスケーリングタスクに利用するべき費用対効果の高いインスタンスタイプを選択

Dedicated Host

特定の物理サーバでインスタンスを生成する。
可視性と制御性を高めることができる。
VMソフトウェア単位で使用料が異なる場合に対応できる。
コンプライアンスに対応する為に用いられることが多い。

Elastic Conpute Cloud(EC2)

AutoScaling を使うとアクセス負荷に応じてキャパシティやインスタンスタイプを変更できる。
スケールには水平と垂直がある。
水平スケールは数を増やすイメージ
垂直スケールはスペックをあげるイメージ
Enable termination protection を オンにするとインスタンスの削除を保護できる。

試験では各インスタンス毎の価格が出題され
コスト最適化について聞かれる。

Amazon Machine Image の仕様についてよく聞かれる。

セキュリティ

IAM

AWS Identity and Access Management の略
ユーザ、グループ、ロールの 3 つで AWS リソースにアクセスするルールを決めるサービス
AWS リソースにアクセスするルールのことをポリシーと呼ぶ。
AWS リソースのアクセス制御をするためにはポリシー作成して
ユーザ、グループ、ロールの 3 つのいずれかに適用する。

IAM ポリシー

AWS のリソースアクセスルールを定義する。

IAM ユーザー

ルートユーザー以外のアカウントのことを指す。

IAM グループ

IAM 権限をまとめて複数のユーザに付与する機能

IAM ロール

AWS リソースが他の AWS リソースにアクセスするときに利用する。

point
ルートユーザアカウントは常用しない。
IAM アカウントには必要な権限のみを付与する。
「最小権限の原則」を守ることが重要

IAM エンティティ(ユーザー、グループ、ロール)

IAM エンティティ(ユーザー、グループ、ロール) が最後に
AWS サービスにアクセスした⽇付と時刻を表⽰する機能

Access Advisor

AWS の セキュリティ

AWS セキュリティの利点は次のとおりです。

  1. データの安全な保護
    AWS インフラストラクチャは、
    プライバシーを保護するために強力な安全対策を講じています。
    すべてのデータは安全性の高い AWS データセンターに保存されます。

  2. コンプライアンス要件を満たす
    AWS は、インフラストラクチャで多数のコンプライアンスプログラムを管理します。
    これは、コンプライアンスのセグメントがすでに完了していることを意味します。

  3. 節約
    AWS データセンターを使用してコストを削減します。
    独自の施設を管理することなく、最高水準のセキュリティを維持します。

  4. 迅速な拡張
    AWS クラウドの使用状況に合わせてセキュリティが拡張されます。
    ビジネスの規模に関係なく、AWS インフラストラクチャはデータを安全に保つように設計されています。

AWS Artifact

重要なコンプライアンス関連情報の頼りになる一元管理型のリソースです。
AWS Artifact では、AWS のセキュリティおよびコンプライアンスレポートと
特定のオンライン契約にオンデマンドでアクセスできます。
AWS Artifact では、AWS の監査人が作成したレポート、認証、認定、
その他のサードパーティーによる認定情報に、オンデマンドでアクセスできます。

-point-
AWS の 監査人が利用するサービスと覚えておけばよい。

グローバルサービス

Route53

加重ルーティングポリシー

このアーキテクチャは Blue/Green デプロイメントを
確実に導入できる。

フェイルオーバールーティングポリシー

sorry ページを表示したい。

位置情報ルーティングポリシー

アクセスするユーザの位置に基づいてルーティングを行う。

レイテンシールーティング

最小のレイテンシーで利用可能な AWS のエンドポイントにルーティング
リージョン間の遅延が少ない方にルーティングを行う。

サーバレス

Lambda

SNS

SQS

https://aws.amazon.com/jp/sqs/?nc2=h_ql_prod_serv_sqs

SQS を使用すると、あらゆる量のソフトウェアコンポーネント間でメッセージを送信、保存、受信できます。
メッセージが失われることはなく、他のサービスを利用可能にしておく必要もありません。
SQS は任意の AWS コンソール、コマンドラインインターフェイス、SDK を使用して、簡単な 3 つのコマンドで利用を開始できます。

SQS では、2 種類のメッセージキューを利用できます。
標準キューでは、最大限のスループットが得られ、配信順序はベストエフォート型で、配信は少なくとも 1 回行われます。
SQS FIFO キューは、メッセージが送信される順序のとおりに 1 回のみ確実に処理されるように設計されています。

-point-

コンポーネント間の疎結合に利用される。
DynamoDB の書き込み負荷分散としても利用される。

ストレージサービス

Amazon FSx

SMB プロトコルが使える共有ストレージサービス

コスト効率の良いファイルシステムを提供するサービス
2 種類のファイルシステムがある。

EFS との違い
EBS は共有できるファイルストレージ
FSx はファイルシステム

Elastic File System(EFS)

共有ストレージサービス
NFSv4 プロトコルを利用
従来のファイルアクセス許可モデル
ファイルロック性能と階層ディレクトリ構造を使用
Amazon EC2 インスタンスとオンプレミスサーバーの数千の接続に安全なアクセスを同時に提供

AWS SAA では EBS の違いが出題される。

ザックリ言うと

スケーラブルなファイル共有サービス
複数の EC2 インスタンスから共有ファイルストレージサービス

  • 複数の AZ に冗長化してデータを保存
  • AZ をまたいでファイルにアクセスできる。

Elastic Block Storage(EBS)

EC2 のパフォーマンスとコスト決定に大きな違いが出る重要な項目
試験では EFS と比べてることが多く、コスト最適化という観点だけ見ると
他の EC2 インスタンスとデータが共有できないという特徴を見逃してドボンするので注意

AWS SAA では
ボリュームタイプの違いやスナップショットによるバックアップの仕組みなどの特徴が良く出題される。

  • 永久保存できるストレージサービス
  • EC2 作成時に EC2 のデータを保存できる
  • バックアップとして EBS のデータを S3 に保存できる(スナップショットを S3 に保存する)
  • AZ 内で自動的に複製される
  • アベイラビリティゾーンをまたいで参照することはできない
    ※アベイラビリティゾーンをまたいでファイルを参照する場合は EFS や FSx
  • 複数のボリュームタイプがある
    ※汎用 SSD / プロビジョンド IOPS SSD ...

-point-

EC2 に物理的に接続されたストレージクラスのことを
インスタンスストアと呼ぶ

EBS は EC2 インスタンスにネットワーク接続されたストレージです。

ボリュームステータス

5 分毎に自動的に試行する。

insufficient-data : ボリュームチェックの実行中である可能性がある。

ボリュームオプション

  • 汎用 SSD(gp2)

    • 開発環境
  • プロビジョンド IOPS SSD(io1)

    • gp2 の 補強で使う
  • スループット最適化(st1)

    • 大規模ログ分析
  • Cold HDD(sc1)

    • バックアップ、アーカイブ

ボリュームタイプの違い

コスト最適化という観点で最適なモノを選ぶ。

SSD / gp2 : 1GB ~ 16TB,高い
SSD / io1 : 4GB ~ 16TB,高い
HDD / st1 : 500GB ~ 16TB,安い
HDD / sc1 : 500GB ~ 16TB,安い

point
HDD の ボリュームは最低容量 500GB であり
一見して費用対効果が高いように思えるが
個人利用レベルのアプリケーション開発であれば SSD のほうがよい。

スループットの違い

HDD の 場合は st1 > sc1
SSD の 場合は io1 > gp2
試験では適切なスループットを有するボリュームタイプを
選択する問題がよく出題される。

スループット最適化 HDD(st1) : 500MB/s
Cold HDD(sc1) : 250MB/s

プロビジョンド IOPS SSD(io1) : 1,000MB/s
汎用 SSD(gp2) : 128MB/s ~ 250MB/s

point
スループットが最大 500MB/s 必要なストレージときたら
スループット最適化 HDD(st1)を選択する。

Amazon Simple Storage Service(S3)

容量無制限
バージョン管理が可能
静的な Web コンテンツを配置することでサーバレスに対応できること
別サイトのソース(JavaScript など)にアクセスするときは CORS が必要
ライフサイクル管理をすることで保存したデータをアーカイブしたり削除したりできる。
オブジェクトの最大サイズは 5TB
99.9999999% 耐久性
クロスリージョンレプリケーションを使うと異なる他のリージョンにコピーできる。(設定が必要)

試験問題でよく連携されるサービス
DynamoDB Lambda RedShift DataPipeLine EMR EBS

データベースサービス

Amazon RDS

簡単に言えば、データベースの詰め合わせのようなモノ
試験では処理負荷の軽減方法とストレージの拡張について問われる。

2019 年 6 月より、RDS のストレージに対する Auto Scaling が利用可能
データベースのワークロードに応じてストレージ容量がダウンタイムなしで
自動的にスケールできる。

読み取り処理を分散するには

  • リードレプリカを作成
  • 複数の RDS インスタンスを構築し、データをシェアリング

Amazon Redshift

エクサバイト単位の非構造化データ委に対してクエリを実行できる

Aurora

MySQL の 5 倍強い。つよつよ RDS

Amazon Elasticache

マネージド型インメモリのデータベース

Amazon Athena

サーバレスのクエリサービス

Amazon Neptune

フルマネージド型のグラフデータベース
ノード、エッジ、プロパティをもつ。

DynamoDB

NoSQL 型のデータベースサービス
処理が集中するときは SQS を使ってメッセージをキューイングするようする。
スケーラブルにするときは AutoScalling を用いる。

データ解析

Amazon EMR

Amazon EMR はクラウドネイティブなビッグデータプラットフォームです。
大規模環境で大量のデータを迅速かつコスト効率よく処理できます。
EMR では Apache Spark、Apache Hive、Apache HBase、Apache Flink、Presto などのオープンソースのツールと、Amazon EC2 と Amazon S3 ストレージを組み合わせて、伸縮自在な分析エンジンが提供されます。

主なユースケースは次の通りです。

  • MACHINE LEARNING
  • 抽出、変換、読み込み (ETL)
  • クリックストリーム分析
  • リアルタイムストリーミング
  • インタラクティブ分析
  • ゲノミクス

-point-

Extract/Transform/Load と ストリーム分析に利用

ネットワーキング

AutoScalling

起動設定がよくでる。

構成管理

Elastic Beanstalk

ー point ー
Blue Green
WEB アプリケーションのデプロイ管理ツール
環境外で起動することで RDS を終了させない

OpsWorks

-point-

環境自動化による CI/CD の仕組みを AWS を利用して構築
多くは Chef レシピを利用した環境構築

CodeDeploy

その他

AWS Systems Manager

AWS Systems Manager の特徴

EC2 インスタンス、オンプレミスサーバー、仮想マシン (VM) にインストールして
設定することができる Amazon のソフトウェアです。
AWS でご利用のインフラストラクチャを可視化し、制御するためのサービスです。
AWS Systems Manager の統合 UI を利用して、
AWS のさまざまなサービスの運用データを確認でき、AWS リソース全体に関わる運用タスクを自動化できます。

ソフトウェアでもあり、サービスでもある。

-point-
AWS Systems Manager は、暗号化の有無にかかわらず
パラメータを使用してシークレットと設定データをコードから分離し、
他の AWS サービスがそれらのパラメータを参照できるようにします。

AWS Systems Manager は移行タスクの実施に利用するサービスではありません。

AWS 責任共有モデル

AWSの設備に故障があった場合はAWSが責任を持つが
それ以外、例えばAWSにつながるオンプレミス環境やその中にあるソフトウェアの不具合などは
ソフトウェアの開発者を含む企業や1個人に責任がある。

いわゆる、責任分界点を決めたモデル。

コンテナサービス

アプリケーションプラットフォームの管理

わかりそうでわからない聞きなれない単語

レプリケーション

意味:複製する。レプリカを作っておくこと
※バックアップとの違い
特定のタイミングの内容を保存することを主にバックアップという。

バックアップは必ずしも本番環境と同じモノではない。

レプリカ

複製のこと

リードレプリカ

読み取り専用の複製のこと

スナップショット

バックアップ

スループット

ディスクなどの読み書きのこと

ワークロード

意味:仕事量、作業負荷、使い道

メトリクス

項目

パイロットライト

「パイロットライト」は停止した状態の最小限の構成を
別のリージョンに用意しておき、障害発生時に立ち上げるというもの
インフラを待機させる分のコストを必要とします。

スパイク

急に流れてくるトラフィックのこと
トラフィックグラフでいうところのずば抜けてとんがっているところ。