© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
アマゾン ウェブ サービス ジャパン株式会社
ソリューションアーキテクト
原田和則
2018.07.10
【
AWS Black Belt Online Seminar】
AWS入門者向け:
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS Black Belt Online Seminarとは
AWSJのTechメンバがAWSに関する様々な事を紹介するオンラインセミナーです
【火曜
12:00〜13:00
】
主に
AWSのソリューションや業界カットでの使いどころなどを紹介 (例:IoT、金融業界向け etc.)
【水曜
18:00〜19:00
】
主に
AWSサービスの紹介やアップデートの解説 (例:EC2、RDS、Lambda etc.)
※開催曜日と時間帯は変更となる場合がございます。最新の情報は下記をご確認下さい。
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
内容についての注意点
•
本資料では
2018年7月10日時点のサービス内容および価格についてご説明しています。最新の情報は
AWS公式ウェブサイト(http://aws.amazon.com)にてご確認ください。
•
資料作成には十分注意しておりますが、資料内の価格と
AWS公式ウェブサイト記載の価格に相違が
あった場合、
AWS公式ウェブサイトの価格を優先とさせていただきます。
•
価格は税抜表記となっています。日本居住者のお客様が東京リージョンを使用する場合、別途消費
税をご請求させていただきます。
•
AWS does not offer binding price quotes. AWS pricing is publicly available and is subject to change in
accordance with the AWS Customer Agreement available at http://aws.amazon.com/agreement/. Any
pricing information included in this document is provided only as an estimate of usage charges for AWS
services based on certain information that you have provided. Monthly charges will be based on your
actual use of AWS services, and may vary from the estimates provided.
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
自己紹介
❏ 名前
原田 和則 (はらだ かずのり)
❏ 所属
アマゾン ウェブ サービス ジャパン 株式会社
技術統括本部 テクニカルソリューション部
ソリューション アーキテクト
❏ 好きな
AWS サービス
❖
Region
❖
Availability Zone
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
本セミナーの
概要
❏ 本セミナーで学習できること
❖ ウェブサイトを構築する際の一般的な初期構成について学ぶことができます
❖ 規模に合わせてウェブサイトをスケールさせる際の
AWS サービスの使い所に
ついて学ぶことができます
❏ 対象者
❖
AWS 入門者の方
❖
AWSを勉強中もしくはこれから勉強されようとしている方
❖
AWS 上でウェブサイト構築を検討されている方
❖
AWS 上で既に構築や運用を行っているが、現状の構成や今後の規模拡張の方
法等に不安のある方
❖
特に、1~2台規模のEC2でサービス提供をおこなっているエンジニアの方
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Agenda
❏ ウェブサイトホスティングの基本
❏
AWS上でウェブサイトをホスティングするメリット
❏
AWS入門者の方によくある悩み
❏
Amazon EC2を作成して
みる
❏ よくある構成パターン
❏ まとめ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Agenda
❏ ウェブサイトホスティングの基本
❏
AWS上でウェブサイトをホスティングするメリット
❏
AWS入門者の方によくある悩み
❏
Amazon EC2を作成してみる
❏ よくある構成パターン
❏ まとめ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
はじめに
❏ 本セミナーでのウェブサイトホスティングとは、
LAMPで構成され
たウェブサイトを想定しています
❏
Linux、Apache、MySQL、PHP
❏ サーバレスアーキテクチャ等は取り上げておりません
❏ 実際にお客様からよくいただく質問とその回答を紹介しておりま
すが、全てのユースケースで当てはまるわけではありません
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
ウェブサイトとは
❏ 企業ホームページ
❏ ニュースサイト
❏ 情報サイト
❏
SNS
❏ ブログ
❏
ECサイト
❏ オークションサイト
など複数のウェブページの集まり
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS クラウド活用資料集もウェブサイトの1つ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
ウェブサイトホスティングの主なインフラ要素
❏
ウェブ
/アプリケーションサーバ
❏
主に
Webブラウザ経由でユーザから受け取ったリクエストをもとに、
ユーザに結果を返す
❏
Apache + PHP, Apache + Tomcat + Java, Nginx + Ruby on Railsなど
❏
データベース
❏
リレーショナルデータベース
❏
MySQL, SQL Server, Oracle, PostgreSQLなど
❏
ロードバランサー
❏
ウェブ
/アプリケーションサーバへのアクセスを分散してくれる装置(負荷分散装置)
❏
ウェブ
/アプリケーションサーバの冗長化にはほぼ必須
❏ その他
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
ウェブサイト運営者からよく聞くトラブルや悩み
❏ メディアで紹介され、アクセスが急増した結果、サーバが
負荷に耐えきれず、エラーが発生・処理が遅延する
❏ サーバの冗長構成がとれておらず、単一のサーバ障害でも
サイトが停止してしまう
❏ 見込みユーザを失うことになり、機会損失が発生
❏ アクセスのピークに合わせてインフラを設計しているため、
インフラコストが増加
❏ サイトの収益悪化につながる
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Agenda
❏ ウェブサイトホスティングの基本
❏
AWS上でウェブサイトをホスティングするメリット
❏
AWS入門者の方によくある悩み
❏
Amazon EC2を作成してみる
❏ よくある構成パターン
❏ まとめ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
クラウドコンピューティングの特徴
初期投資が
不要
実際の使用分
のみ支払い
セルフサービスな
インフラ
スケールアップダウ
ンが容易
市場投入と
俊敏性の改善
低額な
変動費
Deploy
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
1つのアカウントで世界中のリージョンが利用可能
18のリージョン+1ローカルリージョン
1.
米国東部 (バージニア北部)
2.
米国西部 (北カリフォルニア)
3.
米国西部 (オレゴン)
4.
欧州 (アイルランド)
5.
アジアパシフィック(東京)
6.
南米 (サンパウロ)
7.
アジアパシフィック (シンガポール)
8.
アジアパシフィック (シドニー)
9.
米国GovCloud *1
10.
中国 (北京)*2
11.
欧州 (フランクフルト)
12.
アジアパシフィック (ソウル)
13.
アジアパシフィック(ムンバイ)
14.
米国東部(オハイオ)
15.
カナダ(中部)
16.
欧州(ロンドン)
17.
中国(寧夏) *2
18.
欧州(パリ)
19.
アジアパシフィック(大阪ローカル)*3
*1 GovCloudは米国政府関係企業用です
*2 中国のリージョンは他AWSのアカウントとは別のアカウント作成が必要です
*3 大阪ローカルリージョンの利用には、事前の申込と審査が必要です
今後、ストックホルム、香港、GovCloud(US-EAST)、中東(バーレーン)
でのリージョンオープンを計画
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
リージョンは複数のアベイラビリティゾーン(
AZ)で構成されています
全世界で合計
55のAZ
AZは、複数のデータセンターによって構成され、高い耐障害性を提供で
きる設計になっています
リージョンとアベイラビリティゾーン(
AZ)
AZ
AZ
AZ
AZ
AZ
Transit Transithttps://aws.amazon.com/jp/about-aws/global-infrastructure/
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
ネットワーク
アナリティクス
コンピュート
ストレージ & 配信
開発ツール
管理ツール
セキュリティ
アプリケーションサービス
モバイルサービス
データベース
エンタープライズアプリ
S3 CloudFront EFS Glacier GatewayStorage GatewayAPI AppStream CloudSearch TranscoderElastic SES SQS SWF
Device
Farm AnalyticsMobile
Cognito SNS RDS DynamoDB ElastiCache RedShift WorkSpaces WorkDocs WorkMail LambdaElastic Container Service BeanstalkElastic
EC2 Elastic Load Balancing VPC ConnectDirect Route 53 EMR PipelineData Kinesis LearningMachine QuickSightElasticsearchService
CodeCommit CodeDeploy CodePipeline CloudWatch FormationCloud CloudTrail Config OpsWorks CatalogService Identity & Access Management
Directory
Service Trusted Advisor Cloud HSM
Key Management Service Web App Firewall Snowball Simple DB Database Migration Service
IoT
IoTHubs
Mobile Hub100を越えるAWSサービス群
CodeBuild Athena機械学習
Lex LearningMachine Polly Rekognition
GameLift
ゲーム
Pinpoint
Step Functions
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
よくいただく質問 「サービスについて」
❏
AWSには多くのサービスがあることは分かったけど、
LAMP構成のウェブサイトホスティングだと、
具体的にどのサービスを使ったらいいか分からない
既存の技術知識で使えるサービス
をまず使いましょう
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
ウェブサイトホスティングで主なインフラ要素
❏ ウェブ
/アプリケーションサーバ
❏
Amazon EC2 、Amazon Lightsail
❏
Amazon EBS
❏ データベース
❏
Amazon RDS
❏ ロードバランサー
❏
ELB
❏ バックアップ
❏
Amazon S3、Amazon EBS スナップショット
*AWSサービスのユースケースの1つとして紹介しています
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
特徴
(https://amazonlightsail.com/)
•
秒単位でデプロイできる
VPS
•
多くの
OS、アプリケーション、開発環境イメージを提供
•
可用性とパフォーマンスを備えた
SSDストレージ
•
便利なネットワーク管理機能で
IPアドレス、DNS、
ファイアウォールなどをセキュアに管理
•
直感的な
Lightsailコンソール、シンプルで柔軟なAPI
•
AWSの他サービスと連携して拡張も可能
価格体系
(https://amazonlightsail.com/pricing/)
•
必要なスペック(メモリ、
CPU、ストレージ容量、データ
転送量)に応じて
5つのプランから選択
•
プラン価格は上限額であり、実際の課金は時間単位で計算
例
: $5プランは$0.0067/hの課金
•
スナップショット、
300万件を超えるDNSクエリ、プランご
との上限を超えるデータ転送量、アタッチされていない
Static IPなどがある場合はそれぞれ少額課金
Amazon Lightsail
いますぐ使える月額・低額でシンプルなVPS
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon EC2
(Elastic Compute Cloud)
数分で起動、
1秒ごとの従量課金
で利用可能な仮想サーバ
(*1)
多数の
OSをサポート、ライセンス費用込みで従量課金
自由にソフトウェアのインストールが可能
スケールアップ
/ダウン、アウト/インが容易に可能
電源、ラック等
ハイパーバイザー
利用したい
ミドルウェア
お客様独自の
アプリケーション
OS (Windows,Linux)
ネットワーク
ボタンを押して数分で、ここまで
準備される
アプリ、ミドルウェア、
監視ツール等を自由に導入
(*1) 時間単位の料金が発生するMicrosoft
WindowsまたはLinuxディストリビュー
ションを実行するインスタンスには
1秒
単位の請求は適用されません
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon EBS
(Elastic Block Store)
EC2にマウント可能なブロックストレージ
1つのEBSは最大16TB, 最大32,000IOPSまで性能を確保可能
内部的に冗長化されているため、
RAID1での冗長化は不要
サイズ変更可能
スナップショット機能で
S3に差分バックアップ
EBS
/dev/xvdf
/dev/xvda
EC2
EBS
EBS
S3
2日前 3日前 4日前
S3
2日前 3日前 4日前
スナップショット
スナップショット
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
自動
バックアップ
スナップ
ショット
パッチ更新
AZ-a
AZ-b
フルマネージドの
RDBMSサービス
MySQL、Oracle、SQLServer、PostgreSQL、MariaDB、Aurora から選択可能
バックアップやフェイルオーバーに対応した
DBを数クリックで利用可能
メンテナンスコストを大幅に削減(パッチ当てやバックアップの自動化)
Amazon RDS
(Relational Database Service)
別AZにデータを同期
自動的にフェイルオーバー
負荷分散のための「読み取
り用レプリカ」を作成可能
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
ELB
(Elastic Load Balancing)
AWSクラウド上のロードバランシングサービス
ELBで実現できるシステム
スケーラブル
/高い可用性
:
複数の
EC2インスタンス/ECSサービス等 に負荷分散
複数のアベイラビリティゾーンにある複数のターゲットの中
から正常なターゲットにのみ振り分け
ELB自体の特徴
スケーラブル
:
ELB自体も負荷に応じてキャパシティを自動増減
安価な従量課金
:
従量課金で利用可能
運用管理が楽
:
マネージドサービスなので管理が不要
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
1
S3
S3
S3
データを
隔地保管
データ保存・バックアップ用途に向くオブジェクトストレージ
自動的に三箇所以上の
DCに隔地保管
設計上のデータ耐久性は、
99.999999999%
容量無制限、サイジング不要
従量課金
1GByteあたり月間 $0.0152~
WEBの静的コンテンツ配信機能
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Agenda
❏ ウェブサイトホスティングの基本
❏
AWS上でウェブサイトをホスティングするメリット
❏
AWS入門者の方によくある悩み
❏
Amazon EC2を作成してみる
❏ よくある構成パターン
❏ まとめ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS入門者の方によくある悩み
❏ なにから始めていいかよく分からない
❏ ハンズオンを終わらせたが、手順を追っただけで、
何が起きているのかよく分からず、応用できない
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
「公式ウェブハンズオン」のススメ
https://aws.amazon.com/jp/getting-started/projects/scalable-wordpress-website/
❏ スケーラブルなウェブサイトの構築方法
WordPressを具体例に、EC2 1台でのホスティング構成から、
ELBやRDSを利用したサイトの冗長構成を構築可能
*Web公開ハンズオンのため、好きな時間・タイミングで開始可能
*ただ、内容が濃いため、複数回繰り返すことを推奨
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Agenda
❏ ウェブサイトホスティングの基本
❏
AWS上でウェブサイトをホスティングするメリット
❏
AWS入門者の方によくある悩み
❏
Amazon EC2を作成してみる
❏ よくある構成パターン
❏ まとめ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
EC2の作成ステップ
ステップ1: Amazonマシン
イメージ(AMI)選択
任意のOSテンプレートを選択
ステップ2:インスタンスタイプの
選択
仮想サーバーのスペックセットを選択
ステップ4: ストレージの追加
仮想ディスクの設定
ステップ5: インスタンスの
タグ付け
管理用の名前や情報を追加
ステップ6: セキュリティグループ
の設定
セキュリティグループを指定または作成
作成!
ステップ7:
確認
ステップ3: インスタンスの設定
インスタンス台数やネットワーク、運用関連
の設定や起動スクリプトを設定
数分後には利用可能
です!
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
ステップ1: Amazonマシン
イメージ(AMI)選択
任意のOSテンプレートを選択
ステップ2:インスタンスタイプの
選択
仮想サーバーのスペックセットを選択
ステップ4: ストレージの追加
仮想ディスクの設定
ステップ5: インスタンスの
タグ付け
管理用の名前や情報を追加
ステップ6: セキュリティグループ
の設定
セキュリティグループを指定または作成
作成!
ステップ7:
確認
ステップ3: インスタンスの設定
インスタンス台数やネットワーク、運用関連
の設定や起動スクリプトを設定
AWS入門者の方がつまづくポイント
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
EC2インスタンスを起動する際に指定するベースイメージ
EBSのスナップショットから独自のカスタマイズAMIを保存可能
AMIを利用することでセットアップ済みのサーバを容易に準備可能
AMI (Amazon Machine Image)
検証
エンジニアA
教育
部門の新人
ユーザテスト
業務担当者
EC2
AMI
AMI化
テンプレート(AMI)から
一時環境をすぐに構築可能
パッチ適用
カーネル変更
チューニング
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
ネットワークの設定
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon VPC
(
Virtual Private Cloud
)
AWS上にプライベートネットワーク空間を構築
任意の
IPアドレスレンジが利用可能
論理的なネットワーク分離が可能
必要に応じてネットワーク同士を接続することも可能
ネットワーク環境のコントロールが可能
ルートテーブルや各種ゲートウェイ、各種コンポーネント
複数のコネクティビティオプションが選択可能
インターネット経由
VPN/専用線(Direct Connect)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
参考:
VPCウィザードで数画面でVPCを作成可能
➀VPCウィザー
ドの開始をク
リック
②希望のパ
ターンを選択
③選択を
クリック
④VPCの作成を
クリック
36
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
VPCとサブネットの設計例 1/2
Availability Zone-1c
Availability Zone-1d
Availability Zone-1a
プライベート
サブネット
プライベート
サブネット
プライベート
サブネット
パブリック
サブネット
パブリックサブネット
パブリックIPを利用して
インターネットと通信する
ためのリソースが動作する
サブネット
(Elastic IPにより、
パブリックIPは固定化可能)
プライベートサブネット
プライベートIPのまま
通信をするための
リソースが動作する
サブネット
Internet
gateway
VPC : 10.0.0.0 /16 (例)
10.0.1.0 /24
10.0.2.0 /24
10.0.4.0 /24
10.0.5.0 /24
10.0.6.0 /24
パブリック
サブネット
10.0.3.0 /24
パブリック
サブネット
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
VPCとサブネットの設計例 2/2
Availability Zone-1c
Availability Zone-1d
Availability Zone-1a
プライベート
サブネット
プライベート
サブネット
プライベート
サブネット
パブリック
サブネット
Internet
gateway
VPC : 10.0.0.0 /16
10.0.1.0 /24
10.0.2.0 /24
10.0.4.0 /24
10.0.5.0 /24
10.0.6.0 /24
10.0.3.0 /24
EC2
EC2
プライベート
IP:
10.0.3.100
パブリック
IP:
52.193.241.xxx
プライベート
IP:
10.0.6.10
EC2 がパブリックIPを持っているため、
インターネットからの
(への)アクセスが可能
パブリック
サブネット
EC2同士は
プライベート
IPで相互通信
EC2はプライベートIPしか持たないため、
インターネットからアクセス不可
アクセス不可
パブリック
サブネット
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
セキュリティグループの考え方・設計例 1/2
SSH用EC2(踏み台用EC2)
オフィスの固定
IPからSSHのみ許可
Web用EC2(2台)
インターネットから
HTTPSのみ許可
SSH用EC2からSSHのみを許可
DB用EC2(MySQL)
SSH用EC2からSSH/MySQLのみ許可
Web用EC2からMySQLのみ許可
* いずれもOutboundは制限しない
c
通信要件例
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
セキュリティグループの考え方・設計例
2/2
固定IP
SSH用EC2(踏み台用EC2)
オフィスの固定IPからSSHのみ許可
Web用EC2
インターネットから
HTTPSのみ許可
SSH用EC2からのみSSHを許可
DB用EC2(MySQL)
SSH用EC2からSSH/MySQLのみ許可
Web用EC2からMySQLのみ許可
(ssh-ec2-sg)
(web-ec2-sg)
(db-ec2-sg)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Agenda
❏ ウェブサイトホスティングの基本
❏
AWS上でウェブサイトをホスティングするメリット
❏
AWS入門者の方によくある悩み
❏
Amazon EC2を作成してみる
❏ よくある構成パターン
❏ まとめ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
よくある構成パターン
構成パターン
1. CloudFront+S3を利用
2. 仮想サーバ 1台に全部のせる
3. WebとDBを分ける
4. ELBを使いWebを冗長化する
5. セキュリティ向上
6. スケーラビリティ向上
7. アプリケーションの自動デプロイ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
よくある構成パターン
構成パターン
1. CloudFront+S3を利用
静的ウェブサイトを仮想サーバを使用せず構築
2. 仮想サーバ 1台に全部のせる
3. WebとDBを分ける
4. ELBを使いWebを冗長化する
5. セキュリティ向上
6. スケーラビリティ向上
7. アプリケーションの自動デプロイ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon CloudFront
特徴
(http://aws.amazon.com/jp/cloudfront/)
• 簡単にサイトの高速化が実現できると共に、
サーバの負荷も軽減
• 様々な規模のアクセスを処理することが可能
• 世界
100箇所以上にエッジロケーション
価格体系
(http://aws.amazon.com/jp/cloudfront/pricing/)
• データ転送量
(OUT)
•
HTTP/HTTPSリクエスト数
•
(利用する場合)SSL独自証明書 など
マネージドCDN(Contents Delivery Network)サービス
クライアント
レスポンス向上
負荷軽減
Amazon
CloudFront
キャッシュ配信
オフロード
Webサーバ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS Certificate Manager (ACM)
特徴
(https://aws.amazon.com/jp/certificate-manager/)
• ドメイン認証(
DV)タイプの証明書を無料で
提供
•
CloudFront, ELB, API Gatewayで利用可
• 秘密鍵は
AWSサービス内で安全に管理される
• 更新も自動的に行われる
価格体系
(https://aws.amazon.com/jp/certificate-manager/pricing/)
• 無料
簡単にSSL/TLS証明書を作成・管理・配置
HTTPS
証明書指定
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
構成パターン1: CloudFront + S3を利用
静的ウェブサイトを仮想サーバを使用せず構築
静的ファイル
・HTML ・JavaScript ・css ・画像/動画 などキャッシュ
S3
CloudFront
(アクセス例)
・
https://www.example.com/index.html
・
CloudFrontはindex.htmlをS3から取得し、クライアントへ返す
・
2回目以降のアクセスは、CloudFrontがキャッシュから返す
ACM
証明書
の発行
証明書
のインポート
ファイル取得
S3の静的コンテンツ配信機能を利用し、
CloudFrontより配信
ウェブサイトが
静的コンテンツのみ
配信し
ている場合に有効な構成
フルマネージドサービスを利用しており、
低コストかつ
サーバ管理は不要
ACMを利用することで独自ドメインを簡単
に
HTTPS化可能
要件上、
PHPなどのアプリケーションコー
ドが必要な場合
(動的コンテンツ)は、仮想
サーバが必要となる
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
よくある構成パターン
構成パターン
1. CloudFront+S3を利用
2. 仮想サーバ 1台に全部のせる
Amazon Lightsailを仮想サーバ(VPS)として利用
Amazon EC2を仮想サーバとして利用
3. WebとDBを分ける
4. ELBを使いWebを冗長化する
5. セキュリティ向上
6. スケーラビリティ向上
7. アプリケーションの自動デプロイ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
構成パターン2-1: Lightsail 1台に全部のせる
AZ 1
Lightsail
インスタンス
Web
App
DB
Web/App/DBをLightsail VPS 1台にインストール
専用コンソールから直感的にインスタンスを作成
し、すぐに利用可能
専用コンソールから
IPアドレス、DNS、
ファイアウォールなどを管理可能
テスト・開発環境・プロトタイピングなど要件上、
VPS 1台で問題ない場合など
(専用コンソール 例)© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
構成パターン2-2: EC2 1台に全部のせる
AZ 1
パブリックサブネット
EC2
Web
App
DB
Web/App/DBをEC2 1台にインストール
背景例
・検証で作った
EC2でそのままサービスインしてしまった
場合にありうる構成
冗長構成が取れていないため、インスタンス障害時は
サービス停止が発生
負荷対策はスケールアップのみの対応となる
DBの負荷がWeb/Appに影響を与える(逆も然り)
次のステップ:
スケーラブルな構成の第一歩として
Web(App)とDBを分ける
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Lightsailの使い所、EC2との使い分け
シンプルな
Webサイトやアプリケー
ション
テスト・開発環境
社内ツール
小規模なビジネスソフトウェア
スモールスタートやプロトタイピング
複数台/複数レイヤ構成のアプリケー
ション
ビッグデータ分析、HPC、画像変換、
ストリーミング配信、…etc
柔軟・詳細なアクセス制御や
ネットワーク設定
厳密な運用監視、アラート設定
Auto Scalingや複数AZで高可用性
豊富なOS、AMIの選択肢
Amazon
EC2
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
よくある構成パターン
構成パターン
1. CloudFront+S3を利用
2. 仮想サーバ 1台に全部のせる
3. WebとDBを分ける
4. ELBを使いWebを冗長化する
5. セキュリティ向上
6. スケーラビリティ向上
7. アプリケーションの自動デプロイ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
構成パターン
3-1:Web/AppとDBを分ける(on EC2)
AZ 1
EC2
Web
App
プライベートサブネット
EC2
DB
EC2を2台作成し、Web/App用とDB用で用途を分ける
パブリック サブネット
背景例
RDSの検証を始めようと思いつつも、気づけばサービス
インしてしまった場合にありうる構成
Web/AppとDBを分けており、互いに影響を与えない構
成にはなっているが、どちらも冗長構成となっていない
DBの運用管理タスクは自分で行う必要あり
次のステップ:
「
DB on EC2」を「RDS」へ置き換える
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
構成パターン
3-2:Web/AppとDBを分ける(RDS利用)
AZ 1
パブリック サブネット
EC2
Web
App
プライベートサブネット
DB
(RDS)
Web/App用のEC2とDBにRDSを利用(Single AZ)
DBをマネージドサービスであるRDSに置き換えたが、
Multi-AZ構成にしていない。意図的な場合もあるが、
設定漏れの場合があり、障害などでサービス影響が
発生して初めて判明することがある
(既に
RDSをご利用中の方は念の為確認を!)
DBをRDSに置き換えたため、DBのバックアップなど
の運用管理タスクは不要
EC2(Web/App)は冗長化されていない
次のステップ:
「
RDS」を「Multi-AZ化」
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
構成パターン
3-3:Web/AppとDBを分ける(RDS利用)
AZ 1
パブリック
サブネット
EC2
Web
App
プライベート
サブネット
Web/App用のEC2とDBにRDSを利用(Multi AZ)
AZ 2
プライベート
サブネット
RDS
(Slave)
RDS
(Master)
バックアップの自動取得、障害発生時などの自
動切り替わりなどマネージドサービス
RDSの機能
を最大限活用できている
EC2(Web/App)が冗長化されていない
HTTPSの場合は、証明書をEC2にインポートする
必要がある
次のステップ:
ELBを利用して、Web/Appの冗長化
HTTPSのオフロード
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
よくある構成パターン
構成パターン
1. CloudFront+S3を利用
2. 仮想サーバ 1台に全部のせる
3. WebとDBを分ける
4. ELBを使いWebを冗長化する
1. ELB配下にEC2を2台配置した冗長構成
2. サイトの成長に応じてEC2をスケールアウトさせる構成
5. セキュリティ向上
6. スケーラビリティ向上
7. アプリケーションの自動デプロイ
現在の構成
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
構成パターン
4-1:ELBを使いWebを冗長化する
AZ 1
パブリック サブネット
EC2
Web
App
プライベートサブネット
DB
(RDS)
Web/App用EC2をもう1台作成し、2台ともELB配下に置く
AZ 2
DB
(RDS)
プライベートサブネット
EC2
Web
App
ELB
(ロードバランサー)
EC2の冗長化ができている
ELBのSSLオフロード機能を利用することで、
HTTPSをELBで受けて、ELBがEC2へ流すトラ
フィックを
HTTPへ変更可能
EC2 1台構成時に、HTTPのみだった場合も、
EC2側には大きな変更が必要なくサイトのHTTPS
化が可能
HTTPS
HTTP
次のステップ:
サイトの成長に応じて
EC2をスケールアウト
させる
• 証明書はACMにより無料で発行、ELBへインポート可能
• ACMで発行した証明書はEC2へインポートはできない
パブリックサブネット
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
構成パターン
4-2:Web/Appの冗長化
AZ 1
パブリック
サブネット
EC2
プライベートサブネット
DB
(RDS)
AZ 2
DB
(RDS)
パブリックサブネット
プライベートサブネット
EC2
Web
App
ELB
EC2
EC2
EC2
Web
App
EC2
EC2をスケールアウトさせて、アクセス数の増加に対応
EC2の数を増やすことでアクセス数の増加に対応
アプリ更新時は、更新対象となるインスタンス数
も増えるため、手動による運用だと運用管理コス
トが増加する可能性もあり
手動管理のインスタンス数が増えすぎる前に、
Auto Scalingなどの自動化の仕組みが必要となっ
てくる
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
よくある構成パターン
構成パターン
1. CloudFront+S3を利用
2. 仮想サーバ 1台に全部のせる
3. WebとDBを分ける
4. ELBを使いWebを冗長化する
5. セキュリティ向上
1. 踏み台サーバの作成、EC2をプライベートサブネットへ設置
2. セキュリティグループの厳密化
6. スケーラビリティ向上
7. アプリケーションの自動デプロイ
現在の構成
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
構成パターン
5-1:セキュリティ向上構成 1/2
・踏み台サーバ設置による、管理用アクセスの統一
・
Web/App用EC2をプライベートサブネットに配置
ユーザトラフィックはすべて
ELBで受けており、
EC2自身を外部公開する必要がない場合は、ELB配
下の
EC2をプライベートサブネット内に置く
(既存EC2のサブネット変更はできないため、
AMIよりEC2を再作成する必要あり)
プライベートサブネット内の
EC2が外部サービスと
連携する場合は、
NAT Gatewayの設置を検討する
外部からの管理アクセスの入口を統一化するため、
パブリックサブネットに踏み台サーバを構築
AZ 1
パブリック
サブネット
EC2
Web
App
プライベートサブネット
DB
(RDS)
AZ 2
DB
(RDS)
プライベートサブネット
EC2
Web
App
ELB
EC2
SSH
踏み台
サーバ
パブリックサブネット
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
構成パターン
5-2:セキュリティ向上構成 2/2
AZ 1
パブリックサブネット
EC2
Web
App
プライベートサブネット
DB
(RDS)
厳密なセキュリティグループを設定し、必要な通信のみ制御する
AZ 2
DB
(RDS)
プライベートサブネット
EC2
Web
App
ELB
EC2
SSH
HTTPS
HTTP
SSH
MySQL
MySQL
外部とのネットワーク境界を防御する
(例)
・踏み台サーバへのアクセスは、
IP制限/ポート制限を実施
・
ELBへのアクセスは、ポート制限を実施(TCP:443のみ)
VPC内のリソース間でもセキュリティグループ
により厳密なアクセス制限する
踏み台
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
よくある構成パターン
構成パターン
1. CloudFront+S3を利用
2. 仮想サーバ 1台に全部のせる
3. WebとDBを分ける
4. ELBを使いWebを冗長化する
5. セキュリティ向上
6. スケーラビリティ向上
Auto Scalingの導入
7. アプリケーションの自動デプロイ
現在の構成
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
構成パターン
6:Auto Scalingの導入
AZ 1
パブリック
サブネット
EC2
プライベートサブネット
DB
(RDS)
AZ 2
DB
(RDS)
プライベートサブネット
ELB
パブリック
サブネット
EC2
https://www.slideshare.net/AmazonWebServicesJapan/aws-black-belt-online-seminar-2017-auto-scaling
Auto Scalingにより高い可用性、拡張性、コスト最適化を実現
本番用
AMI
Auto
Scaling
Group
需要に応じて自動的にサーバが増減しコストカット
•
スケーリングのポリシーやインスタンスは柔軟に設定可能
•
異常なインスタンスや
AZを自動で切り離し高可用性を実現
設定例
•
「本番用
AMI」からEC2を作成
•
作成された
EC2はELBに自動登録
•
「
m4.large」を最小2台:最大6台
•
「
EC2の平均CPU使用率」が「60%」
を維持するようにスケーリング
自動登録
* アプリ更新時のデプロイ方法は下記参考資料を参照
EC2
自動作成
EC2
自動削除
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
よくある構成パターン
構成パターン
1. CloudFront+S3を利用
2. 仮想サーバ 1台に全部のせる
3. WebとDBを分ける
4. ELBを使いWebを冗長化する
5. セキュリティ向上
6. スケーラビリティ向上
7. アプリケーションの自動デプロイ
Elastic Beanstalkを使用したインフラとアプリ管理の自動化
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS Elastic Beanstalk
✤
速く簡単にアプリケーションをデプロイ可能
✤
インフラストラクチャの準備&運営からアプ
リケーションスタックの管理まで自動化
✤
Auto Scalingによりコストを抑えながらスケー
ラビリティを確保
✤
Java, PHP, Ruby, Python, Node.js, .NET, Docker,
Go, カスタムプラットフォームに対応
66
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
構成パターン
7:アプリケーションの自動デプロイ 1/2
AZ 1
パブリック
サブネット
EC2
プライベートサブネット
DB
(RDS)
AZ 2
DB
(RDS)
プライベートサブネット
ELB
EC2
Elastic Beanstalkを使用したインフラとアプリ管理の自動化
Auto
Scaling
Group
インフラの自動化
ELB, EC2, Auto Scaling, セキュリティグループなど
個別に作成・設定していたインフラ要素を
Elastic
Beanstalkから作成・管理
アプリケーション管理の自動化
Elastic Beanstalkへソースコードをアップロードす
ることで、自動で
EC2へアプリケーションが
デプロイされる
(最初から
Elastic Beanstalkを使って構築を行うという考え方もあり)
インフラの管理の自動化
アプリの自動デプロイ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
構成パターン
7:アプリケーションの自動デプロイ 2/2
https://www.slideshare.net/AmazonWebServicesJapan/aws-black-belt-online-seminar-2017-aws-elastic-beanstalk
AZ 1ELB
EC2
EC2
ELB
EC2
EC2
ELB
EC2
EC2
AZ 2 AZ 1 AZ 2 AZ 1 AZ 2管理者
環境の作成
アプリケーションのデプロイ
ver A
アプリケーションのデプロイ
ver B
管理者
管理者
環境作成
(例)
・
php7.1
・
ELB使用
・
m4.large
・
Auto Scaling(2-6台)
など
マネジメントコンソール
/CLIで
ソースコードをアップロード
ソースコード
(ver A)
をアップロード
ソースコード
(ver B)
をアップロード
アプリ
デプロイ
アプリ
デプロイ
Elastic Beanstalkを使用したインフラとアプリ管理の自動化 例
* Elastic Beanstalkの詳細については下記参考資料を参照
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Agenda
❏ ウェブサイトホスティングの基本
❏
AWS上でウェブサイトをホスティングするメリット
❏
AWS入門者の方によくある悩み
❏
Amazon EC2を作成してみる
❏ よくある構成パターン
❏ まとめ
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
まとめ
LAMP構成でのウェブサイトホスティングを例に、AWS入門者の方に
よくあるつまずきポイントや今後の規模拡張を見越した構成をご紹
介しました
AWSのサービスを積極的に活用することで、お客様は本来やるべき
ビジネスに集中できます
本セミナーで紹介した
AWSサービスや構成例はごく一部ですが、
もっと
AWSについて知りたい方は….
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
オンラインセミナー資料の配置場所
AWS クラウドサービス活用資料集
•
https://aws.amazon.com/jp/aws-jp-introduction/
Amazon Web Services ブログ
• 最新の情報、セミナー中の
Q&A等が掲載されています。
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWSの導入、お問い合わせのご相談
AWSクラウド導入に関するご質問、お見積、資料請求をご希望のお客様は以下
のリンクよりお気軽にご相談下さい。
https://aws.amazon.com/jp/contact-us/aws-sales/
※「AWS 問い合わせ」で検索して下さい。
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS Well Architected 個別技術相談会お知らせ
•
Well Architectedフレームワークに基づく数十個の質問項目を元に、お客様が
AWS上で構築するシステムに潜むリスクやその回避方法をお伝えする個別相
談会です。
https://pages.awscloud.com/well-architected-consulting-jp.html
•
参加無料
•
毎週火曜・木曜開催
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.