Auto ScalingとAmazon ELB
AWSの醍醐味、業務アプリを支えるEC2の自動スケール機能を見る
AWSのインスタンスをユーザーの設定に従って自動的に拡張/縮小する「Auto Scaling」をビジネスアプリケーションに応用すれば、組織のプロセスを強化できる。
「Amazon Web Services」(AWS)でアプリケーションを開発しているチームは、アプリケーションの拡張性の計画に関して不安を抱えているはずだ。拡張性はアプリケーション性能や顧客の使用感、AWSの料金にも影響を与える。幸い、AWSには効果的な自動スケーリングツールと内蔵オプションがある。ただしほとんどのツールと同様、完全には対応していないケースもあり得る。ビジネスニーズに応じてAWSの機能を強化するための社内ツールを追加で開発しなければならない可能性もある。
ほとんどのアプリケーションプロバイダーにとって、アプリケーションのトラフィックや利用が増えれば、ビジネス機能を処理するために必要なインスタンスやサーバ数は増える。同様に、特定の時間帯や曜日にアプリケーションの利用が低下する場合は必要なインスタンスは減る。計画段階では、想定されるユースケースやコスト、性能に与える影響、インフラニーズに応じてどのようなスケーリングを使うかを決める必要がある。
本稿ではAWSの「Auto Scaling」と「Amazon Elastic Load Balancing」(Amazon ELB)、組織が突き当たる溝や障壁、それに対処するためのアイデアについて解説する。
Auto Scaling
AWSのWebサービスツール「Auto Scaling」では、必要な容量を事前にカスタマイズして、設定された値や需要に応じてインスタンスを自動的にスケーリングする状況を個々に設定できる。スケールアップ/スケールダウンを実行する値は組織が設定する。例えばCPUの平均利用時間が65%に達するとAuto Scalingが作動して、ニーズに応じたインスタンスが追加されるよう設定できる。Auto Scalingでインスタンスを10%減らすことも可能だ。インスタンスは設定に基づいて自動的に追加されたり削除されたりする。ただし行動を起こす前にAuto Scalingを特定時間待機させたり、インスタンスの追加や削除を行う前に再検討させたりする冷却期間の設定を検討することも重要だ。Auto Scalingは基本的に、ユーザーが定義した設定に基づきクラウドインスタンスをAWS内で起動したり終了したりできるWebサービスといえる。
さらに、特定数のインスタンスを実行する設定にしている場合にもAuto Scalingは機能する。望ましいインスタンス数を設定したAuto Scalingグループを作成することにより、常時実行されるインスタンスの数を管理できる。グループ内のインスタンスは設定された容量の値に基づいてAuto Scalingで自動的に追加または削除される。Auto Scalingにはアプリケーションの利用状況に基づいて動的かつ予測的にサーバリソースをスケーリングできる機能がある。適切な値を設定するためには、負荷テストを行うか、時間の経過に伴う実際のアプリケーションの反応を継続調査して、時間の経過に伴うアプリケーションの反応を調べる必要がある。いずれのケースでも、最も効果的なユーザーの反応を引き出すためにはAuto Scalingの上の値と下の値を正確に判定する必要がある。
Amazon ELB
Amazon ELBを有効にすると、アプリケーションのトラフィックが自動的に健全なサーバインスタンスに配分される。アプリケーションの耐障害性を高めるため、インスタンスは別々のアベイラビリティーゾーン(AZ)にグループ化され、また、アプリケーションのトラフィックは利用可能なサーバインスタンスに均等に分散される。
Amazon ELBではインスタンスのヘルスチェックを行って、AZ全体の健全なインスタンスにのみトラフィックを流す。同ツール自体がAWS内で積極的にモニタリングされている。Amazon ELBのオプション使用の特筆すべきメリットは、手動で介入しなくても負荷分散とスケーリングが管理でき、組織のリソースを解放して別の場所に振り向けられる点にある。
Amazon ELBを使うインスタンスに対して、同ツールが自動的に行うヘルスチェックの計画は重要だ。ヘルスチェック実行の値と、インスタンスがヘルスチェックに失敗した場合にトラフィックのルートを切り替えるまでの時間の値を設定する必要がある。例えば30秒ごとにヘルスチェックを実行するよう設定し、ヘルスチェック成功の回数を10に設定した場合、トラフィックがそのインスタンスに送られるまでに約300秒を要する。さらに、失敗の基準となる値も考慮しなければならない。失敗の基準を4回に設定し、ヘルスチェックを30秒ごとに行った場合、そのインスタンスが削除されてトラフィックのルートが変更されるまでに120秒かかる。
Amazon ELBとAuto Scalingは相互運用が可能だ。アプリケーションの拡張性を高めるためにこの2つを組み合わせ、両方の機能を活用することは検討の余地がありそうだ。
追加的ニーズへの対応
AWSのスケーリングツールは大部分のユースケースで効果が実証されているが、中には機能を追加するためカスタム版ツールを開発する必要に迫られる企業もある。その一例として、オンライン映画レンタルサービスの米Netflixは、Auto Scalingを補うために社内で開発した「Scryer」というツールを使っている。
ScryerはNetflixが特定した以下の問題に対応することによって、Auto Scalingを強化する。
- 需要の急増
- 「再試行ストーム」による障害
- 時間ごとのトラフィックパターンの変化
組織によっては、AWSのツールセットが現在対応していないさまざまなビジネスニーズを処理するために、AWSのスケーリングツールを補完するツールの開発が必要だと判断することもある。
アプリケーションを開発している組織は全て、顧客を満足させられる性能やスケールを保証しなければならない。インターネットアプリケーションの顧客は高いレベルの性能とセキュリティ、機能の組み合わせを期待する。あらゆるオプションを組み合わせ、シームレスで高速かつセキュアな高い使用感を実現するためには、スケーリングの計画が必要だ。
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
関連記事
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
「Excel至上主義」の終わらせ方 丸2日の手作業地獄から情シスと現場を救うには
-
2
取手市がVDIと決別した理由 更改費用「4倍超」を約1.7倍に圧縮
-
3
「Microsoft 365のセキュリティ運用」に関するアンケート
-
4
急増する「AIはこう言ってる」マン 判断を狂わせる「AI忖度」を防ぐには?
-
5
221人調査で分かった「情シス最大のストレス」は?
-
6
「Salesforceのテスト自動化ツール」に関するアンケート
-
7
「データストレージの活用方法」に関するアンケート
-
8
「AI時代の統合基盤・エンタープライズAI管理」に関するアンケート
-
9
AIで人を減らした企業がもう心変わり 「AIブーメラン現象」の実態
-
10
自宅のWi-Fiが「遅い」「途切れる」本当の原因は? Dellが推奨する鉄則
ホワイトペーパーランキング PR
-
1
年収2000万「クラウドセキュリティのプロ」になれる資格とは
-
2
セキュリティソフトをすり抜ける標的型攻撃メール、不審メールの見破り方とは?
-
3
Windows Updateの通信集中で回線が逼迫、ネットワーク刷新事例に学ぶ解決策
-
4
財務を戦略的組織へ進化させるAI活用術、4つの主要な障壁と解消方法
-
5
「NAS」「SAN」「DAS」は何が違う? いまさら聞けないストレージの基礎
-
6
“あのファイル転送”で暗躍するノーウェアランサム
-
7
標的型攻撃メールを見破るには? サンプル文面を例に傾向を解説
-
8
商用利用の安全性を確保し大量のコンテンツを高速で生成する、AI活用の秘訣
-
9
マンガで解説、1日で生成AI環境を構築できるワークショップの中身とは?
-
10
Dark AIが台頭する時代の新発想、「より高度なAIで対抗する」具体的方法とは?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー