3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

素人のAWS認定ソリューションアーキテクト – アソシエイト試験

Posted at

概要

社内でAWSの重要度が高まっているのと、純粋にAWSに興味があったため受験しました。
振り返りの意味を込めて、その時に役に立ったこと、ポイントなどを紹介します。
(※2020年10月時点の情報です。)
あくまで、「試験合格」に絞っています。AWSを使う技術とはまた別物という認識でお願いします。

勉強前の自分の状態

・インフラ経験は2年程(オンプレミス)
・AWSはまったく触ってこなかった
・情報技術者試験持ちの知識量

「インフラの知識あるなら楽勝でしょ?」
これは良く言われていますが、少なくとも私はそれほど役に立たなかった・・・(インフラといっても幅広いから個人の意見です)
1番楽勝なのは、常に触り続けていること。

試験対策の期間

2020/8/20 : 自社でAWSの重要度が高まっていると聞く。じゃあ受けるか、と軽く決める
2020/8/21~ : 全然勉強できなかった。(子供、通勤、モチベ、etc・・・)
2020/9/15 : そろそろヤバいと思いだす。通勤時間と夜の数分を勉強に割り当てる。
2020/10/3 : 模擬試験で60%代を叩きだす。恥ずかしさで死にたくなる。ちょっとだけ焦りながら勉強する。
2020/10/10 : 合格

総勉強時間 : 18時間位

試験対策と勉強法

1. 公式ドキュメントを読む

とりあえずガイドを読んでみる。

AWSドキュメント

なんか聞き覚えがあるようなサービス名があるな〜。すごい一杯あるし...覚えられるのかなこれ〜(心配)
結果、時間もないので主要なサービスを見返す時に活用する程度で終了。

すぐさま、こっちへ逃げました。

AWS クラウドサービス活用資料集トップ

こっちもいいけど、流石に時間が溶けるので程々に。

AWS ホワイトペーパーとガイド

2. 試験対策本の購入

徹底攻略 AWS認定 ソリューションアーキテクト – アソシエイト教科書

黒本ってやつですね。JavaSilver取得の時にお世話になりました。
しかしAWS試験はいわゆる「暗記問題」とも言い難いため、中身はサービスの紹介が主になっていました。
入門書としては最適かもしれません。
試験対策としては、ちょっと物足りなさを感じました。

3. AWSで実際に構築

文字を読んでも良く分からん!我は実際に手を動かして覚えるタイプよ!
って方も、それ以外もオススメ。
当たり前ですけどお金が掛かるので注意。(無料枠もあるけど直ぐ飛び出る)
必ずCloudWacthで課金アラームをセットしよう。
AWS の予想請求額をモニタリングする請求アラームの作成

自分はWebサービスを構築してみて、各種必要な設定などを確認しました。
やはり、自分で操作すると覚えが違いますね。

AWSにWEBアプリの最小構成環境を作る

とはいえ、試験範囲のサービスは膨大で、全てを自前で用意したりすると、結構なお金が掛かるので現実的ではないです。

4. WEB問題集でスキマ時間を活用

AWS WEB問題集で学習しよう

これに凄く助けられました。
通勤時間の合間に。休憩時間の合間に。
まとまった時間が中々とれない自分にとって、このお手軽さは魅力的でした。
むしろ合格するだけなら、これをひたすらやることをオススメします。

試験のポイント

問題の内容は、サービスのユースケース、もしくは要件に対するコストパフォーマンスを問うものが主となっていました。
つまりサービスをどれだけ触ってきたかがモロに出ます。
もちろん、冒頭でも書きましたが私もAWSはまったく触ってない素人から合格したので、どこがポイントが紹介します。

1. キーワードによる暗記

AWS試験は暗記ではないとは書きましたが、実際サービスに関連する「問題のキーワード」があります。それを覚えることによって、問題の難易度は大幅に下がります。
以下に幾つか列挙していきますので、ご参考にどうぞ。

Keyword Answer Comment
[ 大量の静的コンテンツ ] [ ユーザへの応答時間が長い ] S3をオリジンとしてCloudFrontディストリビューションを設定する。 SAA試験ではCloudFrontをめっちゃ使わせようとします。まぁ便利なんですけどね。
[ RDS ] [ 読み取りのレイテンシー ] リードレプリカを作成する。 RDSで読み取りときたら8割これ。
[ データベース ] [ 構造化データ ] [ 拡張性・可用性 ] Amazon Aurora 答えにMysqlとかPostgresqlとか入ってたら確実。AWS以外のサービスは幸福になれない。
[ セッションデータ ] [ 一貫性・可用性・耐久性 ] Amazon DynamoDB セッションデータだとDynamoDBが6割。時々ElasticCacheだったりする。
[ POSIX準拠 ] [ 共有ストレージ ] Amazon EFS POSIX準拠がきたら確定演出。
[ S3 ] [ 操作ミスによる削除防止] バージョニング有効化 MFA認証が付属する場合もある。

これらは一例ですが、複数の問題を解いていく内に自分の中で掴んでいくはずです。
しかし暗記だけだと辛いのも事実・・・。
そのため複数の活用例を理解し、自分の中で噛み砕く必要があります。

2. 頻出するパターン

AWSのサービスを組み合わせたものでも問題中で頻出するものがあります。(ほとんどが活用集に書いてあるもの)
それも3ケースのみですが紹介していこうと思います。

◇◇ ケース1 ◇◇
   VPCのセキュリティを設定して、バックエンドのDBインスタンスがインターネットからアクセスできないようにし、
   アプリケーション層からのみアクセスできるようにする。

データベースのネットワークセキュリティを設定する問題です。
具体的には以下のことが必要です。

  1. DBインスタンスのプライベートサブネットを作成する。
  2. セキュリティグループを設定してアプリケーションのセキュリティグループからのリクスエストのみ許可する。

プライベートサブネット、セキュリティグループ、ネットワークACLはセキュアな構成を作成する上で、必ずと言っていいほど出ます。

  • プライベートサブネット: インターネットゲートウェイを指定してないサブネット。
  • セキュリティグループ: インスタンス単位。ステートフルな制御。
  • ネットワークACL: サブネット単位。ステートレスな制御。
◇◇ ケース2 ◇◇
単一のアベイラビリティゾーン(AZ)に2つのEC2インスタンスが実行されている。
このアーキテクチャの可用性を高めたい。

可用性を高める問題です。
SAAには可用性を問うものが大多数を占めますが、そのなかでもAuto Scalingはかなり頻出するサービスです。
あと単一AZと出たら、複数AZに分散させるのが定石です。
またAuto Scalingで増えたインスタンスを負荷分散するためApplication Load Balancer(ALB)も併用します。

  1. 複数のAZで同一のインスタンスが起動するように構成されたAuto Scalingグループにインスタンスのターゲットグループを追加する。

  2. ALBをAuto Scalingグループのフロントに配置する。

    この構成はかなりメジャーらしく、AWSも推してくる。
    Auto ScalingはCloud Watchを使ったリソース閾値のトリガーや、スケジュールでのスケールアウトが可能。どの方式でAuto Scalingを設定できるかも覚えておきたい。

  • Auto Scaling: スケーリングプランの設定値によりEC2インスタンスのスケールアウトが可能。リージョン間でグループ設定出来ないので注意。
  • ALB: 標準的なロードバランシングの機能を持っていることに加え、設定したパスで振り分けることが可能。動的マッピング。こちらもリージョン間は不可能。
◇◇ ケース3 ◇◇
インフラストラクチャの管理する運用オーバーヘッドなしで、マイクロサービスを実行でき、
リクエスト数が急激に変化しても対応できるように、短時間でスケーリング可能なソリューションは?

書いてて思うのですが、凄い良いとこどりですね。
いわゆるサーバレスな構成を選びとる問題です。
最初はスケーリングって単語でAutoScalingとか選びがちです。

  1. API GateWayを配置し、背後でLamdbaを実行する。

サーバレスって良く分かっていなかったですが、AWSを通して理解できた気がします。

  • AWS Lamdba: サーバを起動することなくコード実行可能。可用性、スケーリングはLamdba自身で自動管理。実行した分だけ料金発生。

  • API GateWay: APIの管理を簡潔に行うサービス。Lamdba以外にもEC2インスタンスとも組合わせ可能。

    上記を3ケースを紹介しましたが、これはAWSのほんの一部であり、試験ではもっと要件を長ったらしくしたものが出ます。
    活用集や問題をこなし、組み合わせの引き出しを多くすることをオススメします。

最後に

試験は日本語で書かれていますが、翻訳が所々おかしいところがあります。
原文が表示できるので、適宜英語の方で読むと謎な日本語が解決するかもしれません。

AWSの試験を受ける理由は人それぞれかと思いますが、せっかく学んだ技術、個人でも仕事でも積極的に活用していきたいですよね。
そして試験合格で満足せず、継続的にAWSを学んでいくことが大事だと思います。
恐ろしいことにAWSの世界はこれからも広がっていくのでしょうから・・・。

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?