Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Amazon S3から考えるアーキテクチャ設計の勘所 / 20251113 Masaki Okuda

Amazon S3から考えるアーキテクチャ設計の勘所 / 20251113 Masaki Okuda

2025/11/13 つながりテック #3 秋の夜長LT会
https://tunagari-tech.connpass.com/event/372363/

株式会社SHIFT
アジャイル推進部 DevOps推進G
奥田 雅基

Avatar for SHIFT EVOLVE

SHIFT EVOLVE PRO

November 13, 2025
Tweet

More Decks by SHIFT EVOLVE

Other Decks in Technology

Transcript

  1. Copyright SHIFT Inc, All Rights Reserved. 2025 / Copyright SHIFT

    Inc, All Rights Reserved. 1 つながりテック #3 秋の夜長LT会 株式会社SHIFT アジャイル推進部 Okuda Masaki 13 11 19:30-21:00 奥田 雅基 Amazon S3から考える アーキテクチャ設計の勘所
  2. 2 Copyright SHIFT Inc, All Rights Reserved. AWSを触り始めた初心者、実務で活用していきたいと考えている方 対象者 •

    次の対象者に本LTを活用していただきます 1. AWSを触り始めたばかりでアーキテクチャが分からない方 2. 実務で使えるアーキテクチャ設計をキャッチアップしたい方 3. Amazon S3を通じて何ができるのか知りたい方
  3. 3 Copyright SHIFT Inc, All Rights Reserved. Amazon S3を使った静的Webサイトから設計ポイントを紹介 今回伝えたいこと

    • 参加者には次の内容を持ち帰っていただきます 1. Amazon S3を使った静的Webサイトでできること 2. 静的Webサイトで可用性、セキュリティを担保する方法 3. 実務で静的Webサイトを設計するためのポイント
  4. 4 Copyright SHIFT Inc, All Rights Reserved. 自己紹介 奥田 雅基|Okuda

    Masaki 株式会社SHIFT アジャイル推進部 DevOpsエンジニア 2016年:システム運用保守として社会人スタート 2025年:SHIFT入社 現在はDevOpsエンジニアとして活動 社外活動:JAWS-UG彩の国埼玉支部運営 X:@mob_engineer 一言:11/8にCloudOpsに合格しました
  5. 5 Copyright SHIFT Inc, All Rights Reserved. アジェンダ 1.Amazon S3で静的Webサイトを作ってみる

    2.静的Webサイトから学ぶアーキテクチャ設計のポイント 3.まとめ
  6. 7 Copyright SHIFT Inc, All Rights Reserved. AWSから提供されているストレージサービスの一つ そもそもS3とは? •

    Amazon Simple Storage Service (Amazon S3) は、業界をリードするスケーラビリ ティ、データ可用性、セキュリティ、およびパフォーマンスを提供するオブジェクト ストレージサービスです。あらゆる規模や業界のお客様が、Amazon S3 を使用して、 データレイク、ウェブサイト、モバイルアプリケーション、バックアップおよび復元、 アーカイブ、エンタープライズアプリケーション、IoT デバイス、ビッグデータ分析 など、広範なユースケースのデータを容量にかかわらず、保存して保護することがで きます。Amazon S3 には、特定のビジネス、組織、コンプライアンスの要件を満た すために、データへのアクセスを最適化、整理、設定できる管理機能があります。 引用:https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/userguide/Welcome.html#CoreConcepts
  7. 8 Copyright SHIFT Inc, All Rights Reserved. Amazon S3を支えるShardStore技術に関しても論文が公開されている (余談)S3技術に関する技術論文も公開されている

    引用:https://assets.amazon.science/07/6c/81bfc2c243249a8b8b65cc2135e4/using-lightweight-formal- methods-to-validate-a-key-value-storage-node-in-amazon-s3.pdf ShardStore: Amazon S3の内部アーキテク チャの一種。データを連続配 置することで読み込み時間を 短縮化する技術。
  8. 9 Copyright SHIFT Inc, All Rights Reserved. 3つの手順で実装することができる Amazon S3で静的Webサイトを実装する方法

    1. Amazon S3バケットを作成する 2. Webサイトに表示するHTMLファイルを格納する 3. 「静的ウェブサイトのホスティング有効化」をクリック
  9. 10 Copyright SHIFT Inc, All Rights Reserved. Amazon S3のみの構成 AWS

    Cloud Amazon Simple Storage Service (Amazon S3) Users Internet インターネット経由で S3バケットのエンド ポイントへアクセス
  10. 11 Copyright SHIFT Inc, All Rights Reserved. 1.Amazon S3で静的Webサイトを作ってみる 3.まとめ

    2.静的Webサイトから学ぶアーキテクチャ設計のポイント アジェンダ
  11. 13 Copyright SHIFT Inc, All Rights Reserved. Amazon CloudFrontを利用すれば可用性を高められる HTTPS対応について

    引用:https://docs.aws.amazon.com/ja_jp/AmazonCloudFront/latest/DeveloperGuide/Introduction.html • Amazon CloudFront は、ユーザーへの静的および動的なウェブコンテンツ (.html、.css、.js、イメージファイルなど) の配信を高速化するウェブサービスです。 CloudFront では、エッジロケーションというデータセンターの世界的ネットワーク を経由してコンテンツを配信します。CloudFront でサービスを提供しているコンテ ンツをユーザーがリクエストすると、リクエストはエッジロケーションにルーティ ングされ、レイテンシー (遅延時間) が最小になります。これにより、コンテンツは 可能な限り最高のパフォーマンスで配信されます。
  12. 14 Copyright SHIFT Inc, All Rights Reserved. Amazon CloudFrontを追加した場合の構成 AWS

    Cloud Amazon Simple Storage Service (Amazon S3) Users Internet Amazon CloudFront フロントエンドにAmazon CloudFrontを 置くことで可用性を高められる
  13. 15 Copyright SHIFT Inc, All Rights Reserved. Amazon CloudFrontとAWS WAFを組み合わせればOK

    セキュリティについて 引用:https://docs.aws.amazon.com/ja_jp/waf/latest/developerguide/waf-chapter.html • AWS WAF は、保護されたウェブアプリケーションリソースに転送される HTTP(S) リクエス トをモニタリングできるウェブアプリケーションファイアウォールです。以下のリソースタイ プを保護できます。 • Amazon CloudFront ディストリビューション • Amazon API Gateway REST API • Application Load Balancer • AWS AppSync GraphQL API • Amazon Cognito ユーザープール • AWS App Runner サービス • AWS Verified Access インスタンス • AWS Amplify
  14. 16 Copyright SHIFT Inc, All Rights Reserved. AWS WAFを追加した場合の構成 AWS

    Cloud Amazon Simple Storage Service (Amazon S3) Users Internet Amazon CloudFront AWS WAF AWS WAFを追加することで セキュリティ攻撃への対策を行える
  15. 17 Copyright SHIFT Inc, All Rights Reserved. Amazon CognitoとAmazon CloudFrontを統合しユーザー認証を実現

    特定ユーザーのみにアクセスさせたい 引用:https://docs.aws.amazon.com/ja_jp/cognito/latest/developerguide/authentication.html • Amazon Cognito には、ユーザーを認証する方法がいくつか用意されています。ユー ザーはパスワードと WebAuthn パスキーを使用してサインインできます。Amazon Cognito は、E メールまたは SMS メッセージでワンタイムパスワードを送信できま す。独自の一連のチャレンジとレスポンスを調整する Lambda 関数を実装できます。 これらは認証フローです。認証フローでは、ユーザーはシークレットを提供し、 Amazon Cognito はシークレットを検証し、アプリケーションが OIDC ライブラリで 処理するための JSON ウェブトークン (JWTs) を発行します。この章では、さまざま なアプリケーション環境でさまざまな認証フロー用にユーザープールとアプリケー ションクライアントを設定する方法について説明します。。
  16. 18 Copyright SHIFT Inc, All Rights Reserved. Amazon Cognitoを追加した場合の構成 AWS

    Cloud Amazon Simple Storage Service (Amazon S3) Users Internet Amazon CloudFront AWS WAF Amazon Cognito Amazon Cognitoに登録されている アカウントのみアクセス可能になる
  17. 19 Copyright SHIFT Inc, All Rights Reserved. Amazon Route53に自社ドメインを移管すれば一元管理が可能 ドメイン管理についても

    引用:https://docs.aws.amazon.com/ja_jp/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.html • CloudFront ディストリビューションで Route 53 ドメイン名を使用する場合は、 Amazon Route 53 を使用して、CloudFront ディストリビューションを指すエイリア スレコードを作成します。エイリアスレコードは、DNS への Route 53 拡張です。 CNAME レコードに似ていますが、ルートドメイン (example.com など) とサブドメイ ン (www.example.com など) の両方にエイリアスレコードを作成できます (サブドメ インのみに対して CNAME レコードを作成できます)。エイリアスレコードの名前と タイプに一致する DNS クエリを Route 53 が受け取ると、Route 53 はディストリ ビューションに関連付けられたドメイン名で応答します。
  18. 20 Copyright SHIFT Inc, All Rights Reserved. Amazon Route53を追加した場合の構成 AWS

    Cloud Amazon Simple Storage Service (Amazon S3) Users Internet Amazon CloudFront AWS WAF Amazon Cognito Amazon Route 53 Amazon CloudFrontのドメイン名でなく 企業のドメイン名でAmazon S3へ アクセスできるようになる
  19. 22 Copyright SHIFT Inc, All Rights Reserved. 監視設定、CI/CDを考慮した場合の構成 AWS Cloud

    Amazon Simple Storage Service (Amazon S3) Users Internet Amazon CloudFront AWS WAF Amazon Cognito Amazon Route 53 Amazon CloudWatch administrator Amazon Simple Notification Service (Amazon SNS) AWS CodeDeploy Developer Amazon CloudWatchと Amazon SNSで管理者へ 通知できる仕組みを実装 GitHubとAWS CodeDeployを 組み合わせてマージされたら 自動的にS3へデプロイが可能
  20. 24 Copyright SHIFT Inc, All Rights Reserved. 「設計要員のスキル」でなく「運用時のスキル」を基準に考える 私が考えるアーキテクチャ設計の勘所 1.

    プロジェクトによって最適解は異なってくる • 一時的な利用、PoCであればCI/CDを実装しないのも選択肢に入れる • 社内ネットワークに閉じているのであればAWS WAFは不要 2. Amazon CloudWatchによる監視は運用に直結する • 「アラートを出す」だけでなく「次の対応方法が分かる」状態にする • Amazon Q Developerの機能を活用するのも有効 3. コード管理だけでなくドキュメント管理も考える • Sphinxなどのドキュメント作成に特化したOSS利用も選択肢に入れる • 「誰が、何をしているか」が可視化出来ている状態を目指す
  21. 25 Copyright SHIFT Inc, All Rights Reserved. 1.Amazon S3で静的Webサイトを作ってみる 3.まとめ

    2.静的Webサイトから学ぶアーキテクチャ設計のポイント アジェンダ
  22. 26 Copyright SHIFT Inc, All Rights Reserved. Amazon S3を使った静的Webサイトから設計ポイントを紹介 今回伝えたいこと

    • 参加者には次の内容を持ち帰っていただきます 1. Amazon S3を使った静的Webサイトでできること 2. 静的Webサイトで可用性、セキュリティを担保する方法 3. 実務で静的Webサイトを設計するためのポイント
  23. 27 Copyright SHIFT Inc, All Rights Reserved. AWS BuilderCardsを活用してみる 手っ取り早くアーキテクチャを理解する方法

    • AWS BuilderCardsで遊んでみることで「AWSのアーキテクチャの 基本」をキャッチアップすることができます!! 引用https://aws.amazon.com/jp/builders-flash/202405/japanese-builder-cards/
  24. 28 Copyright SHIFT Inc, All Rights Reserved. 参考サイト • AWS

    システム構築 非機能要件ヒアリングシートを公開してみた • https://dev.classmethod.jp/articles/survey-non-functional-requirement/ • アーキテクチャの設計(AWSドキュメント) • https://docs.aws.amazon.com/ja_jp/prescriptive-guidance/latest/data-storage- decoupling-sas-fsx/architecture-design.html • AWSのアーキテクチャ図を描きたい ! でもどうすれば良いの ? • https://aws.amazon.com/jp/builders-flash/202204/way-to-draw-architecture/