株式会社SUPINF

アイコンシルバー
東京都

これで解決!AWSクラウドデザインパターン #3Web Storage パターン、Direct Hosting パターン

前回は【Scale Outパターン】ということで
EC2インスタンスを並列して処理を分散しましょう
自動でスケールアウト/スケールインして運用を楽になりますよ
という内容でした。

容量の大きい動画や、画像などをWebサーバーから配信する場合
ネットワークの負荷が気になりますよね。
1台のWebサーバーからだと処理が重くなってしまう…
複数台のWebサーバーを配置するにも、大容量のファイルを
複数サーバーに分散させるには高いスペックが必要となり、
コストがかかってしまう…

第3回はそんな問題を解決できるパターンの紹介です!

【Web Storageパターン】

クラウドには、インターネットストレージという
インターネット上にファイルをアップロードして共有するサービスがあります。
そこから直接ファイルを配信することでWebサーバーへの
ネットワーク負荷とディスク容量の問題が解決できます。

AWSにはS3というサービスがあり、簡単にデータの出し入れができます。
また容量が無制限で障害にも強い設計になっています。

実際にAWSで触ってみた

〈触ってみるサービス〉
・S3 →インターネットストレージ

1. S3に「バケット」を作成し、静的コンテンツをアップロードする。

・S3の[バケットを作成]→バケット名、リージョンの選択→[作成]
→作成されたバケットから[アップロード]
〈バケット名がそのままURLになるのでよく考えて名前をつけましょう!〉

2. アップロードしたコンテンツにアクセスできるよう設定する。

・アップロードしたファイルから[プロパティ]→[アクセス許可]の[さらにアクセス許可を追加する]
→「被付与者:全員」にし、「開く/ダウンロード」にチェックを入れる。→[保存]
〈これでコンテンツにURLが発行されます。このURLをユーザーに教えたり、Webページにリンクを貼るだけ!〉

AWSで重たいデータも安全に管理!

*S3使えばネットワークの負荷やデータ容量を気にする必要がない!

*3カ所以上のデータセンターでバックアップを行っているので耐久性も高い!

*ファイルをS3に置くだけでURLが発行されるので、ファイルの共有も簡単!

今回はS3を使ったCDPをもう一つご紹介します!

【Direct Hosting パターン】

画像や動画だけでなく、HTMLファイルなどをホスティングしてS3をWebサーバーとして利用する方法があります。
負荷対策を行う必要のないWebサーバーとして利用が可能です!

実際にAWSで触ってみた

1. バケットを作成し、ファイルをアップロードするところまでは【Web Storage パターン】とおなじです。

2. 静的ウェブサイトホスティングを有効にする
・作成したバケットから[プロパティ]→[静的ウェブサイトホスティング]の[ウェブサイトのホスティングを有効にする]→インデックスページとエラーページを設定する。
〈これでS3単体でWebサイトをホストできます!〉

3. バケットポリシーの設定
・作成したバケットから[プロパティ]→[アクセス許可]の[バケットポリシーの編集]にJSONを入力
〈ここで特定のIPアドレスからのみのアクセスを可能にしたり、
HTTPSのみのアクセスに限ったりすることができます。〉

今回は特定のIPアドレスからのみアクセスできるようにしました!

〈特定のIPアドレスのみからのアクセスを許可するJSON〉------------------
{
    "Version": "2012-10-17",
  "Statement": [
{
        "Sid": "PublicReadGetObject",
        "Effect": "Allow",
        "Principal": {
           "AWS": "*"
        },
        "Action": "s3:GetObject",
        "Resource": "arn:aws:s3:::バケット名/*",
        "Condition": {
           "IpAddress": {
             "aws:SourceIp": [
                 "特定のIPアドレス1",
                 "特定のIPアドレス2"
              ]
           }
        }
     }
  ]
}

----------------------------------------------------------------------

AWSでWebサイトを簡単にホスティング!

*インターネットストレージサービスであるS3を使って負荷対策不要なWebサーバーに!

*S3から静的コンテンツにアクセスするので、Webシステムの可用性と耐久性が高まる!

ただし、
S3上ではサーバーサイドのプログラムは動かせないので、
例えばログインユーザーごとに異なるページを出すことはできないので注意しましょう。

ちなみに、弊社のホームページもS3を使ってホスティングしています!
(動的な「お問合せフォーム」にはAWS CognitoとLambdaを使って対応しています。)

ご相談はこちらから

企画や要件が固まっていないご相談でも
お気軽にお問い合わせください。

  1. 01

    相談する

  2. 02

    要件ヒアリング

  3. 03

    専門企業のご紹介

  4. 04

    企業との
    ご面談&見積取得

  5. 05

    企業選定〜契約締結
    サポート

  6. 06

    専門企業と直接
    プロジェクト進行

※ステップ5以降はご希望に応じて
サポートいたします。

お急ぎの方はお電話で

03-6427-5422

サポートデスク直通(平日10:00〜18:00)

必須お名前
必須メールアドレス
必須電話番号
必須会社名
任意依頼内容・希望
利用規約及び、個人情報保護方針にご同意のうえ、送信ください。

申し込み完了後、サポートデスクから
お電話またはメールにてご連絡させていただきます。

本サイトは、reCAPTCHAとGoogleにより保護されています。(プライバシーポリシー利用規約)

EDITOR PROFILE

株式会社SUPINF

堀江 浩史

株式会社 SUPINF の広報部です!

AWS/コンテナ/AI/MSP/システム開発など、お気軽にご相談ください。



BTL アンバサダーとしても活動中です!

株式会社SUPINF

東京都
WEBサービス開発 インフラ構築 ソフトウェア・業務システム開発

株式会社SUPINFでできること

  • WEBサービス開発

  • インフラ構築

  • ソフトウェア・業務システム開発

会社選び・業者探しに迷った方はこちら
ご要望にあった会社を無料でご紹介いたします!
専門のサポートデスクがヒアリングを行い、
要件にあった最適な企業・業者をご紹介いたします。
ご要望にあった会社を無料でご紹介いたします