未分類

AWS AMIでWebサーバーの冗長化

投稿日:

冗長化の際にはEC2サーバーを複数設定する必要がある。

一度EC2を設定したら、AWS AMIを使用して冗長化する。

AMIとはAmazon Machine Imageである。マシンイメージのことである。

Amazonが提供しているデフォルト設定のマシンイメージ、自作したEC2から作成したマシンイメージを元に、同じ構成のEC2インスタンスを容易に作成できる。

 

AWS ELB(Elastic Load Balancing)がロードバランサーである。

ELBのIPアドレスは動的に変わる仕様となっているため、ELBのCNAME(エイリアス名)を、Amazon Route53を使用して、あなたのWebサイトのドメイン名とELBを紐付けるのである。

また、ELB作成時にEC2インスタンスを選択できるので、AMI等で作成したEC2クローンを複数選択しておく。

そうすると、サイト訪問者のリクエストはまずELBに接続し、ELBにより冗長化されたEC2のうち、負荷が低いマシンに適切に振り分けられる。

ELBに一般訪問者からのリクエストを許可しておき、WebサーバーはELBからのリクエストしか許可しないようにしておく。

ELBのIPアドレスは可変のため、サブネットで指定する。

HTTPセッションを使うWebサイトの場合は、ELBの「スティッキーセッション」を有効にしておく。

そうしないと、同一ユーザーのリクエストが同一のEC2インスタンスに振り分けられないため、セッションが維持できないからである。

 

MySQLなどのDBは、EC2に自分でインストールする方法と、Amazon RDS(Relational Database Service)を使う方法がある。

 

オートスケール

サーバー負荷が高まると、自動で処理能力を高める仕組みをオートスケールという。

WebサーバーのオートスケールはAmazon Cloud Watchを使用する。

Cloud Watchはサーバー負荷を監視する。サーバー負荷が高まるとアラームを投げる。Auto Scalingはアラームを受信すると処理能力を高める。

 

 

-未分類

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

Spring-boot-JPAの実行SQLをログ出力する

せっかくJPA導入したのだから、ネイティブSQLは使用しない方がいいです。 しかし、データストアがRDBの場合は、パフォーマンスチューニングや開発時に欲しいデータが取れない場合は、SQLを見直したい時 …

no image

マーケティング

弱者であるベンチャー企業が生き残る唯一の方法は、「小さい市場」を独占するしかない。 小さい市場を100個見つける。その100個から1つ選ぶ。 100個見つけて、事業プラン・収支予測を書いてみる。 小さ …

no image

コマンドライン/EclipseからGit pushするときのコミッター名を変更する

コマンドラインからプッシュするとき   eclipseからプッシュするとき 設定>チーム>Git>構成>ユーザー設定 エントリーの追加ボタンを押して、上記のように追加し、適用します。 key …

no image

AWSのマネージドサービスを使うメリット

EC2はIaaSである。 サーバーをそのまま借りれるため、やろうと思えばストレージにもRDBにも使える。 一方、S3やRDSはPaaSである。マネージドサービスとも呼び、Amazonがサービス基盤とし …

no image

Pythonコマンド

python -v Pythonのバージョンを表示する  $ python3 -V $ python -V  Vは大文字です。 結果 Python 3.6.2 (v3.6.2:5f …