AWS(Amazon Web Service)を学ぶ  ~認定資格を取ってみよう~

※本記事は2022年にSekappy社内で行われたIT勉強会の内容を再編集して記事にしたものです。一部の情報が古くなっている可能性がございます。あらかじめご了承ください。

## 1. 記事の目的

この記事では、AWSを全く知らない人でも、AWSの概要や資格制度についてざっくりと理解し、実際に資格取得を目指すきっかけを提供します。以下のポイントを学ぶことができます。

- AWSを全く知らない人でも、AWSが何なのかざっくり理解できるようになる！
- AWSの資格制度の概要を理解できるようになる！
- 例題を一問解いてみる！
- AWS SAA（Solutions Architect Associate）資格取得までの道のりが分かる！

## 2. そもそもAWSとは何ぞや?

AWS（Amazon Web Service）は、クラウドサービスの最大手であり、Amazonが提供するクラウドコンピューティングプラットフォームです。2024年8月時点で326種類以上のサービスが提供されており、個人開発から政府機関のミッションまで幅広く利用されています。

また、初心者でも無料枠を利用して様々なサービスを体験可能です。操作はブラウザのコンソール画面やCUIで行えます。

## 3. AWSの認定資格制度について
AWSには、利用者のスキルレベルや専門分野に応じた多様な認定資格制度が用意されています。以下はその主な資格体系です。

### 基礎コース資格
- Cloud Practitioner / AI Practitioner
- AWSクラウドの基礎的な理解を目的とした知識ベースの資格で、事前の経験は必要ありません。

### アソシエイト資格
- SysOps Administrator / Developer / Solutions Architect / Data Engineer / Machine Learning Engineer
- AWSの知識とスキルを証明し、AWSクラウドのプロフェッショナルとしての信頼性を構築するロールベースの認定資格です。クラウドやオンプレミスでのIT経験が豊富であることが望ましいです。

### プロフェッショナル資格
- Solutions Architect / DevOps Engineer
- AWS上で安全かつ最適化された最新のアプリケーションを設計し、プロセスを自動化するための高度なスキルを証明するロールベースの認定資格です。AWSクラウドの経験が2年以上あることが望ましいです。

### 専門知識資格
- Advanced Networking / Security / Machine Learning
- 特定の戦略的領域において深い知識を証明する資格です。試験ガイドで推奨される経験を確認することができます。

## 4. AWS SAA資格試験について
- 想定される対象者: システム設計者
- 証明できること: AWSのテクノロジーを使用して、安全で堅牢なアプリケーションを構築・デプロイするための知識
- 前提条件: なし！未経験者でも受験可能
- 受験時期:最寄りの会場でいつでも受験可！
- 問題形式: 選択式で、4択問題が多い
- 合格ライン: 720/1000点（点数配分は非公開）
- 認定の有効期限: 取得後3年間（上級資格を取得することで更新が可能）
- 受験費用: 15,000円（税抜）

## 5. AWS SAA試験で問われること

AWS SAA試験では、AWSの基本的な思想と「Well-Architected Framework」という5つの設計原則が問われます。

- 運用上の優秀性
- セキュリティ
- 信頼性
- パフォーマンス効率
- コスト最適化

![FireShot Capture 1518 - Sekappy_岡_社内勉強会資料2022年5月.pdf - Google ドライブ - drive.google.com.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3676048/983a9364-5bfd-0447-cfab-ef8404d14a75.png)

設計原則を担保するための諸機能。試験では、「これらの機能をどのサービスが提供しているか」が問われます。ただし、サービスを全部覚える必要はありません。ユースケース重視！

### 基礎編 代表的なサービス
#### コンピューティング系のサービス
- Amazon Elastic Compute Cloud (Amazon EC2):仮想サーバー提供サービス。スペックやOSの種類が豊富。
- Amazon EC2Auto Scaling:EC2を自動でスケールイン・スケールアウトしてくれるサービス。
#### データベース系のサービス
- Amazon Relational Database Service (Amazon RDS) :AWS上で主要RDBエンジンを管理するサービス。
- Amazon Aurora:AWS独自のハイスペックRDBサービス。PostgreSQLと完全互換。
#### ネットワーク系のサービス
- Elastic Load Balancing:アプリケーションへのトラフィック負荷を分散するサービス。
#### ストレージ系のサービス
- Amazon Simple Storage Service (Amazon S3):オブジェクトストレージサービス。
- Amazon Elastic Block Store (Amazon EBS):ブロックストレージサービス。
- Amazon Elastic File System (Amazon EFS):ファイルストレージサービス。

### 応用編 代表的なサービス
#### コンピューティング系のサービス
- AWS Lambda:サーバーレスのコード実行サービス。
- AWS Elastic Beanstalk:アプリケーション自動デプロイサービス。
- Amazon Elastic Container Service (Amazon ECS):仮想コンテナ実行サービス。
#### データベース系のサービス
- Amazon DynamoDB:AWS独自のサーバーレスkey-value型DBサービス。
#### 運用管理系のサービス
- Amazon CloudWatch:メトリクス、ログの取得・保存サービス。
#### ネットワーキング系のサービス
- Amazon CloudFront:高品質・多機能なコンテンツ配信ネットワークサービス。
- Amazon Route 53:DNSサービス。

その他、セキュリティ系や認証系など多種多様なサービスを提供

## 6. 例題

> ある企業の画像処理アプリケーションが、突如として大量のリクエストに直面し、Amazon SQSのメッセージバックログが増加、ユーザーから大量の遅延が報告されています。このシナリオにおける最適なソリューションは次のうちどれでしょうか。

- (A) ピーク時の需要を満たすのに十分なハードウェア専有インスタンスを購入する
- (B) 既存のSQSスタンダードキューをSQS FIFOキューに変換し、可視性タイムアウトを増やす
- (C) AWS Lambda関数をSQSメッセージのコンシューマーとして設定する
- (D) Auto Scalingグループのインスタンスであるメッセージコンシューマーを作成し、Amazon CloudWatchのメトリクスに基づいてスケーリングする

※AWS公式例題より一部体裁を変更して掲載

AWS関連の日本語、読みづらい……! 慣れるまでは(簡単で良いので)図示してみましょう。

![FireShot Capture 1519 - Sekappy_岡_社内勉強会資料2022年5月.pdf - Google ドライブ - drive.google.com.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3676048/3f8fb31d-1179-7f79-1ca4-de4a48229e49.png)

> - (A) ピーク時の需要を満たすのに十分なハードウェア専有インスタンスを購入する

不正解です。ハードウェア専有インスタンスでは、既存のサーバーにバインドされたソフトウェアライセンスを使用することでコストを削減することができます。

ただし、このシナリオでは、サーバーにバインドされたライセンスについては言及していません。AWS Cloud の利点の1つは、ピーク時の消費量に対応するための購入が必要ないことです。AWS Cloud はオンデマンドでスケーリングできます。

> - (B) 既存のSQSスタンダードキューをSQS FIFOキューに変換し、可視性タイムアウトを増やす

不正解です。FIFO キューは、メッセージが順不同に処理された場合に発生する問題を解決します。FIFO キューは、突然のボリューム増加時にパフォーマンスを向上させません。また、SQS キューを作成すると変換することはできません。

> - (C) AWS Lambda関数をSQSメッセージのコンシューマーとして設定する

不正解です。このシナリオの一部のファイルは、処理に最大20 分かかる場合があります。Lambdaには15 分の操作制限があります。

よって(D)の

> - (D) Auto Scalingグループのインスタンスであるメッセージコンシューマーを作成し、Amazon CloudWatchのメトリクスに基づいてスケーリングする

が正解となります。

## 7. 合格までの道のり

### 試験を受けたきっかけ
- 体系的に学ぶ機会を設けたかった
    - 前職での利用経験
    - 「AWSわかります」って言えるようになる(？)
    - 「俺たちは雰囲気でAWSを触っている」からの脱却
    - 「体系的に分かってる」ことがバリューになる！

### 試験までにやったこと
- 勉強(合計25時間くらい)
    - [AWS SkillBuilder](https://aws.amazon.com/jp/training/digital/)会員登録+申し込み
    - [AWSのハンズオン](https://aws.amazon.com/jp/events/aws-event-resource/hands-on/)実施
    - 公式(無料。丸い。20問しかない)
    - [CloudTech](https://kws-cloud-tech.com/)(丸い)
    - [Udemy](https://www.udemy.com/ja/) (最大手。割安。出題形式がちょっと意地悪。難易度は本番と同じくらい)
    - [オレンジ本](https://www.amazon.co.jp/AWS%E8%AA%8D%E5%AE%9A%E8%B3%87%E6%A0%BC%E8%A9%A6%E9%A8%93%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88-AWS%E8%AA%8D%E5%AE%9A-%E3%82%BD%E3%83%AA%E3%83%A5%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%A2%E3%83%BC%E3%82%AD%E3%83%86%E3%82%AF%E3%83%88-%E3%82%A2%E3%82%BD%E3%82%B7%E3%82%A8%E3%82%A4%E3%83%88-NRI%E3%83%8D%E3%83%83%E3%83%88%E3%82%B3%E3%83%A0%E6%A0%AA%E5%BC%8F%E4%BC%9A%E7%A4%BE/dp/479739739X)(今回使わなかったけどおススメです。3,000円くらい)
- 模擬試験(3回くらい受けよう)。
- その他、Qiitaに合格体験記がたくさん掲載されているので参考にしよう。

合格すると......
- こんなPDFが届く！
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3676048/d5527753-67f0-8faf-6ad3-6ccbb11ebcb1.png)
- 認定バッチがもらえる
- 他の資格の受験費が半額になるクーポンがもらえる!(有効期限:3年)