【Amazon AWS認定資格】Solutions Architect – Associate (SAA-C02)の勉強方法

ビジネススキル

こんにちは、しらすです。

先日AWSのソリューションアーキテクト-アソシエイト(SAA-C02)の資格を取得したので勉強したことを備忘録として残しておきたいと思います。SAA-C02はAWSのCloud Practitionerの上位の資格となっています。ネット上でも色々情報はありますが、これからSAA-C02を受ける方の参考になれば幸いです。

SAA-C02 試験概要

概要

基本情報

出題数:65問 前後
試験時間:130分
合格ライン:720 / 1000点
受験費用:15,000 円(税別)

Amazonの公式ページはこちらからアクセスできます。試験の申込も公式ページから可能です。

難易度

クラウドサービスの中級試験です。AWSの実際のユースケースについて実際に構築するための知識を聞かれます。初級資格のAWS Cloud Practitionerを合格した人の次のレベルの資格となっており、実際にAWSサービスでクラウドを作成するための入り口としての知識がつきます。

受ける人の知識量によって学習時間は異なりますが、AWSCloud Practitionerを合格された方なら30~40時間ほどで合格できる内容かと思います。

評価されるスキル

  • 第 1 分野: 弾力性に優れたアーキテクチャの設計 (30%)
  • 第 2 分野: 高性能アーキテクチャの設計 (28%)
  • 第 3 分野: セキュアなアプリケーションとアーキテクチャの設計 (24%)
  • 第 4 分野: コストを最適化したアーキテクチャの設計 (18%)

学習用のツール

Amazon公式のクラスルームが用意されており、無料で利用できるものもあるようです。ただ、あまり効率は良くないと思います。

おすすめはUdemyのSAAコースです。通常時は1万以上しますが、頻繁にキャンペーンをやっていて私は1個1,200円で以下の2つのコースを購入しました。

これだけでOK! AWS 認定ソリューションアーキテクト – アソシエイト試験突破講座(SAA-C02試験対応版)試験範囲のモジュールを体系的に学習できます。模擬試験も3回分ついていて、これ一つをしっかり勉強すれば合格に到達できるレベルになります。
【SAA-C02版】AWS 認定ソリューションアーキテクト アソシエイト模擬試験問題集(6回分390問)上記の試験対策だけでは不安な方は模擬試験問題集も実施するのといいです。難易度は回を重ねるほど上がっていきますが、4回目くらいまで実施しておけば十分かと思います。

私はUdemyの講座のみで勉強しました。ギリギリでパスしましたが、模擬試験の問題もしっかり勉強しておけばよかったと思いました。また、今後のレベルを受けていくなら、演習などもしっかり実施していかないといけません。

試験結果

結果
受験回数 1回
受験日

2021年6月1日

結果

737 点 合格

勉強時間 30時間

筆者の情報

C,C++を中心に組込系エンジニアとして約7年勤務。趣味でPythonを3年ほど書いており、機械学習と画像処理は専門的な知識があります。

クラウドは完全に初心者でオンプレミスとの違いなども全く分からない状態でした。5月初旬から仕事の合間を縫って徐々に勉強してAWS Cloud Practitionerを取得し徐々にわかってきた、という段階です。

学習時のメモ

IAM

IAMポリシー

JSON形式で記載される

Access Advisor

Last Accessed DataにIAMエンティティ(ユーザー、グループ、ロール) が最後にAWSサービスにアクセスした⽇付と時刻が表⽰されます。

インラインポリシー

⾃⾝で作成および管理するポリシーであり、プリンシパルエンティティにアタッチすることができます。

VPC

サブネット

パブリックサブネットとプライベートサブネットがある。インターネットゲートウェイへのツーティング有無でサブネットタイプが分かれる。

パブリックはルートテーブルを指定して直接外部と接続できる。プライベートからは、パブリックにNATゲートウェイを設定し、それを経由して接続する。

VPCフローログ

ログ監視

NAT

プライベートIPをグローバルIPに変更

IPマスカレード

複数のプライベートIPを一つのグローバルIPにまとめて変更

Elastic IP

静的 IPv4 アドレス

OSI参照モデル

TCP/IPモデル

セキュリティグループ

EC2インスタンスのトラフィックのアクセス可否を設定するファイアーウォール機能を提供

インバウンドのみ設定すればアウトバウンドも許可される(ステートフル)

許可のみ指定

ネットワークACL

サブネットに対してトラフィックのアクセス可否を設定する

インバウンドのみ設定してもアウトバウンドも許可されない(ステートレス)

許可/拒否を設定

Direct Connect

自社機器との専用線接続を構築。VPNよりコストはかかるが信頼性が高く高速

VPCエンドポイント

グローバルIPを持ちAWSサービスに対してVPCないから直接アクセスするための出口。以下2つの接続方式がある。

Gateway型サブネットに特殊なルーティングを設定
冗長性はAWS側でフルマネージ
アクセス制御はエンドポイントポリシーを設定
無料サービス
PrivateLink型サブネットにエンドポイント用のプライベートIPアドレスを生成、DNSが名前解決でルーティング
冗長性はマルチAZ
アクセス制御はセキュリティグループを設定
有料サービス

VPC Flow logs

CloudWatchでネットワークトラフィックをモニタリングできるようにするサービス

セキュリティグループとネットワークACLのルールでAccepted/rejectされたトラフィックログを取得

無料サービス

VPC Peering

2つのVPC間でのトラフィックルーティング

1対1の接続になるため通信が発生する組み合わせはすべて設定が必要

Transit Gateway

EC2

ハードウェア占有インスタンス

一つのAWSアカウント内で専用の物理領域を利用する。

Dedicated Host

EC2インスタンスの物理領域を一つのアカウントのユーザ専用として利用できる。

インスタンスストア

インスタンス用のブロックレベルの一時ストレージを提供します。インスタンスストアは、頻繁に変更される情報の一時ストレージに最適です。

ストレージタイプ

汎用SSD対応の一般的なもの
プロビジョンドIOPS高いI/O性能向け
マグネティックHDD、低性能

高いI/O性能向け

インスタンスタイプ

汎用インスタンスとメモリ最適化が存在する。

汎用バランスが取れた対応が可能なMファミリ(M4,M5)と、バーストパフォーマンスが提供されるTファミリ(T2,T3)がある。
Mファミリはエンタープライズ系のンようで使用。
メモリ最適化メモリ負荷の高い処理に最適化された安価なRファミリ、大規模処理に対応したXファミリ、高度なZファミリがある。

S3

バケットポリシー

S3バケットとオブジェクトに対するアクセス権限を設定します。

暗号化方式

SSE-S3とSSE-KMSとSSE-Cをサーバーサイド側暗号化方式として利用することができます。

クライアントサイドではCSEを利用する。

Intelligent-Tiering

アクセス頻度によってアクセス層を自動的に前後させるサービス。アクセス頻度がわからない場合にとりあえずこれを設定しておけば利用可能

S3のデータ解析

これだけでOK! AWS 認定ソリューションアーキテクト – アソシエイト試験突破講座(SAA-C02試験対応版)

Well Architected Framework

AWSのベストプラクティスを集めてまとめた公式ガイド。

信頼性

ELB

ヘルスチェック EC2の振り分けを行う
負荷分散配下のEC2の負荷に応じて、複数のAZに跨るEC2イ 負荷分散 ンスタンスの負荷分散を行う
SSLサポートELBでSSL Terminationできる
スティッキーセッションセッション中に同じユーザから来たリクエストを全て同じEC2インスタンスに送信する
Connection Drainingインスタンスが登録解除されるか異常が発生した場合に、そのバックエンドインスタンスへの新規リクエスト送信を中止する
S3へのログ保管ELBのアクセスログを指定したS3に自動保管

NLB/ALB/CLB

Network Load Balancer、Application Load Balancer、Classic Load Balancerの3つ。基本的にCLBは使用しない。

ALBはL7(HTTP)で動作、NLBはL4(TCP,UDP)で動作。通常のWebアプリケーションではALBを利用するのが一般的。

ALBはURLのパスに基いてルーティングが可能。NLBは調停遅延で高スループットのロードバランサー。

Auto-scaling

垂直スケーリングスケールアップ:メモリやCPUの追加/増強
スケールダウン:メモリやCPUの削減/低性能化
水平スケーリングスケールアウト:機器やサーバー台数を増加
スケールイン:機器やサーバー台数を低減
スケーリングの種類
Auto-Scaling グループインスタンスの最大数/最小数
起動台数をAZ間でバランシング
Auto-Scaling configuration 起動設定起動するインスタンスの内容
スケーリングプランスケーリング方法の定義
手動スケーリング、スケジュールベース、動的スケーリングの設定できる

需要が減った時にスケールインの方法としてターミネーションポリシーを設定する。

ELB、CloudWachをベースにAuto-Scalingを設定する。

RDS

マルチAZによるマスタ/スレイブ構成が容易に作成でき、同期レプリケーションや自動フェイルオーバーが容易に構成できる。

非同期で参照専用のリードレプリカの作成も可能。最大5台(Auroraは15台)。

非同期で参照専用のリードレプリカの作成も可能。最大5台(Auroraは15台)。スナップショットやトランザクションログを実装し、S3に保存する構成を容易に作成可能。

データベースシャーディングによって書き込み先のRDSを分けて高速アクセスを実現できる。

インスタンスとスナップショットの暗号化が可能。以下が対象。インスタンス作成時にのみ設定可能。

  • DBインスタンス
  • 自動バックアップ
  • リードレプリカ
  • スナップショット

高速化のためにはリードレプリカの増設、キャッシュによる高速化が可能。

Route53

ルーティングの種類

シンプルルーティング静的ルーティング。単純に均等にルーティングする方式
加重ルーティング重みづけにより分散する方式
レイテンシールーティングリージョン間の遅延が少ない方へルーティングされる方式
位置情報ルーティング特定の地域・国からのクエリに対して特定のアドレスを応答する方式
マルチバリュールーティングIPアドレス単位で経するチェックしてルーティングする方式
最大8つのルーティングが可能。ELBとほぼ同じだが、DNSレベルの上位の負荷分散システム。
フェイルオーバールーティング2つのリージョンにスタンバイ構成を構築したうえで、リージョンをまたいだフェイルオーバーを提供する方式
ルーティングの種類

ホストゾーン

ドメインとサブドメインのトラフィックのルーティングする方法

パブリックホストゾーンインターネット上に公開されたルーティングを管理
プライベートホストゾーンVPCに閉じたルーティングを管理

DNSレコード方式

SOADNSサーバー、ドメイン管理者のメールアドレス、シリアル番号など
Aホスト名とIPアドレス
MXメールの配送先のホスト名を定義
CNAME外部の正規ホスト名に対する別名を定義
ALIASAWSサービス用のレコード
ZoneApexを設定可能で、高速で利用可能

DynamoDB

キーバリュー(ワイドカラム型)のデータベース

以下の特徴がある。

  • プロビジョンドスループットでテーブルごとにスループットの指定が可能
  • ストレージの容量制限がない
  • 自動で3か所のAZに保存

整合性には結果整合性モデルを採用している。

パーティショニングによって分散処理している。

ビックデータ処理、アプリケーション向けに活用される。

これだけでOK! AWS 認定ソリューションアーキテクト – アソシエイト試験突破講座(SAA-C02試験対応版)
ハッシュキーハッシュとして利用。パーティションを決定するキー
レンジキーハッシュキーと合わせて使う付属属性

暗黙的なキーハッシュキーやレンジキー。検索に利用するインデックス(1テーブルに1つ)
明示的なキーローカル・セカンダリ・インデックス(LSI)→追加で設定する別のレンジキー(1テーブルに5つ)
グローバル・セカンダリ・インデックス(GSL)→ハッシュキーの代わりになるもの。全データに対してグローバルに付与(1テーブルに5つ)
これだけでOK! AWS 認定ソリューションアーキテクト – アソシエイト試験突破講座(SAA-C02試験対応版)

DynamoDB Streams

24時間のテーブルの操作履歴を保存/送信するサービス。Lambdaを経由してテーブル更新をトリガにしたアプリを作成できる(クロスリージョンレプリケーション、プッシュ通知、など)

DynamoDB Accelerator (DAX)

DynamoDBにインメモリキャッシュ型の機能を付加する。マイクロ秒単位まで結果整合性が必要なアプリを使用。

グローバルテーブル

DynamoDBの性能のまま、ほかのリージョンにレプリケーションを作成できる。

オンデマンドバックアップ

任意のタイミングでバックアップ可能な大規模ストレージサービス

Read/Writeキャパシティオンデマンド

オンデマンドで自動的に読み込み速度をスケーリングできるサービス

Aurora

新しいRDBの構造。NoSQL型の分散高速処理とRDBのデータ解析性能を提供する。MySQLの2.5~5倍の性能かつ商用サーバーの1/10のコストで利用可能。

3つのAZに書く2つのコピーを設置可能、10GB~64TBをシームレスに拡張可能(Auto-Scalingにより実質無制限)、15個のリードレプリカを作成して高速読み込みできる。

仮想ボリューム

6つのコピーはAZをまたいでいるが、一つの仮想DBと認識できる

DBクラスタ構成

マスタとリードレプリカをまとめたもの。書き込みか読み込みかによってエンドポイントで判断してアクセスするDBが決まる

マルチマスター

書き込みが可能なマスタデータもAZをまたいで複製できるようになった。Write性能の可用性と書き込み性能が向上。

Auroraサーバレス

オートスケーリングのような機能。自動でスケールアップ/スケールダウンしてくれる。

AuroraグローバルDB

ほかリージョンにリードレプリカを高速/低遅延で作成可能なサービス

EFS

保存容量、IOPS性能がスケーラブルで自動で増減。NASのような用途として使用でき、何千もの同時アクセスが可能。セキュリティグループでアクセス制限する。

EC2からはマウントターゲットをエンドポイントとしてアクセスする。

Kinesis

これだけでOK! AWS 認定ソリューションアーキテクト – アソシエイト試験突破講座(SAA-C02試験対応版)

IoTシステムを構築するシステム。大量のデータ処理をする仕組み。

Data Streams

ストリームデータを処理するアプリケーションを構築できる。

Data Firehose

S3やRedshiftに簡単にストリームデータを配信する

Data Analytics

ストリームデータをリアルタイムで可視化・分析する

Redshift

これだけでOK! AWS 認定ソリューションアーキテクト – アソシエイト試験突破講座(SAA-C02試験対応版)

スケーラブルなDWH/データレイク分析サービス。ペタバイト単位までスケール可能。単一AZ構成される。

列志向のRDBで、高速にアクセスできる。

RA3インスタンス大規模かつ高性能のインスタンス
DC2インスタンス基本的な安価なインスタンス

マテリアライズドビュー

SQLのビューと同様のもの。よく使うものを保存しておける。

機械学習によるクエリの効率化

テーブルメンテナンスやクエリの実行順序などを機械学習で自動で最適化してくれる。

クエリエディタ

マネジメントコンソール内でクエリを作成できる。

RedShift Spectrum

ユーザー管理のS3バケットに対してRedShiftから直接データ解析を実行可能。

データ連携

S3, Kinesis, RDS, DynamoDB, Amazon EMRからデータを取得できる。

QuickSight、S3、Amazon Machine Learning、RDSに出力できる。

AWS Lake Formation

Best Practiceに基づき、データレイクを容易に構成できる仕組み。

キャッシュ

ElastiCache

キャッシュをメモリに保存することで高速に処理する仕組みを分散的に容易に構築できるサービス

データアクセスを高速にしたいケースがあればキャッシュを利用する。

Redis、Memcachedの2つのオープンソースを利用可能。Memcachedの方がシンプルで利用しやすい。Redisを使う場合、バックアップやフェイルオーバーなどが使えるため、インメモリデータベースに近い用途で使える。

CloudFront

これだけでOK! AWS 認定ソリューションアーキテクト – アソシエイト試験突破講座(SAA-C02試験対応版)

AWSが提供するWEBコンテンツ配信を高速処理するためのサービス(CDNサービス)。

設定要素としてはDistributionを設定する。

WEB DistributionHTTPプロトコルを利用したWEB配信を利用
RTMP DistributionAdobeを利用して配信する場合はこちらを利用
  1. キャッシュ対象設定(対象のURLを設定する)
  2. TTLの設定(キャッシュ時間TTLを設定する)

サーバレス

SQS

送信側から制御やデータなどをキューとして保存し、受信側から問い合わせがあった時に送信するための中継点としてのサービス。

直接接続すると、受信側がBusyで受け取れない場合処理が止まるが、SQSにキューとして処理をためることで、送信側/受信側の処理を止めることなく継続的に処理できる。

効果用、高スケーラブル、高スループットかつ安価なサービス

メッセージ保持期間は最大14日間までユーザで設定できる。

キューメッセージの処理順序は、標準キューかFIFOキーが存在する。

これだけでOK! AWS 認定ソリューションアーキテクト – アソシエイト試験突破講座(SAA-C02試験対応版)

SNS

プッシュ型でメッセージを送信するシンプルなサービス。

これだけでOK! AWS 認定ソリューションアーキテクト – アソシエイト試験突破講座(SAA-C02試験対応版)

SES (Simple Email Service)

メール送受信が可能なサービス。

メールサーバーとしての利用も可能だが、アプリケーション間の連携としても利用可能。

ドメインの登録やメールの事前申請が必要。

Lambda

単体で起動可能なファンクションサービス。

サービス/アプリから起動されるPushモデルと、Lambdaから実行するPullイベントがある。

サンプルコード集としてブループリントというものがあるので、こちらをベースに作成する。

共通機能をライブラリとして格納できるLambda Layerがある。

また、ロードバランサーからの呼び出しも可能になった。

エッジロケーションでの利用も可能

環境の自動化

これだけでOK! AWS 認定ソリューションアーキテクト – アソシエイト試験突破講座(SAA-C02試験対応版)
これだけでOK! AWS 認定ソリューションアーキテクト – アソシエイト試験突破講座(SAA-C02試験対応版)
これだけでOK! AWS 認定ソリューションアーキテクト – アソシエイト試験突破講座(SAA-C02試験対応版)

Elastic Container Service (ECS)

Dockerコンテナをサポートする拡張性とパフォーマンスに優れたレジストリサービス

Elastic Container Registry (ECR)

レジストリサービスでDockerコンテナのイメージ保存サービス

Elactic Kubernetes Service (EKS)

オープンソースのKubernetesを実行するサービス

AWS Fargate

コンテナを実行するECSに対応したコンピューティングエンジン

セキュリティ

これだけでOK! AWS 認定ソリューションアーキテクト – アソシエイト試験突破講座(SAA-C02試験対応版)

CloudHSM

不正使用防止策がとられている専用HWモジュールによる暗号キーを保護するサービス。

AWS Directory Service

ユーザにかかわる各種情報を保存して利用する。AD Connectorを使うことでオンプレで使用しているActive directoryの情報などを取得できる。

Security Token Service (STS)

限定的で一時的なセキュリティ認証情報を提供するサービス

Amazon Cognito

モバイルアプリケーションの認証に利用

AWS Certificated Manager (ACM)

SSL/TLS証明書のプロビジョニング、管理、デプロイを実行するサービス

運用

これだけでOK! AWS 認定ソリューションアーキテクト – アソシエイト試験突破講座(SAA-C02試験対応版)

AWS Config

変更管理や構成変更を管理するサービス。

スナップショットをS3に保存

Stream, History, Snapshotの3つのサービスにより構築される。

AWS Service Catalog

AWSで承認されたITサービスのカタログを作成、管理する支援サービス。使用できるリソースを定義できる。

CloudFormationのテンプレートを使用して定義する。

AWS Artifact

重要なコンプライアンス関連情報の一元管理のリソース。各国のコンプライアンスレポートを提供する「Reports」と、契約の確認/受諾/管理を実施する「Agreements」からなる。

Pricing Calculator

簡易コスト計算ツールよりも細かい設定をして確認できる。

AWS Systems Manager

運用タスクを自動化するサービス。

EC2のパッチ適用やデプロイの自動化、運用の可視化などが可能。

検出制御サービス

CloudTrail

ユーザの操作をロギングするサービス

ログファイルは暗号化されてS3に保存される

KMSによる暗号化もサポート

CloudWatch

Billing機能により請求額に対するアラートを設定できる

AWS GuardDuty

AWS CloudTrail、Amazon VPC フローログ、DNS ログを利用して、AWS上の異常な振る舞いを検出するサービス。機械学習による解析ができる。

Amazon Inspector

ベストプラクティスからの逸脱性を確認してセキュリティ評価を実施する

AWS WAF

ウェブアプリケーションファイアフォール

ウェブアプリ、APIを保護する。

AWS Shield

DDoS用の保護サービス。デフォルトのスタンダード、有料のアドバンスドがある。

AWS Security Hub

セキュリティーアラートを一元的に表示して管理できるサービス

運用コスト

AWS Budgets

CloudWatchよりも細かくサービスなどに分けてアラートを設定できる。

AWSのコストと使用状況レポート

最も細かく包括的に出力されるレポート

コメント