ウェブサイトシステムにアクセスするユーザーが不特定の時間に突然の高くなると中断や過負荷につながり、さらに悪いことに、ウェブサイトがダウンされます。
ウェブサイト向けAWS のEC2に設定されるLoad BalancingやAuto scaling サービスは上記のケースを処理するための最適なソリューションの1つになります。
このソリューションを使用すると、アクセス量に合わせてEC2リソースを調整できます。
AWSのAuto Scaling はシステムのパフォーマンスを安定に維持するために、ウェブアプリを監視し、自動的にEC2リソースを調整します。
次の記事では、EC2 AWSのAuto ScalingやLoad Balancing をインストールする方法を説明します。
Load BalancingやAuto scaling とは
Load Balancing とは
Load Balancing は情報技術分野で、特にウェブ開発者、ネットワークプログラマー、データプロセッサでよく使用される用語です。
同時にウェブやアプリにアクセスするユーザーが多すぎると、読み込みが遅くなり、サーバが時間内にタスクを処理できないから接続すらできない、つまり、サーバがダウンします。
Load Balancing に他のサーバーへ自動的にユーザーのアクセス量を配分するのに、Load Balancer を補充する。それで、タスクも保障して、ユーザーの要件もスムーズに解決する。
Load Balancing は柔軟にサーバを運営し、data centerを保護するの機能もある。これは、サーバーに分散される前にLoad Balancingで受信して処理することを通して実行されます。また、ユーザーへサーバのフィードバックのプロセスはロードバランシングを通するべきだ。
ユーザーがサーバと直接のコミュニケーションのことができない、それで、ネット攻撃や不正アクセスを防ぐため、ほとんど全ての情報とイントラネット構造が隠されています。
Auto Scaling とは
Auto Scaling はクラウドコンピューティングテクノロジー(Cloud)に使用されている用語です。いつでも使用ニーズに応じて分散するコンピューティングリソースの量を調整することを目的としています。
Auto Scaling は特に便利であり、クライアントが固定リソースをアップグレードして維持する必要なしに、時に応じてユーザー数がアンバランスな時に、リソースとコストを節約するのに役立ちます。
Auto Scaling は有益に自動的に計算する機能があり、トラフィックが多い時に新しいサーバーの起動したり、トラフィックが少ない時にサーバ数減らしたりすることを支援する。そこから、ユーザーが実際に使用した分だけ支払う必要があり、サービス品質も依然に確保されます。
Load BalancingとAuto Scalingの関係
Load Balancing とAuto Scaling はどちらも、サーバシステムの負荷を軽減するという同じ目的があります。
ただし、これは2つの異なるタスクを実行します。Load Balancing はトラフィックを誘導するために、主に外部インターネット環境と通信する。Auto Scaling はサーバークラスターにリソースを再配布するために、サーバー内にサーバーシステムと通信する主なタスクがあります。
つまり、トラフィックが過負荷の時、ロードバランシングは元のサーバーから他のサーバーへ自動的にトラフィックを配分する役割があります。
このことをするために、グループ内のサーバーのリソース要件に変更する時の上で、オートスケーリングはそのサーバのクラスター(オートスケーリンググループ)で実行されているロードバランシングにサーバーを追加または軽減する必要があります。
AWS EC2のLoad Balancing やAuto Scaling をインストール案内
Target Groupsの作成
AWS Consoleインターフェイスに、 EC2をクリック -> Target Groups -> Create target group
下のイメージのように作成する必要のTarget Group のパラメータを入力->Next
次のインターフェイスに、Create target group 作成をクリックします。
作成された後、EC2インターフェースにターゲットグループが表示される-> Target groups
Load Balancersの作成
AWS Consoleンターフェイスに、EC2をクリック-> Load Balancers -> Create Load Balancer -> Create Application Load Balancerをクリック
Create Application Load Balancerのインターフェースに、作成する必要のALBのパラメータを入力します。
Listener and routingに注意し、作成したtarget groupへForward portを実施します。そしたら、Create load balancerをクリックします。
作成された後、Load Balancersのインターフェースに作成したLoad Balancerの情報が表示されます。
Auto Scalingのimageとtemplateの作成
別のtemplate imageを作成べき、Auto ScalingはEC2の数量を調整するのために、自動的にimageを1つ見本とするから。
- ConsoleのEC2インターフェースに、AWS Instancesをクリックー> Auto scalingを実行する必要のEC2 をクリック-> Image and templates -> Create image
- Create imageのインターフェースに、作成する必要のある画像パラメータを入力する-> Create image
作成されたimageをチェックするのために、EC2インターフェースにAMISをクリックします。
Imageを作成されたのをチェックした後、EC2 インターフェースにLaunch templateをクリック-> Create launch template
作成する必要があるImage templateの情報を入力し、AMISに注意は上の作成したImageを選ぶべき-> Create launch template
作成した後、Launch templateにtemplateを見ます。
運営中で、EC2が変化更新すると新しい画像を作成する手順をやり直して、Launch templateに移動する-> Actions -> Modify template (Create new version)、descriptionを変更し、AMISに新しく作成した画像を選択する
Auto Scaling groupsの作成
EC2 インターフェースに-> Auto Scaling groups -> Create an Auto scaling group
Create Auto Scaling groupインターフェースに、作成する必要があるAuto Scaling groupの情報を入力する。Launch templateに注意し、手順3で作成したtemplateを選択します。
Attach load balancerで、手順2で作成したload balancerを選択します。
Configure group size and scaling policiesセクションで、Auto Scaling groupのEC2の量のデフォルトパラメーターを入力します。この記事では、デフォルトのServer数を2に設定し、Serverの最小数は2に設定し、Serverの最大数は20に増やします。Serverを追加する場合のポリシーでは、CPUは70%を超えます。
構成パラメーターを入力した後、Auto Scaling groupを確認して作成します。
正常に作成されると、EC2に新しく作成されたAuto Scaling groupが表示される-> Auto scaling groups
この時点で、新しく作成されたAuto scaling group構成に従って作成された2つのEC2 instanceが表示されます。
Target Groupsで詳細をチェックして、作成されたばかりのEC2インスタンスのステータスを確認します。
Launch template作成で選択したキーファイル情報を使用によって、Auto Scaling groupsで作成されたEC2 instanceにアクセスできます。
エンド
この記事では、EC2、AutoScaling、LoadBalanceなど、AWSでシステムを作成する方法を示し、基本的にdemo(デモ)を行いました。
このガイドに基づき、特定のニーズに応じて、別の設定を追加するのを調整および構成できます。この記事が役立つ情報を提供してくれることができることを希望しています。
ONETECHは現在AWS開発サービスを提供しています(AWSプラットフォームでクラウドアプリ構築、運用、移行、開発)
クラウドの移行が加速するにつれ、ますます多くの企業がコアウェブシステムとサービスをAWSに移行することを検討しています。
OneTech社はAWSプラットフォームでクラウドシステムを運用および維持し、クラウド通して移動するスマートフォンアプリを開発し、低価格にウェブ開発サービスを提供しています。
OneTechはLambdaを使用してサーバーレスを構築することに最初に企業の1つで、AWSがサーバーとミドルウェアを管理する所です。
ベトナムオフショア開発会社 ONETECHはAWSセレクトティアパートナー
もし、AWSについてプロのアドバイスが欲しいのなら、ぜひONETECHにご相談ください。
ONETECHはオフショア開発会社として100社以上との取引実績を誇ります。
ONETECHではAWS資格保有のエキスパートがお客様の課題をカタチにします。
- インターネットサービスの企画はあるがどうしたら良いか
- どのようにクラウドを利用したら良いかわからない
- クラウドを利用するためのコストやポイントを知りたい
- 保守運用まで考慮した設計をしたい
Lambdaを含むAWSのコンサルティングサービスを提供しています。気になること、不安なことをお気軽にご相談ください。
AWS導入について相談する