Submit Search
Aws auto scalingによるwebapサーバbatchサーバの構成例
4 likes
3,658 views
Takeshi Mikami
本資料では、AWS AutoScalingによるWebAPサーバとBatchサーバの構成例と、 その構成を考えるにあたって必要となる周辺知識について説明する。
Technology
Read more
1 of 22
Download now
Download to read offline
1
2
3
4
5
6
Most read
7
Most read
8
Most read
9
10
11
12
13
14
15
16
17
18
19
20
21
22
More Related Content
PDF
AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
都元ダイスケ Miyamoto
PDF
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Toru Makabe
PDF
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
Amazon Web Services Japan
PDF
20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipeline
Amazon Web Services Japan
PDF
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
Amazon Web Services Japan
PDF
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
NTT DATA Technology & Innovation
PDF
AWS Black Belt Techシリーズ Amazon CloudSearch
Amazon Web Services Japan
PDF
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
Recruit Lifestyle Co., Ltd.
AWSにおけるバッチ処理の ベストプラクティス - Developers.IO Meetup 05
都元ダイスケ Miyamoto
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Toru Makabe
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
Amazon Web Services Japan
20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipeline
Amazon Web Services Japan
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
Amazon Web Services Japan
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
NTT DATA Technology & Innovation
AWS Black Belt Techシリーズ Amazon CloudSearch
Amazon Web Services Japan
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
Recruit Lifestyle Co., Ltd.
What's hot
(20)
PPTX
事例で学ぶApache Cassandra
Yuki Morishita
PDF
20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL
Amazon Web Services Japan
PPTX
MongoDBの監視
Tetsutaro Watanabe
PDF
20200630 AWS Black Belt Online Seminar Amazon Cognito
Amazon Web Services Japan
PDF
20190806 AWS Black Belt Online Seminar AWS Glue
Amazon Web Services Japan
PDF
なぜ「マイクロサービス“化”」が必要なのか
Yusuke Suzuki
PDF
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
Amazon Web Services Japan
PPT
Cassandraのしくみ データの読み書き編
Yuki Morishita
PDF
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
NTT DATA Technology & Innovation
PDF
AWS Black Belt Tech シリーズ 2015 - AWS Data Pipeline
Amazon Web Services Japan
PDF
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
Yahoo!デベロッパーネットワーク
PDF
YugabyteDBを使ってみよう - part2 -(NewSQL/分散SQLデータベースよろず勉強会 #2 発表資料)
NTT DATA Technology & Innovation
PDF
AWSのログ管理ベストプラクティス
Akihiro Kuwano
PPTX
20220409 AWS BLEA 開発にあたって検討したこと
Amazon Web Services Japan
PDF
20190522 AWS Black Belt Online Seminar AWS Step Functions
Amazon Web Services Japan
PDF
マイクロにしすぎた結果がこれだよ!
mosa siru
PDF
アーキテクチャから理解するPostgreSQLのレプリケーション
Masahiko Sawada
PPTX
Kinesis Firehoseを使ってみた
dcubeio
PDF
MHA for MySQLとDeNAのオープンソースの話
Yoshinori Matsunobu
PDF
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
Hironobu Suzuki
事例で学ぶApache Cassandra
Yuki Morishita
20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL
Amazon Web Services Japan
MongoDBの監視
Tetsutaro Watanabe
20200630 AWS Black Belt Online Seminar Amazon Cognito
Amazon Web Services Japan
20190806 AWS Black Belt Online Seminar AWS Glue
Amazon Web Services Japan
なぜ「マイクロサービス“化”」が必要なのか
Yusuke Suzuki
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
Amazon Web Services Japan
Cassandraのしくみ データの読み書き編
Yuki Morishita
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
NTT DATA Technology & Innovation
AWS Black Belt Tech シリーズ 2015 - AWS Data Pipeline
Amazon Web Services Japan
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
Yahoo!デベロッパーネットワーク
YugabyteDBを使ってみよう - part2 -(NewSQL/分散SQLデータベースよろず勉強会 #2 発表資料)
NTT DATA Technology & Innovation
AWSのログ管理ベストプラクティス
Akihiro Kuwano
20220409 AWS BLEA 開発にあたって検討したこと
Amazon Web Services Japan
20190522 AWS Black Belt Online Seminar AWS Step Functions
Amazon Web Services Japan
マイクロにしすぎた結果がこれだよ!
mosa siru
アーキテクチャから理解するPostgreSQLのレプリケーション
Masahiko Sawada
Kinesis Firehoseを使ってみた
dcubeio
MHA for MySQLとDeNAのオープンソースの話
Yoshinori Matsunobu
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
Hironobu Suzuki
Ad
Similar to Aws auto scalingによるwebapサーバbatchサーバの構成例
(20)
PDF
JAWS DAYS 2015
陽平 山口
PDF
AWS初心者向けWebinar RDBのAWSへの移行方法(Oracleを例に)
Amazon Web Services Japan
PDF
クラウドデザインパターンから始めるクラウドの利点と弱点の理解~提案から設計・開発・保守に活かす!~
貴志 上坂
PDF
Scalrご紹介資料 20130404 01
Haruhiko KAJIKAWA
PPTX
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!
Yoichi Kawasaki
PPTX
2011/12/3 わんくま同盟
貴仁 大和屋
PDF
AWS初心者向けWebinar AWSでのNoSQLの活用
Amazon Web Services Japan
PDF
20150129 cross2015 cloudsearch
Yoshinori Fujiwara
PDF
AWS Black Belt Techシリーズ Amazon CloudWatch & Auto Scaling
Amazon Web Services Japan
PPTX
2011/11/26 Dot netlab
貴仁 大和屋
PDF
Amazon EC2を使った実践SaaS運用事例
Yuuki Namikawa
PDF
AWSのデータベースサービス全体像
Amazon Web Services Japan
PDF
Classmethod awsstudy ec2rds20160114
Satoru Ishikawa
KEY
Rdbms起点で考えると見えない世界 okuyama勉強会
Masakazu Muraoka
PPTX
AWS Elastic BeanstalkとAWS Lambdaのご紹介
Akio Katayama
PDF
初心者向けWebinar スケーラブルWebアプリケーションの構築
Amazon Web Services Japan
PPTX
AWSでシステム構築工数を1/10にしつつ、高品質化も実現した枠組みのご紹介
株式会社スカイアーチネットワークス
PDF
CloudStack Overview(OSC2012Kansai@Kyoto)
Satoshi Shimazaki
PDF
AWS Blackbelt 2015シリーズ Amazon CloudWatch & Amazon CloudWatch Logs
Amazon Web Services Japan
PPT
【JAWS-UG Sapporo】はじめてのAWSワークショップ 概説
Machie Atarashi
JAWS DAYS 2015
陽平 山口
AWS初心者向けWebinar RDBのAWSへの移行方法(Oracleを例に)
Amazon Web Services Japan
クラウドデザインパターンから始めるクラウドの利点と弱点の理解~提案から設計・開発・保守に活かす!~
貴志 上坂
Scalrご紹介資料 20130404 01
Haruhiko KAJIKAWA
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!
Yoichi Kawasaki
2011/12/3 わんくま同盟
貴仁 大和屋
AWS初心者向けWebinar AWSでのNoSQLの活用
Amazon Web Services Japan
20150129 cross2015 cloudsearch
Yoshinori Fujiwara
AWS Black Belt Techシリーズ Amazon CloudWatch & Auto Scaling
Amazon Web Services Japan
2011/11/26 Dot netlab
貴仁 大和屋
Amazon EC2を使った実践SaaS運用事例
Yuuki Namikawa
AWSのデータベースサービス全体像
Amazon Web Services Japan
Classmethod awsstudy ec2rds20160114
Satoru Ishikawa
Rdbms起点で考えると見えない世界 okuyama勉強会
Masakazu Muraoka
AWS Elastic BeanstalkとAWS Lambdaのご紹介
Akio Katayama
初心者向けWebinar スケーラブルWebアプリケーションの構築
Amazon Web Services Japan
AWSでシステム構築工数を1/10にしつつ、高品質化も実現した枠組みのご紹介
株式会社スカイアーチネットワークス
CloudStack Overview(OSC2012Kansai@Kyoto)
Satoshi Shimazaki
AWS Blackbelt 2015シリーズ Amazon CloudWatch & Amazon CloudWatch Logs
Amazon Web Services Japan
【JAWS-UG Sapporo】はじめてのAWSワークショップ 概説
Machie Atarashi
Ad
More from Takeshi Mikami
(20)
PDF
rdflintのvscode拡張の紹介とその実装方法
Takeshi Mikami
PDF
適切なクラスタ数を機械的に求める手法の紹介
Takeshi Mikami
PDF
OAuth 2.0による認可の流れ
Takeshi Mikami
PDF
MapReduceによるConnected Components(連結成分)の見つけ方
Takeshi Mikami
PDF
RDFチェックツール「rdflint」のご紹介 (LODチャレンジ2019受賞作品紹介 基盤技術部門優秀賞)
Takeshi Mikami
PDF
データサイエンスアイドル「小日向美穂」と考える「つながり」
Takeshi Mikami
PDF
RDFのチェックツール「rdflint」とコミュニティによるオープンデータの作成
Takeshi Mikami
PDF
CircleCIを使ったSpringBoot/GAEアプリ開発の効率化ノウハウ
Takeshi Mikami
PDF
GitHubの機能を活用したGitHub Flowによる開発の進め方
Takeshi Mikami
PDF
HBase CompleteBulkLoadその仕組み&発生した問題
Takeshi Mikami
PDF
RDFチェックツール「rdflint」のご紹介
Takeshi Mikami
PDF
アーリース情報技術株式会社 会社案内 (2019/02/13)
Takeshi Mikami
PDF
Spark MLlib ML Pipelines の概要 及びpysparkからの扱い方
Takeshi Mikami
PDF
SPARQL入門
Takeshi Mikami
PDF
センサーによるデータ計測と異常検知の基本
Takeshi Mikami
PDF
Webサイトのアクセスログによるユーザー属性推定
Takeshi Mikami
PDF
Google Cloud Dataflowによる データ変換処理入門
Takeshi Mikami
PDF
IoTでの機械学習活用イメージと強化学習のご紹介
Takeshi Mikami
PDF
協調フィルタリング・アソシエーション分析によるレコメンド手法の紹介
Takeshi Mikami
PDF
SparkMLlibで始めるビッグデータを対象とした機械学習入門
Takeshi Mikami
rdflintのvscode拡張の紹介とその実装方法
Takeshi Mikami
適切なクラスタ数を機械的に求める手法の紹介
Takeshi Mikami
OAuth 2.0による認可の流れ
Takeshi Mikami
MapReduceによるConnected Components(連結成分)の見つけ方
Takeshi Mikami
RDFチェックツール「rdflint」のご紹介 (LODチャレンジ2019受賞作品紹介 基盤技術部門優秀賞)
Takeshi Mikami
データサイエンスアイドル「小日向美穂」と考える「つながり」
Takeshi Mikami
RDFのチェックツール「rdflint」とコミュニティによるオープンデータの作成
Takeshi Mikami
CircleCIを使ったSpringBoot/GAEアプリ開発の効率化ノウハウ
Takeshi Mikami
GitHubの機能を活用したGitHub Flowによる開発の進め方
Takeshi Mikami
HBase CompleteBulkLoadその仕組み&発生した問題
Takeshi Mikami
RDFチェックツール「rdflint」のご紹介
Takeshi Mikami
アーリース情報技術株式会社 会社案内 (2019/02/13)
Takeshi Mikami
Spark MLlib ML Pipelines の概要 及びpysparkからの扱い方
Takeshi Mikami
SPARQL入門
Takeshi Mikami
センサーによるデータ計測と異常検知の基本
Takeshi Mikami
Webサイトのアクセスログによるユーザー属性推定
Takeshi Mikami
Google Cloud Dataflowによる データ変換処理入門
Takeshi Mikami
IoTでの機械学習活用イメージと強化学習のご紹介
Takeshi Mikami
協調フィルタリング・アソシエーション分析によるレコメンド手法の紹介
Takeshi Mikami
SparkMLlibで始めるビッグデータを対象とした機械学習入門
Takeshi Mikami
Aws auto scalingによるwebapサーバbatchサーバの構成例
1.
takemikami’s note – http://takemikami.com/ 三上
威 (フリーランスITエンジニア) twitter: @takemikami AWS AutoScalingによる WebAPサーバ/Batchサーバの構成例 AutoScalingでサーバを構成するために必要な周辺知識 1 AWS AutoScaling 2016.1.26 Copyright (C) 2016 Takeshi Mikami. All rights reserved.
2.
takemikami’s note – http://takemikami.com/ アジェンダ •
自己紹介 • AWS Auto Scalingとは • 想定するサーバ構成 • 実現に必要な周辺知識 – どのように処理を分散するか … ELB, SQS – どこにデータを保持するか… RDS, S3 – どこにログを出力するか… CloudWatch Logs – どのようにサーバを起動/構成するか… LaunchConfiguration, cloud-init – 何をきっかけにScalingするか… CloudWatch, Alarm • Tips – アプリケーションのデプロイと切り戻し – バッチサーバの安全な減設 • まとめ 2Copyright (C) 2016 Takeshi Mikami. All rights reserved.
3.
takemikami’s note – http://takemikami.com/ 自己紹介 •
三上威 (@takemikami) • フリーランスITエンジニア – マーケティングデータ分析基盤のシステム開発運用 • 略歴 – 情報通信ネットワークの研究 @ 甲南大学理学部応用数学科 – Web系システムの開発・構築@ NEC系SIer – 旅行系ECサイトのマーケティングデータ分析 @ DeNA • 最近扱っている技術領域 – Spark, Scala, Akka, Hadoop, AWS, Redshift, docker, embulk, fluentd 3Copyright (C) 2016 Takeshi Mikami. All rights reserved.
4.
takemikami’s note – http://takemikami.com/ AWS Auto Scalingとは EC2のインスタンス群をグループとして管理し、 ①障害が生じたノードを検出して自動で置き換え ②需要に応じてインスタンス数を拡大・縮小 を実現するための仕組み 但し、実現するためには、AutoScalingだけで無く、 関連するAWSのサービスなど、周辺知識が必要になります。 4Copyright (C) 2016 Takeshi Mikami. All rights reserved. AWS Auto Scalingとは EC2 AWSのAutoScalingとは何かについて概要を示します。 Auto
Scaling group
5.
takemikami’s note – http://takemikami.com/ Auto Scalingを構成するために考えるべきこと 5Copyright (C) 2016 Takeshi Mikami. All rights reserved. AWS Auto Scalingとは AWSのAutoScalingを構成するために考えるべきことについて整理します。 考えること
関連サービス 説明 どのように処理を 分散するか ELB SQS 各サーバへのリクエストをどのように分散す べきか仕組みを検討 どこにデータを保 持するか RDS S3 EC2にデータを保持できない(動的に起動/終 了するため)ため、保持先を検討 どこにログを出力 するか CloudWatch Logs EC2にログを保存できない(動的に起動/終了 するため)ため、出力先を検討 どのようにサーバ を構成するか LaunchConfiguration cloud-init 動的にEC2を起動する際のミドルウェア/アプ リケーションの構成方法を検討 何をきっかけに Scalingするか CloudWatch Alarm Scalingする条件を設定
6.
takemikami’s note – http://takemikami.com/ 想定するWebAPサーバの構成 6Copyright (C) 2016 Takeshi Mikami. All rights reserved. 想定するサーバ構成 本スライドで想定するWebAPサーバの構成図を示します。 CloudWatch ELB EC2 CloudWatch Logs Launch Configuration
S3 Auto Scaling group EC2 EC2 RDS, S3 Alarm WebAPサーバへの 要求を分散 監視によるAlarm に応じてScaling LaunchConfigurationに よってサーバを構成 CloudWatchLogsに ログデータを集約 RDS,S3に データを保持
7.
takemikami’s note – http://takemikami.com/ 想定するBatchサーバの構成 7Copyright (C) 2016 Takeshi Mikami. All rights reserved. 想定するサーバ構成 本スライドで想定するBatchサーバの構成図を示します。 CloudWatch SQS EC2 CloudWatch Logs Launch Configuration
S3 Auto Scaling group EC2 EC2 RDS, S3 Batchサーバへの 要求をQueueに保持 各EC2からpolling (実行パラメータはRDS) CloudWatchLogsに ログデータを集約 RDS,S3に データを保持 LaunchConfigurationに よってサーバを構成 RDS Alarm 監視によるAlarm に応じてScaling
8.
takemikami’s note – http://takemikami.com/ どのように処理を分散するか
〜WebAPサーバの場合 8Copyright (C) 2016 Takeshi Mikami. All rights reserved. 実現に必要な周辺知識:どのように処理を分散するか どのように処理を分散するか(WebAPサーバの場合)について説明します。 ELB EC2 Auto Scaling group EC2 EC2 WebAPサーバへの 要求を分散 • ELB(LoadBalancer)で処理を分散 AutoScalingGroupに対応するELBを指定 →(HealthCheck成功後)自動でELBに接続される
9.
takemikami’s note – http://takemikami.com/ どのように処理を分散するか
〜Batchサーバの場合 9Copyright (C) 2016 Takeshi Mikami. All rights reserved. 実現に必要な周辺知識:どのように処理を分散するか どのように処理を分散するか(Batchサーバの場合)について説明します。 • SQSでJobキューを作り、Batchサーバからpollingすることで処理を分散 各EC2インスタンスで、以下の処理を実施 ①SQSからJobIDを取得 ②該当JobIDのパラメータをRDSから取得 ③該当JobIDのRDS上のStatusを実行中に ④該当バッチを実行 ⑤該当JobIDのRDS上のStatusを完了に ⑥①に戻り次のJobを処理 SQS EC2 Auto Scaling group EC2 EC2 Batchサーバへの 要求をQueueに保持 各EC2からpolling (実行パラメータはRDS) RDS ※SQSの仕様上Queueに同じJobIDが入る可能性があ るので、実行StatusはRDSで管理 JobID投入 実行パラメータ 投入
10.
takemikami’s note – http://takemikami.com/ どこにデータを保持するか 10Copyright (C) 2016 Takeshi Mikami. All rights reserved. 実現に必要な周辺知識:どこにデータを保持するか どこにデータを保持するかについて説明します。 EC2 Auto
Scaling group EC2 EC2 RDS, S3 RDS,S3に データを保持 • EC2インスタンスは動的に起動/終了するためデータを保持することは出来ない →RDSやS3にデータを保持 EC2のDisk上のデータは インスタンス終了時に消える データはEC2のDisk上に持たず、 RDSやS3に保存する
11.
takemikami’s note – http://takemikami.com/ どこにログを出力するか •
EC2インスタンスは動的に起動/終了するためログを保存出来ない →CloudWatch Logsにログを転送 11Copyright (C) 2016 Takeshi Mikami. All rights reserved. 実現に必要な周辺知識:どこにログを出力するか どこにログを出力するかについて説明します。 EC2 CloudWatch LogsAuto Scaling group EC2 EC2 CloudWatchLogsに ログデータを集約 EC2のDisk上のデータは インスタンス終了時に消える ※awslogsパッケージをinstallし、設定ファイルに転送するログファイルを記載すれば転送設定できる。 ログは逐次、 CloudWatchLogsに転送
12.
takemikami’s note – http://takemikami.com/ どのようにサーバを構成するか〜インスタンスのスペック等 12Copyright (C) 2016 Takeshi Mikami. All rights reserved. 実現に必要な周辺知識:どのようにサーバを構成するか 構成するサーバのスペックなどの情報の設定方法を説明します。 EC2 Launch Configuration EC2 EC2 Auto
Scaling group • ベースとするAMIやInstanceTypeなどはLaunchConfigurationに設定 設定する主な項目: ・ベースとするAMI ・InstanceType ・SecurityGroup ・BlockDeviceのサイズ
13.
takemikami’s note – http://takemikami.com/ どのようにサーバを構成するか〜インストールするパッケージ 13Copyright (C) 2016 Takeshi Mikami. All rights reserved. 実現に必要な周辺知識:どのようにサーバを構成するか 構成するサーバにインストールするパッケージの設定方法を説明します。 EC2 Launch Configuration EC2 EC2 Auto
Scaling group • インストールするパッケージの情報は cloud-initで設定 LaunchConfigurationの UserDataにcloud-initの 設定を記載 #cloud-config # user and groups groups: - admin users: - default - name: admin primary-group: admin groups: wheel # repository and packages repo_upgrade: security packages: - awslogs - nginx cloud-initの例→ ・Adminユーザ作成 ・awslogs/nginxセットアップ
14.
takemikami’s note – http://takemikami.com/ どのようにサーバを構成するか〜設定ファイル・アプリケーション 14Copyright (C) 2016 Takeshi Mikami. All rights reserved. 実現に必要な周辺知識:どのようにサーバを構成するか 構成するサーバに設定ファイル・アプリケーションをセットアップする方法を説明します。 EC2 Launch Configuration
S3 Auto Scaling group EC2 EC2 • 設定ファイル・アプリケーションはS3に置き、cloud-initのruncmdでインストール 以下を配置 ・インストール用スクリプト ・設定ファイル ・アプリケーションのバイナリ EC2にはS3 bucketがRead出来るよう IAM InstanceProfile(IAM Role)を設定 ※実際にはLaunchConfigurationに設定 Cloud-initのruncmdで インストール用スクリプトを実行 # run commands runcmd: - aws s3 cp s3://xxxx-bucket/install.sh- | bash > /var/log/xxxx-install.log ※「s3://xxxx-bucket/install.sh」にインストール用スクリプトを置く場合 インストール用スクリプト内では、以下の処理を実施。 ①設定ファイル・アプリケーションバイナリをS3からダウンロード ②ダウンロードしたファイルを適切なパスに配置 ③必要なサービスを起動
15.
takemikami’s note – http://takemikami.com/ 何をきっかけにScalingするか
〜AlarmによるScaling 15Copyright (C) 2016 Takeshi Mikami. All rights reserved. 実現に必要な周辺知識:何をきっかけにScalingするか 何をきっかけにScalingするか(AlarmによるScaling)について説明します。 CloudWatch EC2 Auto Scaling group EC2 EC2 Alarm 監視によるAlarm に応じてScaling • CloudWatchでAlarmを設定、Alarmに応じてインスタンス数の拡大縮小を実行 ※AutoScalingのきっかけとして考えられるAlarmの例: ・ELBへのリクエスト数 ・ELBのLatency ・SQSのキューの長さ
16.
takemikami’s note – http://takemikami.com/ 何をきっかけにScalingするか
〜指定時間でのScaling 16Copyright (C) 2016 Takeshi Mikami. All rights reserved. 実現に必要な周辺知識:何をきっかけにScalingするか 何をきっかけにScalingするか(指定時間でのScaling)について説明します。 • 指定時間になったらインスタンス数の拡大縮小を実行することも可能 EC2 Auto Scaling group EC2 EC2 指定時間になったら インスタンスを増減 ※2016/1/26現在、ManagementConsoleから設定でき ないようですが。 aws-cliの「aws autoscaling put-scheduled-update- group-action」で設定が可能。 トラフィック増が事前に予測可能ならば、 Alarmより、指定時間でのScalingの方が 扱いやすいと思います。
17.
takemikami’s note – http://takemikami.com/ アプリケーションのデプロイと切り戻し 17Copyright (C) 2016 Takeshi Mikami. All rights reserved. Tips アプリケーションのデプロイ方法と切り戻し方法について説明します。 •
アプリケーションのデプロイ/切り戻しを、 新旧のAutoScalingGroupとLaunchConfigurationを用意して実施出来る • アプリケーションは切り替え前後で以下の状態になる – ①旧アプリケーションが稼働 (切り替え前) – ②新旧アプリケーションが両方稼働 (切り替え中) – ③新アプリケーションが稼働 (切り替え後) →以降のスライドで切り替えの流れを説明
18.
takemikami’s note – http://takemikami.com/ EC2 EC2 EC2 アプリケーションのデプロイと切り戻し
〜切り替え前 18Copyright (C) 2016 Takeshi Mikami. All rights reserved. Tips アプリケーションのデプロイ方法と切り戻し方法について説明します。 ELB EC2 Launch Configuration S3 Auto Scaling group EC2 EC2 Auto Scaling group Launch Configuration S3 切り替え前 ①新アプリケーションをビルドし、 バイナリをS3に配置 ②LaunchConfigurationとAutoScalingGroupを作成
19.
takemikami’s note – http://takemikami.com/ EC2 EC2 EC2 EC2 EC2 アプリケーションのデプロイと切り戻し
〜切り替え中 19Copyright (C) 2016 Takeshi Mikami. All rights reserved. Tips アプリケーションのデプロイ方法と切り戻し方法について説明します。 ELB EC2 Launch Configuration S3 Auto Scaling group Auto Scaling group Launch Configuration S3 切り替え中 新アプリケーションのAutoScalingGroupのEC2イン スタンスを起動 HealthCheckが通り次第ELBに接続
20.
takemikami’s note – http://takemikami.com/ EC2 EC2 EC2 EC2 EC2 EC2 アプリケーションのデプロイと切り戻し
〜切り替え後 20Copyright (C) 2016 Takeshi Mikami. All rights reserved. Tips アプリケーションのデプロイ方法と切り戻し方法について説明します。 ELB Launch Configuration S3 Auto Scaling group Auto Scaling group Launch Configuration S3 切り替え後 旧アプリケーションのAutoScalingGroupのEC2インス タンスを停止 ※旧アプリケーションの AutoScalingGroup/LaunchConfigurationを残しておけ ば切り戻しが可能
21.
takemikami’s note – http://takemikami.com/ EC2 EC2 バッチサーバの安全な減設 •
バッチサーバでバッチ実行中はAutoScalingのInstanceProtectionを設定 →ScaleIn時にバッチを実行していないインスタンスが停止 21Copyright (C) 2016 Takeshi Mikami. All rights reserved. Tips バッチサーバの安全な減設方法について説明します。 EC2 Auto Scaling group バッチ実行中 & InstanceProtection バッチが動いていない (=InstanceProtectionされていない) インスタンスが停止 バッチ実行中 & InstanceProtection ※デフォルトでInstanceProtectionを設定していない場合は、 最も費用が安価になるようにインスタンスを選んで停止
22.
takemikami’s note – http://takemikami.com/ まとめ •
AutoScalingでは、以下のことを実現出来る – 障害時にインスタンスを自動で置き換え – 需要に応じてインスタンス数を拡大縮小 • 実際にAutoScalingを使ってサーバを構成する場合は 関連するAWSサービスなどの周辺知識が必要 • AutoScalingと周辺機能を利用し、 アプリケーションのデプロイ/切り戻しの仕組みを作ることも出来 る 22Copyright (C) 2016 Takeshi Mikami. All rights reserved.
Download