おっさん社内SEエンジニアの勉強ブログ

勉強記録のブログとなります。

SAA学習-模擬試験1回目問題と要点

今回のテーマ:模擬試験1回目問題と要点

SAA模試1回目

EBS


  • 設問ポイント
    • 200GB規模のRDB
    • 13:00~17:00がピークタイム
    • コスト効率がよいストレージ?
  • 解説

    • コスト効率のよいSSD
      • 汎用SSD
        • 200GBのRDS=小規模
        • ピーク時4時間
        • 高速アクセスなし
    • コスト効率よくないSSD
    • コスト効率:汎用SSDスループット最適化>プロビジョンIOPS
  • 設問ポイント

    • 500MiB/sのスループット
    • 継続的なログ処理
    • 処理性能とコスト効率?
  • 解説

DB


  • 設問ポイント
    • SMBを使用したデータ転送
  • 解説

  • 設問ポイント

    • Kinesisストリームを数日かけて送信
    • ストリームデータをS3へ保存するがS3にない
    • データの未送信あり
  • 解説

    • Kinesis Stream
      • できること
        • ログとデータフィードとの取り込みと処理高速化
        • リアルタイムのメトリクスとレポート作成
        • リアルタイムデータ分析
        • 複雑なストリーム処理
      • 保存期間
        • デフォルト24時間以内まで
        • 最大8760時間(365日)
  • 設問ポイント

    • バックエンド
      • 一時的にアクセス集中
      • DynamoDB
    • フロントエンド
    • 費用帯効果が高くスケーラブルな構成
  • 解説
    • スケーラブル
      • DynamoDB
        • Auto Scaling設定
        • 一時的な高負荷に対するスケーリング
      • SQS
      • スケーラブル:拡張性(scalable)

docs.aws.amazon.com

  • 設問ポイント
    • 負荷テスト実施時、CPU100%
    • 読み取り処理が思い
    • データレイヤーを最適化する方法?
  • 解説

    • リードレプリカ
      • パフォーマンスと耐久性を強化
      • DBインスタンスの容量制限を超えてスケールアウトが容易
    • Sharding
      • データベース内の複数テーブルを分割
      • リクエスト増加で単一マスタ限界時に振り分け
      • アクセス分散
  • 設問ポイント

    • ELBで統合されたログファイルを分析
    • ログファイル分析をする構成
  • 解説
    • 構成

docs.aws.amazon.com

  • 設問ポイント
    • ゲーム開発
    • ユーザー行動の解析を高速化
    • 最小待ち時間で実現
  • 解説

    • ElastiCache
      • フルマネージド型のインメモリDB
        • インメモリDB:メモリ依存に保存
      • シームレスにデプロイ/運用/スケール
        • シームレス:意識せず一体的に利用可
      • 大量データを扱うアプリ/性能改善
  • 設問ポイント

  • 解説

    • 読み取りリクエストの増加によるRDS負荷増加
    • RDSの拡張
  • 設問ポイント

    • DynamoDBを利用すべき状況
  • 解説
    • DynamoDB
      • 規模関係なく数ミリ台のパフォーマンス実現
      • KVMおよびドキュメントDB
      • メタデータ・セッションデータなど一連のストリームデータを蓄積
        • ビックデータの解析

aws.amazon.com

  • 設問ポイント
    • RedshiftをDWHで利用
    • クラスターダウンに備える
    • プライマリークラスターのダウン時すぐに利用できる
  • 解説

    • Redshift
      • 高速、シンプル、費用対効果の高いDWH
      • ノード
        • コンピューティングリソース
        • グループ化=クラスタ
      • クロスリージョンスナップショット
        • プライマリークラスターdown
          • 即座に利用できる構成を維持
        • Redshiftクラスター構成時に設定可能
      • シングルAZ配置のみサポート
  • 設問ポイント

    • S3に蓄積したデータをRedshift連携したBI利用
    • プライベートサブネットのみデータ利用に限定
  • 解説
    • Redshift
      • 拡張VPCルーティング
        • VPC内にデータを移動する制御
      • VPCエンドポント
        • S3アクセスをVPC内のみにデータを移動する制御

docs.aws.amazon.com

  • 設問ポイント
    • 大規模データの仕組みをAWSへ移行
    • 現状、数百万行のデータを列集計し定期的にレポーティング
  • 解説

    • Redshift
      • 高速でシンプルかつ費用対効果が高いDWH
      • 列指向型のデータベース
      • 列集計に優れたDWH
        • レポーティングやBIで活用
  • 設問ポイント

    • ステートレスなアプリ構築
    • セッションデータを格納するDB
  • 解説

CloudFront


  • 設問ポイント
    • ECサイト展開
    • 各地域に応じた言語表示
    • 言語区分
      • URL
        • jp
        • en
  • 解説
    • クエリ文字列パラメータ
      • キャッシュ設定
        • HTTPフィールドで言語表示の切り替え
      • サーバー情報を送るためURLの末尾につけ立つ変数

docs.aws.amazon.com

環境の自動化


  • 設問ポイント
    • 社内CI/DC
    • 自動ワークロード設定
    • Elastic Beanstalkのワークロード
      • ワークロード:実行中のSW処理によって占有される度合
  • 解説
    • Elastic Beanstalk
      • 自動的にデプロイメント詳細を処理
      • WEBアプリなどのワーカー環境構築
      • 実行時間の長いワーカープロセスのチューニング

docs.aws.amazon.com

  • 設問ポイント
  • 解説

  • 設問ポイント

    • CloudFrontを利用したグルーバル配信
    • 配信コスト削減効果
  • 解説
    • CloudFront
      • オリジンからファイル取得
      • エッジロケーションからファイル圧縮
      • 各ロケーションにおける配信コスト低減

docs.aws.amazon.com

  • 設問ポイント
    • CloudFormationテンプレート
      • VPCとサブネット構築し、NACL制限
      • パブリック内で制限なしでHTTPアウトバウンド
      • 特定IPからのFTPインバウンド
  • 解説

    • HTTPアウトバウンド許可

        NetworkACL
        Rulenumber:110
        RuleAction:allow
        Egress:true
        CidBlock:0.0.0.0
        PortRange:
            From:80
            To:80
      
    • 特定IPからのFTPインバウンド

        NetworkACL
        Rulenumber:120
        RuleAction:allow
        Egress:false
        CidBlock:特定IP
        PortRange:
            From:20
            To:20
      
    • Egress
      • true→アウトバウンド
      • false→インバウンド
  • 設問ポイント

    • ECS利用しDockerサービスを利用予定
    • Dockerイメージセットの保管先
  • 解説
    • Amazon ECR
      • ECR = Elastic Container Registry

docs.aws.amazon.com

  • 設問ポイント
    • 社内CI/CD
    • chefレシピの利用
  • 解説
    • OpsWorks
      • Chef/Puppet利用可能
      • Chef/Puppet
        • オートフォーメーションプラットフォーム
        • コードを使用し、環境の自動化

docs.aws.amazon.com

サーバレス


  • 設問ポイント
    • ECSを利用し、マイクロサービス型分散システム構築
    • マイクロサービス1とマイクロサービス2の連携
  • 解説

    • SQS
      • サービス間の後処理連携
      • フルマネージド型のメッセージキューイングサービス
      • マイクロサービス
      • 分散システム
      • サーバレス
  • 設問ポイント

    • ユーザーがファイルをS3にアップロード
    • 各ファイルDynamoDBと連携
  • 解説

    • Lambda関数作成
      • ファイルの名前をDynamoDBレコード追加
    • S3バケットのイベント機能有効化
      • Lambda関数と連携
  • 設問ポイント

    • マイクロサービス設計でアプリケーション構築
    • コンポーネントは分離させ連携可
  • 解説

  • 設問ポイント

    • 会員登録のWEBサイト構築
    • SMSにメッセージの自動配信
  • 解説

    • SNS
      • SMS対応デバイスにテキストメッセージ送信
  • 設問ポイント

    • SNSとSQSの違い
  • 解説
    • SQS
      • キューをポーリングするメッセージシステム
      • ポーリング型配信
    • SNS
      • トピックに関するメッセージ送信
      • プッシュ型配信

Rouote53


  • 設問ポイント
    • EC2、CLB、Auto-Scaling、Route53構成
    • Blue/Greenデプロイメント=異なる2つのアプリ
    • ルーティングポリシーは?
  • 解説

docs.aws.amazon.com

VPC


  • 設問ポイント
    • デフォルトのACL設定でサブネット構築
    • Webサーバーはパブリックサブネット
    • DBサーバーはプライベートサブネット
    • DDoS攻撃?が変なIPからありその対策
  • 解説

    • NACL
      • 1つ以上のサブネットに対しインバウンド/アウトバウンドを制御するFW
      • 特定IPに対し拒否設定を登録
      • サブネットの保護を実施
  • 設問ポイント

  • 解説

  • 設問ポイント

    • ELB、複数AZにEC2設置
    • 利用急増
      • Auto-Scaling
    • インターネット接続
  • 解説

    • NATインスタンスからNATGWへ移行
      • NATGWをパブリックサブネットへ設置
      • プライベートサブネット側のルートテーブルにルート追加
  • 設問ポイント

    • 2つのAWSアカウント利用
    • VPC間で連携要件方法?
  • 解説

    • VPCピアリング
      • VPC間接続はVPCピアリングを利用
      • VPC間での相互通信が可能
    • TransitGateway
      • 多数のAWSアカウントやVPC間通信を行う際に利用
  • 設問ポイント

    • パブリックサブネットにEC2
    • インターネット接続可能で、自由にWEBサイトアクセス
    • ルーティングテーブルは何?
  • 解説
    • ルートテーブルの設定
      • 自由にどこからでも接続可
      • インターネット接続可能
        • Target:InternetGW

docs.aws.amazon.com

  • 設問ポイント
    • VPC設定しパブリックサブネット1つ利用
    • 単一VPC内でのCIDR範囲
  • 解説
    • AWS VPC
      • CIDR範囲
        • /16~/28

S3


https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/userguide/using-prefixes.html:embed;cite

  • 設問ポイント
    • 高可用性
    • フォールトトレランス
    • ファイルデータ格納でS3利用
    • AZ損失時でもアクセス可能な状態?
  • 解説
    • Amazon S3の可用性
      • S3はデフォルトで高可用性なので不要
      • フォールトトレランス
        • 構成要素の一部故障や停止
        • 予備の系統に切り替える
  • 設問ポイント
    • BCP対策
    • iSCSIを介してオンプレとの接続
  • 解説

  • 設問ポイント

    • EC2からS3へのアクセス
    • インターネットを通過しない
  • 解説
    • VPCエンドポイント
      • インターネットを通過せずアクセス可
    • cf)インターネットを通過するアクセス

docs.aws.amazon.com

  • 設問ポイント
    • 動画データを大量保存
    • アップロードした動画を利用可能
    • 限られた期限内のアクセス許可
  • 解説
    • Amazon S3のアクセス権限
      • デフォルト
        • オブジェクト所有者のみしかアクセス不可
      • 事前署名付きURLを利用
        • 自身のセキュリティ資格を使用しアクセス可
        • 他ユーザーに対しアクセス許可を提供

docs.aws.amazon.com

  • 設問ポイント
    • 動画保存
    • データ量削減
      • 2か月以上は削除
    • 保存後は変更しない
  • 解説
    • S3 Standard IA
      • アクセス頻度低い
        • IA = Infrequency Access
        • 低コスト
      • 種別
        • 標準IA
          • 再作成できないデータ保管
        • One-zone
          • AZ障害発生時にデータを再作成可能
      • ライフサイクルポリシー
        • 数か月以上のデータ削除

docs.aws.amazon.com

  • 設問ポイント
    • バージョンによってデータ管理
    • 複数EC2インスタンスからストレージにアクセス
    • 頻繁に利用可能
  • 解説

    • S3
      • データ共有
      • バージョニング可能
      • 頻繁に利用
  • 設問ポイント

    • 特定ファイル登録
    • データ確認はレコード生成後2か月は逐次確認
    • 以降のデータ確認は不要
  • 解説

    • S3のライフサイクルポリシー
      • オブジェクトのライフタイムを定義
      • 移動、アーカイブ、削除可
  • 設問ポイント

    • データストレージをクラウド移行
    • データ送信後は変更はほぼなし
    • 例外で特定ファイルを時期不定で更新がある
    • 使用するストレージクラスは?
  • 解説

    • Standard-IA
      • 低頻度アクセス時に利用
      • 重要データを保管
  • 設問ポイント

    • 写真共有サイトを運営
    • 他WEBサイトから共有サイトリンク
    • 広告料金がもらえない
    • 画像リンクの問題解消は?
  • 解説
    • 有効期限付きの事前署名付きURL
      • 利用が終わったら削除
      • リンクからの閲覧拒否

docs.aws.amazon.com

  • 設問ポイント
    • ストレージ容量限界
    • S3を利用し大量データ保管
    • ユーザーがアクセスしデータ保管するため間違って削除があり得る
    • データ保護向けの管理は?
  • 解説
    • S3バケットのバージョンニング有効化
      • 削除ファイルを復元
      • 単一ファイルの複数バージョン保管

docs.aws.amazon.com

EC2


  • 設問ポイント
    • 開発者が本番向けEC2を削除するかも?
    • 対応方法は?
  • 解説

    • EC2の操作制限
      • AWSアカウント分割
        • 開発向けの環境のみ管理
        • 開発用リソースしかアクセスできない
      • タグ付け
        • 専用タグ付与
        • タグベースのIAMポリシー制限
  • 設問ポイント

    • 大量データを定期的に処理
    • 費用効果が高いもの
    • 高負荷時はAuto-Scaling利用し拡張
  • 解説

    • スポットインスタンス
      • 一時的な高負荷時のAuto-Scalingで使用
      • 費用面で格安
  • 設問ポイント

    • 常に6つのEC2が3つのAZで稼働
    • 単一AZが利用不可でも100%のフォールトトレランスが必要
      • フォールトトレランス:障害があってもシステムは稼働
  • 解説

    • フォールトトレランスの条件
      • 1つのAZが落ちても6つのEC2が稼働
      • 各AZに3つのEC2
      • 2つのAZに6つのEC2
  • 設問ポイント

    • Linux AMIから起動した3つのWebサーバ
    • Auto-Scalingが同じAMIで利用
    • パブリックサブネットで稼働
    • 4つ目起動時インターネット接続不可
  • 解説

    • インスタンス起動時の動作
      • パブリックアドレスが付与されないときもあり
      • パブリックIPの割り当てがオフ
  • 設問ポイント

    • Kinesis使用
      • データフィールド取り込み
      • EMRでフィールド分析
        • EMR = Elastic Map Reduce
    • カスタムMySQLへ保存
      • 3つのボリューム
        • ルート
        • ブート
        • RAID-0に分割ボリューム
    • 3つのボリュームのバックアップ取得?
  • 解説

    • EBSのバックアップ
      • すべてのボリュームのスナップショット取得
      • インスタンスを停止
      • 各ボリュームに対し個別にスナップショット作成
  • 設問ポイント

    • VPCには3つのサブネット
      • パブリック:1つ
        • Auto-Scaling設定のEC2
      • プライベート:2つ
    • EC2は同じSGで設定
      • カスタムポートを使用し、モバイル許可するアプリ
      • カスタムポートでインターネット接続
    • ロールアウト:公開、運用開始、本格展開
    • インターネット接続するための条件?
  • 解説

    • セキュリティグループの反映
      • 既存のSGで即時反映
      • インターネット接続用のポート解放
  • 設問ポイント

    • リージョンでの障害発生
    • BCPソリューションの作成
  • 解説

    • EC2のBCP対策
      • EC2からAMIを作成し別リージョンへコピー
      • 障害発生時別リージョンで復元
      • AMIやスナップショットはデータ保存コストのみ
  • 設問ポイント

    • EC2をオンデマンドにスケールアウトするため、Auto Scaling
    • 起動時にソフトウェアをプレインストール
  • 解説

    • Auto Scalingでできない事
    • cf)起動設定
      • ソフトウェアのインストールはない
  • 設問ポイント

    • VPCで異なるサブネットのインスタンス
      • ping実行でTimeout
      • ルートテーブルは有効
      • CIDR上のエントリーあり
  • 解説

セキュリティの確保

  • 設問ポイント
    • EC2とRDS構成のWEBアプリ
    • EBSボリュームの暗号化
  • 解説

    • AWS Key Management Service(KMS)
      • キー作成・管理を容易に実施
      • EBS対応で暗号化可能
  • 設問ポイント

    • 一時的な認証情報
    • 高いセキュリティ要件
  • 解説

    • AWS STS
      • STS = セキュリティアクセストークンサービス
      • 一時的な認証情報
        • アクセスキー
        • シークレットアクセスキー
        • トーク
  • 設問ポイント

    • 自社リソースの保護
    • リソースの保管時とAWSへ転送時のデータ保護は?
  • 解説

  • 設問ポイント

    • S3のデータ暗号化
    • 暗号化キーではない方法
  • 解説
    • SSE-S3
      • Amazon S3がデータとマスターの暗号化キーを管理
      • 暗号化と複合化はS3によって自動で管理

コスト最適化


  • 設問ポイント
    • WEBアプリ数年間利用
    • 利用率:90~100%
    • コスト最適化は?
  • 解説

    • リザーブインスタンス
      • 1年間か3年間をReserved(予約)
      • 通常より安価に使用可能
      • 支払い
        • 全額前払い
        • 一部前払い
        • 前払いなし
  • 設問ポイント

    • EC2とRDSの障害復旧モデル
    • コスト最小化は?
  • 解説
    • 費用対効果が高いBCP対策
      • バックアップを取得し、S3へ保管後にリストア
      • バックアップ方式
        • EC2:AMI
          • スナップショットとブートイメージ
        • RDS:スナップショット

IAM


  • 設問ポイント
    • JSONでのリソース制御
      {
            "Version": "2012-10-17",
            "Statement": [
                {
                    "Sid": "Stmt1487980617000",
                    "Effect": "Allow",
                    "Action": [
                            "codebuild:*",
                            "codecommit:*",
                            "codedeploy:*"
                    ],
                "Resource": [
                    "arn:aws:codebuild:us-east-2:123456789012:project/my-demo-project",
                    "arn:aws:codecommit:us-east-2:123456789012:MyDemoRepo",
                    "arn:aws:codedeploy:us-east-2:123456789012:application:WordPress_App",
                    "arn:aws:codedeploy:us-east-2:123456789012:instance/AssetTag*"
                ]
                }
            ]
      }
    
  • 解説

    • 特定権限設定
      "Action": [
          許可するAWSサービス
      ],
    
      "Resource": [
          制限する項目
      ]
    
    • 制限する項目
      • codebuild
        • 1つのプロジェクトはすべて許可
      • codecommit
        • MyDemoRepoのアプリは許可
      • codedeploy
  • 設問ポイント

    • ルートアカウント作成
    • IAMユーザーとグループ作成
    • 特定のセキュリティ認証情報は?
  • 解説

    • アクセスキー
      • IAMユーザーまたはルートユーザーの長期認証情報
      • アクセスキーIDとシークレットアクセスキーで構成
      • AWS CLI/AWS APIをにプログラムでリクエスト署名
  • 設問ポイント

    • JSONでのS3リソース制御
      {
          "Version": "2012-10-17",
          "Statement": [
              {
                  "Sid": "FullAccess",
                  "Effect": "Allow",
                  "Action": ["s3:*"],
                  "Resource": ["*"]
              },
              {
                  "Sid": "DenyCustomerBucket",
                  "Action": ["s3:*"],
                  "Effect": "Deny",
                  "Resource": ["arn:aws:s3:::customer", "arn:aws:s3:::customer/*" ]
              }
          ]
      }
    
  • 解説
    • アクセス許可
      • S3に対しすべて許可
        {
            "Sid": "FullAccess",
            "Effect": "Allow",
            "Action": ["s3:*"],
            "Resource": ["*"]
        }
      
      • アクセス拒否

          {
              "Sid": "DenyCustomerBucket",
              "Action": ["s3:*"],
              "Effect": "Deny",
              "Resource": ["arn:aws:s3:::customer", "arn:aws:s3:::customer/*" ]
          }
        
      • 設問ポイント

        • EC2のWebアプリ
        • DynamoDBに書き込み
        • セッション読み取り専用EC2あり
        • この時のテーブルアクセス制御は?
      • 解説
        • IAMロールをEC2にアタッチ
          • DynamoDBの読み取り処理を許可

Auto Scaling


  • 設問ポイント
    • EC2インスタンスに対し、AutoScalingの最適化
    • スケールイン/アウトが頻発
    • 対応策?
  • 解説
    • スケールイン/アウト頻発
      • スケールインの開始が早すぎ
      • Auto-Scalingグループ設定
        • クールダウンタイマーの変更
      • CloudWatchアラーム設定
        • スケールインの基準値を変更

運用上の優秀性


  • 設問ポイント
    • BCP対策
    • コスト最適化
    • 他リージョンで必要時同じ構成で実装
  • 解説
    • CloudFormation
      • 既存システム構成の準備
      • AMIなどの指定
      • EBSデータの内容も継承可

今回のテーマは以上です。