Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

第21回 Cloudn(クラウド・エヌ)勉強会 「AutoScalingを無料で使い倒そう」

2,202 views

Published on

2015年1月21日に開催しました、第21回 Cloudn(クラウド・エヌ)勉強会の内容です。クラウドならではといえるAutoScalingサービスについて、基本的な用語解説から上級者向けのAPI利用例まで、幅広くご紹介しております。

Published in: Technology
  • Be the first to comment

第21回 Cloudn(クラウド・エヌ)勉強会 「AutoScalingを無料で使い倒そう」

  1. 1. Copyright © NTT Communications Corporation. All rights reserved. AutoScalingを無料で 使い倒そう 2015/01/21 NTTコミュニケーションズ株式会社 クラウドサービス部
  2. 2. Copyright © NTT Communications Corporation. All rights reserved. 1: AutoScalingとは?
  3. 3. Copyright © NTT Communications Corporation. All rights reserved. AutoScalingとは?  さまざまな条件に応じて、仮想サーバの台数を自動的に増減させるサービ スです。  台数を増加させることを「スケールアウト」、台数を減少させることを 「スケールイン」と言います。 アクセス集中!! スケールアウト
  4. 4. Copyright © NTT Communications Corporation. All rights reserved. LBA(ロードバランサ)と密接に連携します  スケールアウトによって生成された仮想サーバを自動でLBAの配下に追加すること ができます。 スケールアウト LBA Compute Compute 通信を振り分け  AutoScalingを利用することで、LBAによるヘルスチェック(ポート開放確認)に失 敗している、通信断サーバを自動で再作成することができます。 削除ののちに再作成 LBA Compute 通信断を検出 Compute
  5. 5. Copyright © NTT Communications Corporation. All rights reserved. Monitoring(リソース監視)と密接に連携します  Monitoringに設定されたアラームを条件にして、スケールアウト/インを 実行することが可能です。 スケールアウト リソース監視 Monitoring Compute 条件に応じて AutoScalingを呼出
  6. 6. Copyright © NTT Communications Corporation. All rights reserved. どんな条件でスケールアウト/インする?  CPU使用率  ディスク読み取り操作回数  ディスク書き込み操作回数  ディスク読み取りバイト数  ディスク書き込みバイト数  ネットワーク受信バイト数  ネットワーク送信バイト数  スケジュール(特定日時)  手動でスケーリング  その他、自身で定義したカスタムメトリクス  以下のさまざまな条件でスケーリングできます! ⇒次ページより、いくつか例を交えてご紹介します。
  7. 7. Copyright © NTT Communications Corporation. All rights reserved. どんなときに使える?  例1.急な負荷が発生した際にスケールアウト スケールアウト LBA アクセス集中!! サーバ2台の平均CPU使用率が90%をオーバー 助けて! 助けにきたよ サーバを3台に増やすことで60%に! Compute Compute
  8. 8. Copyright © NTT Communications Corporation. All rights reserved. どんなときに使える?  例2.負荷が予想される日時にスケールアウト/イン 1月21日の0時00分に スケールアウト! LBA 1月21日はイベントのある日だから、アクセスが増える かも。念のためサーバの台数を増やしておこうかな。 イベントが終わったら元に戻そう。 Compute Compute 1月22日の0時00分に スケールイン! システム管理者
  9. 9. Copyright © NTT Communications Corporation. All rights reserved. どんなときに使える?  例3.通信断に備えた可用性の向上 LBA Compute Compute 通信断を検出 自動で仮想サーバを 削除/再作成 LBA配下に常に決まった台数の 仮想サーバを用意できる 新たに作成された サーバに通信を振り分け LBAしか利用していないと・・LBAとAutoScalingを併用していると・・ 通信断を検出 他のサーバに 負荷が集中! Compute 通信断が回復するまで、他のサーバに 負荷が集中し、かつ自動で復旧しない LBA
  10. 10. Copyright © NTT Communications Corporation. All rights reserved. どんなときに使える?  例4.マシンに大きな負荷を与えるバッチ処理 Compute 普段は3台で処理 リソース CPUリソースが必要であれば4台に増やす 動画エンコードや 統計データ処理など
  11. 11. Copyright © NTT Communications Corporation. All rights reserved. 本当にAutoScalingは無料なの?  無料でご利用いただくことができます!ただし・・・  AutoScalingのサービスを利用して仮想サーバを追加した場合、その仮想 サーバに対する料金は発生します。(通常どおり仮想サーバを追加した場 合と同額の料金です。)  CPU使用率やネットワーク送受信数などの計測は、Monitoringのアラーム 機能を利用しています。追加したアラームの分、料金が発生します。ア ラームは5件目まで無料ですが、6件目以降は1アラームあたり10.8円/月 (米国リージョンの場合は12.96円/月)の料金が発生します。
  12. 12. Copyright © NTT Communications Corporation. All rights reserved. 2: AutoScalingことはじめ
  13. 13. Copyright © NTT Communications Corporation. All rights reserved. AutoScalingのキーワード(基本編) – 3つ  テンプレート(Template)  起動設定(Launch Configuration)  AutoScalingグループ(AutoScaling Group)  以下の3つの用語が重要です。 ⇒順番に見ていきましょう。
  14. 14. Copyright © NTT Communications Corporation. All rights reserved. ①テンプレート:仮想サーバの基礎・土台  テンプレート(Template)とは、仮想サーバの『ひな型』です。また は『バックアップ』とも換言できます。AutoScalingでは、このテン プレートから新たな仮想サーバを生成します。 Compute OS:CentOS ソフトウェア構成: ・Apache ・Tomcat ・・etc  テンプレートはComputeのコンソール画面より簡単に作成することが できます。 テンプレート 作成 一度テンプレートを作成しておけば、次回からはテンプレート をもとに、同じ構成の仮想サーバを作成することができます。 テンプレート OSやソフトウェア 構成を保存
  15. 15. Copyright © NTT Communications Corporation. All rights reserved. ②起動設定:仮想サーバの設計図  起動設定(Launch Configuration)とは、どのテンプレートをもとに して、どんな仮想サーバを作るか、仮想サーバの情報を表す『設計 図』です。 テンプレート どのテンプレート を使うか 起動設定 D ディスク 仮想サーバのスペック (仮想サーバプラン) アクセス設定 (セキュリティグループ) ディスクを何GB にするか CPU/メモリは どうするか どのIPアドレス/ ポートを開けるか
  16. 16. Copyright © NTT Communications Corporation. All rights reserved. ③AutoScalingグループ:AutoScalingの管理単位  AutoScalingグループ(AutoScaling Group)とは、AutoScalingサー ビスの管理単位です。AutoScalingを動作させるうえで、必要となる 様々な設定を行います。 起動設定 D Compute LBA LBAと接続 (任意) 起動設定をもとに 仮想サーバを生成 スケールアウト/ スケールイン AutoScalingグループ どのLBAに繋げる? 何台までスケールアウトする? どの起動設定をもとに仮想サーバを作る? ・・・等、AutoScalingの動作設定は、AutoScalingグループという単位で管理します。
  17. 17. Copyright © NTT Communications Corporation. All rights reserved. ③AutoScalingグループ:AutoScalingの管理単位  AutoScalingグループには、以下のような設定項目があります。  最大台数(Max Size): AutoScalingグループ内で最大何台まで仮想サーバを増やすことができるか  最小台数(Min Size): AutoScalingグループ内で最低でも何台の仮想サーバを確保するか  現状台数(Desired Capacity): AutoScalingグループ内に、現状、何台の仮想サーバを置くか  起動設定(Launch Configuration): どの起動設定をもとに仮想サーバを生成するか  ロードバランサ名(Load Balancer Names): どのロードバランサの配下に仮想サーバを生成するか(任意設定)  利用可能ゾーン(Availability Zones): どこに(jp-e1a, jp-e1bなど)仮想サーバを生成するか AutoScalingグループ内の仮想 サーバ数を制御するには、この 『現状台数』を変動させます。
  18. 18. Copyright © NTT Communications Corporation. All rights reserved. AutoScalingのキーワード(応用編) – 3つ  スケーリングポリシー(Scaling Policy)  ヘルスチェック(Health Check)  クールダウン時間(Cooldown Period)  以下の3つの用語は、可能であれば覚えたいところ。 ⇒順番に見ていきましょう。
  19. 19. Copyright © NTT Communications Corporation. All rights reserved. ④スケーリングポリシー:スケーリング動作の定義  スケーリングポリシー(Scaling Policy)とは、何台の仮想サーバを、どの AutoScalingグループ内でスケールアウト/インするか、スケーリング処理 の動作の定義を表します。 スケーリングポリシー Compute “as-test”(AutoScalingグループ) Compute “as-test”という名前のAutoScaling グループに2台を追加して! 2台分スケールアウト します! スケーリングポリシーにより現状台数(Desired Capacity)を2台増加させる ことで、AutoScalingグループは起動設定をもとに仮想サーバを2台生成します。 D 起動設定
  20. 20. Copyright © NTT Communications Corporation. All rights reserved. ④スケーリングポリシー:スケーリング動作の定義  スケーリングポリシーがMonitoringのアラームで呼び出されることによ り、CPU使用率やネットワーク状況等をトリガーとしたスケールアウト/イ ンが実現します。 スケーリングポリシー Compute Compute Monitoring AutoScalingグループ リソースの状況を監視閾値を超えたら呼び出し (アラーム) 2台を追加 D 起動設定
  21. 21. Copyright © NTT Communications Corporation. All rights reserved. ⑤ヘルスチェック:仮想サーバの状態確認  ヘルスチェック(Health Check)とは、仮想サーバが正常に起動しているか確認す る動作のことを表します。AutoScalingでは、正常に起動している状態を”Healthy”、 正常でない状態を”Unhealthy”と呼びます。  AutoScalingグループ内でUnhealthy状態の仮想サーバは、AutoScalingによって削 除ののちに再作成されます。  AutoScalingによるヘルスチェックには、LBAによるものと、Computeによるもので 2種類あり、選択することができます。LBAの場合はポートの開放確認、Computeの 場合はサーバの起動確認になります。 ポート開放 確認 LBA AutoScalingグループ LBAによるヘルスチェック AutoScalingグループ Computeによるヘルスチェック Running Running Stopped サーバ起動確認 Healthy Healthy Unhealthy Healthy Healthy Unhealthy
  22. 22. Copyright © NTT Communications Corporation. All rights reserved. ⑥クールダウン時間:スケーリング処理の無視時間  クールダウン時間(Cooldown Period)とは、スケールアウト/インの処理 が完了したあと、一定期間(デフォルト:300秒間)、次のスケールアウト /インの処理が発生しても無視をする時間を表します。  クールダウン時間は、OSの初期化プロセスや初回インストール処理などが 完了し、サービスが安定稼動するまでの待機時間として設けられています。 WEBサーバのネットワーク受信量が 閾値を超えてスケールアウト 仮想サーバ起動直後はWEBサービス が停止しており、再スケールアウト (※)もしクールダウン時間がないと・・ このクールダウン時間にスケールアウト/インが発生 しても、その処理は無視されます。 スケールアウト/イン 処理 クールダウン(安定す るまで300秒間待機) 次のスケールアウト/ インを待受 このように、クールダウン時間を取らずサービスが安定稼動していない場合、スケールアウト/ インの効果を得る前に、次のスケールアウト/インが開始されてしまう場合があります。
  23. 23. Copyright © NTT Communications Corporation. All rights reserved.  AutoScalingは複雑だし、面倒な設定はしたくない。 ここまで・・・  用語が覚えられない  いろいろ設定が複雑そうだ
  24. 24. Copyright © NTT Communications Corporation. All rights reserved.  AutoScalingは複雑だし、面倒な設定はしたくない。 でも大丈夫  用語が覚えられない  いろいろ設定が複雑そうだ ⇒ CloudnのGUIにおまかせ!
  25. 25. Copyright © NTT Communications Corporation. All rights reserved. 3: GUIからAutoScaling
  26. 26. Copyright © NTT Communications Corporation. All rights reserved.  「起動設定」や「スケーリングポリシー」、Monitoringとの連携設 定など、AutoScaling特有の設定を意識せずに、簡単に AutoScalingのサービスを利用することができます。  おおまかに、「どのテンプレートをもとに」、「どのような条件 で」、「何台スケールイン/アウトするか」を指定するだけで、 AutoScalingが利用できます。 CloudnのAutoScaling GUIを使うと・・・
  27. 27. Copyright © NTT Communications Corporation. All rights reserved. AutoScaling GUI ログイン後の画面より、AutoScalingにカーソルをあわせ「コンソールへ」 をクリックするとGUIが開きます。
  28. 28. Copyright © NTT Communications Corporation. All rights reserved. AutoScaling GUI 右上の「新規作成」をクリックすることで、AutoScalingの設定を開始します。
  29. 29. Copyright © NTT Communications Corporation. All rights reserved. AutoScaling GUIの設定項目  AutoScalingグループ名 AutoScalingグループの名前を入力します。  利用可能ゾーン どこに仮想サーバを作成するか選択します。  ロードバランサ(LBA) どのLBAの配下に仮想サーバを 置くか選択します。  テンプレート どのテンプレートをもとに 仮想サーバを作成するか選択します。  コンピューティングオファリング 作成される仮想サーバのスペックを選択しま す。  セキュリティグループ どのポートをどこに開放するか、設定した セキュリティグループを選択します。 (※)テンプレートおよびロードバランサ は事前に作成しておく必要があります。
  30. 30. Copyright © NTT Communications Corporation. All rights reserved. AutoScaling GUIの設定項目  最小台数 AutoScalingグループ内に最低何台の仮想 サーバを確保するか入力します。  最大台数 AutoScalingグループ内に最大で何台までの 仮想サーバ作成を許容するか入力します。
  31. 31. Copyright © NTT Communications Corporation. All rights reserved. AutoScaling GUIの設定項目  トリガー どんな条件でスケールアウト/インするか、 選択します。  トリガー判定基準値(スケールアウト) スケールアウトが発生する閾値を指定します。 (例:CPU使用率が50%以上)  トリガー判定基準値(スケールイン) スケールインが発生する閾値を指定します。 (例:CPU使用率が50%未満)  スケールアウト・スケールイン単位台数 スケールアウト/イン発生時に、何台を 増減させるか指定します。
  32. 32. Copyright © NTT Communications Corporation. All rights reserved. AutoScaling GUIから選択可能なトリガー  CPU使用率  ディスク読み取り操作回数  ディスク書き込み操作回数  ディスク読み取りバイト数  ディスク書き込みバイト数  ネットワーク受信バイト数  ネットワーク送信バイト数  以下の条件をもとに、スケールイン/アウトの設定が可能です。 (いずれもAutoScalingグループ内の全仮想サーバの平均値を 表します。)
  33. 33. Copyright © NTT Communications Corporation. All rights reserved. トリガーについて – CPU使用率  CPU使用率は、5分間隔で取得されます。AutoScalingグループ内 の仮想サーバごとに、5分の間隔で瞬間値を取得し、それらの平均 が閾値(トリガー)となります。 サーバ① サーバ② サーバ③ 5分ごとに各サーバの瞬間値を取得し、 その平均(星印)がトリガーになります。 5分 5分 5分
  34. 34. Copyright © NTT Communications Corporation. All rights reserved. トリガーについて – ディスク/ネットワーク  ディスクやネットワークに関するデータも同様に5分間隔で取得さ れますが、CPUとは異なり、こちらは5分間の累計値となります。 各サーバごとに5分間の累計値を取り、それらの平均が閾値(トリ ガー)となります。 サーバ① サーバ② サーバ③ 5分間 5分間 5分間の累計値を各サーバご とに取得し、その平均(星印) がトリガーです。
  35. 35. Copyright © NTT Communications Corporation. All rights reserved. (応用編)トリガーについて – その他  MonitoringのGUIを利用することで、カスタムメトリクスをはじめ とした独自の条件でスケールアウト/インを実施することも可能で す。 「アラーム一覧」より「作成」ボタンをクリックします。
  36. 36. Copyright © NTT Communications Corporation. All rights reserved. (応用編)トリガーについて – その他  条件を設定し、アクション設定として「オートスケーリングポリ シーを実行する」を選択してアラームを作成することで、任意の条 件によるスケールアウト/インが可能になります。
  37. 37. Copyright © NTT Communications Corporation. All rights reserved.  自身でもっと柔軟にAutoScalingの設定を組みたい。 ここまで・・・  GUIは簡単な反面、限られた操作しかできない  APIを使うにしても、どうやって叩けばよいか分からない  AutoScalingは複雑だし、面倒な設定はしたくない。 ⇒ CloudnのGUIを使えば、なんとかなりそう  用語が覚えられない  いろいろ設定が複雑そうだ
  38. 38. Copyright © NTT Communications Corporation. All rights reserved.  自身でもっと柔軟にAutoScalingの設定を組みたい。 でも大丈夫  GUIは簡単な反面、限られた操作しかできない  APIを使うにしても、どうやって叩けばよいか分からない  AutoScalingは複雑だし、面倒な設定はしたくない。 ⇒ CloudnのGUIを使えば、なんとかなりそう  用語が覚えられない  いろいろ設定が複雑そうだ ⇒ AWSと互換性のある、豊富なAPIが利用できます!
  39. 39. Copyright © NTT Communications Corporation. All rights reserved. 4: APIからAutoScaling
  40. 40. Copyright © NTT Communications Corporation. All rights reserved.  API (Application Programming Interface) とは? あるコンピュータプログラム(ソフトウェア)の機能や管理する データなどを、外部の他のプログラムから呼び出して利用するための 手順やデータ形式などを定めた規約のこと。 (出典:IT用語辞典 e-Words http://e-words.jp/) そもそもAPIって何でしょう?  要するに・・・GUIよりも幅の広い操作ができます。 Cloudn API 呼び出すことで色々な操作を行う。 (仮想サーバの作成など) 人やプログラム Java, C GUI GUIは特定のAPIのみをWEB 画面から簡単に実行できるよう、 切り出したもの
  41. 41. Copyright © NTT Communications Corporation. All rights reserved. API利用の前に  誰がAPIを呼び出しているか特定するため、APIアクセスキーと秘 密鍵(認証情報)が必要です。 Cloudn API 認証情報 人やプログラム Java, C  自身のAPIアクセスキーと秘密鍵は、ポータルサイトログイン後の 左下のリンクから参照することができます。 APIアクセスキーと秘密鍵が 表示されます。
  42. 42. Copyright © NTT Communications Corporation. All rights reserved.  APIは、HTTPSのリクエストをAutoScalingのエンドポイントと 呼ばれる場所に送信することで、呼び出すことができます。 例:東日本リージョンのAutoScalingエンドポイント https://as-api.jp-e1.cloudn-service.com  自分で呼び出すには結構大変です。たとえば、こんなHTTPSのリク エストを送信します。 APIを呼び出すには? https://as-api.jp-e1.cloudn-service.com/?Action=DescribeAutoScalingGroups& Version=2011-01-01&SignatureVersion=2&SignatureMethod=HmacSHA256& Timestamp=2013-02-01T05%3A54%3A53.578Z& AWSAccessKeyId=<自身のAPIアクセスキー>&Signature=<Signature> ⇒ よく分からない!
  43. 43. Copyright © NTT Communications Corporation. All rights reserved.  CloudnのAPIはAWS互換なので、AutoScaling関連のさまざまな AWSツールがそのまま使えます。  オススメはAWS Command Line Interface。Windows、Mac、 Linuxなど環境を選ばずAPIを叩くことができます。 (もっとかんたんに)APIを呼び出すには? https://as-api.jp-e1.cloudn-service.com/?Action=DescribeAutoScalingGroups& Version=2011-01-01&SignatureVersion=2&SignatureMethod=HmacSHA256& Timestamp=2013-02-01T05%3A54%3A53.578Z& AWSAccessKeyId=<自身のAPIアクセスキー>&Signature=<Signature> $ cnas describe-auto-scaling-groups ⇒ 例えばこんなに長いリクエストが・・・ ⇒ コマンドラインにこの1行を打ち込むだけで完了します。
  44. 44. Copyright © NTT Communications Corporation. All rights reserved.  1. Pythonのパッケージ管理システム”pip”を利用するのが、最も簡単な方法です。pip を利用して、AWS Command Line Interfaceのパッケージをインストールします。  2. ツールの設定を以下のとおり行います。  3. 呼び出しやすいようにエイリアスを設定しておきます。これで導入完了です。 AWS Command Line Interfaceの導入方法(UNIX) $ sudo pip install awscli AWS Access Key ID : <APIアクセスキー> AWS Secret Access Key : <秘密鍵> Default region name : jp-e1 Default output format : table $ aws configure set default.autoscaling.signature_version v2 $ alias cnas=“aws –endpoint https://as-api.jp-e1.cloudn-service.com/ autoscaling” $ aws configure (※)2項のDefault region nameおよび3項のendpointは、リージョンごとに変更を行う必 要があります。
  45. 45. Copyright © NTT Communications Corporation. All rights reserved.  AutoScalingには、AWSと互換性のある34種類のAPIが用意されています。 どんなAPIがある? API CreateAutoScalingGroup DescribeAutoScalingNotificationTypes ExecutePolicy CreateLaunchConfiguration DescribeLaunchConfigurations PutNotificationConfiguration CreateOrUpdateTags DescribeMetricCollectionTypes PutScalingPolicy DeleteAutoScalingGroup DescribeNotificationConfigurations PutScheduledUpdateGroupAction DeleteLaunchConfiguration DescribePolicies ResumeProcesses DeleteNotificationConfiguration DescribeScalingActivities SetDesiredCapacity DeletePolicy DescribeScalingProcessTypes SetInstanceHealth DeleteScheduledAction DescribeScheduledActions SuspendProcesses DeleteTags DescribeTags TerminateInstanceInAutoScalingGroup DescribeAdjustmentTypes DescribeTerminationPolicyTypes UpdateAutoScalingGroup DescribeAutoScalingGroups DisableMetricsCollection DescribeAutoScalingInstances EnableMetricsCollection  各APIの利用方法、詳細については、以下のサイトより日本語のマニュアル (HTML形式)をご用意しております。 ⇒ 次ページより、AWS Command Line Interfaceを利用し た、APIの活用例をいくつかご紹介します。 http://www.cloudn-service.com/guide/manuals/html/as-api/
  46. 46. Copyright © NTT Communications Corporation. All rights reserved.  PutScheduledUpdateGroupAction スケジュール処理を設定するAPIです。日時を指定してスケールアウト/インが 可能になります。 注目のAPI - PutScheduledUpdateGroupAction $ cnas put-scheduled-update-group-action --scheduled-action-name schedule-test --auto-scaling-group as-test --start-time 2015-01-21T09:00:00+09:00 --max-size 10 --min-size 0 --desired-capacity 2 “schedule-test”という名前のスケジュール処理設定を、 “as-test”というAutoScalingグループに対して、 日本時間2015年1月21日の午前9時00分00秒に、 最大台数10台および、 最小台数0台の状態で、 現状台数を2台に設定するよう作成します。 つまり、2015年1月21日の 午前9時に、as-testという 名前のAutoScalingグループ 内の仮想サーバ台数が”2台” になります。 APIの実行例と意味
  47. 47. Copyright © NTT Communications Corporation. All rights reserved.  UpdateAutoScalingGroup 特定のAutoScalingグループについて、設定内容を更新するAPIです。 ヘルスチェックをLBAではなく、Computeに切り替えることができます (※)。バッチ処理のためにAutoScalingを利用する場合など、LBAを利用しな いシステム構成の場合に有効です。 注目のAPI – UpdateAutoScalingGroup $ cnas update-auto-scaling-group --auto-scaling-group-name as-test --health-check-type CnC “as-test”というAutoScalingグループについて、 ヘルスチェック方法をComputeに切り替えます。 APIの実行例と意味 (※)LBAによるヘルスチェックでは「特定のポートが開いているか」という観点で仮 想サーバの生死を判別しますが、Computeによるヘルスチェックでは「仮想サーバが 起動しているか」という観点で生死の判別を行います。 ヘルスチェックに失敗しているサーバは、AutoScalingの機能により削除の後に再作成 されます。
  48. 48. Copyright © NTT Communications Corporation. All rights reserved.  ResumeProcesses 停止したスケーリング処理を再開させるAPIです。 AutoScalingは、ヘルスチェック起因による仮想サーバ再作成に一定回数以上 (3回)失敗した場合や、仮想サーバの配置先となるLBAが存在しない場合な ど、サービスを提供できない致命的なエラーを検出した際に、AutoScalingグ ループ内の一切のスケーリング処理を凍結し、グループのステータスを『エ ラー』とします。 これを再開させるのが、”ResumeProcesses”です。 注目のAPI - ResumeProcesses $ cnas resume-processes –auto-scaling-group-name as-test “as-test”という名前のAutoScalingグループについて、 スケーリング処理を再開させます。 APIの実行例と意味
  49. 49. Copyright © NTT Communications Corporation. All rights reserved. 最後に – AutoScalingを利用開始するにあたり  テンプレートは起動時間が短くなるよう作りましょう。 ・せっかくスケールアウトしても、起動して使えるようになるまでに 長時間かかってしまうと、「時すでに遅し」といった事態になりかねません。  まずはGUIでAutoScalingの簡単な『ひな型』を作りましょう。 ・ただし、いきなり過大な設定はしないように!(料金に響きます)  詳細なカスタマイズはAPIで。しっかり動作を検証したのちに商用 利用を開始しましょう。 ⇒ ぜひ一度、CloudnのAutoScalingを お試しください!
  50. 50. Copyright © NTT Communications Corporation. All rights reserved. 参考: その他のAPI活用事例
  51. 51. Copyright © NTT Communications Corporation. All rights reserved.  UpdateAutoScalingGroup GUIでは、最小台数および現状台数の下限が1台ですが、APIでは下限を0台に設 定することができます。 メインのサーバを1台確保しておき、予備のサーバとしてAutoScalingを利用する ような場合や、試験的にAutoScalingを利用する場合に有効です。 API活用事例 – UpdateAutoScalingGroup $ cnas update-auto-scaling-group --auto-scaling-group-name as-test --min-size 0 --desired-capacity 0 “as-test”というAutoScalingグループについて、 最小台数を0台、 現状台数を0台に設定します。 APIの実行例と意味
  52. 52. Copyright © NTT Communications Corporation. All rights reserved.  UpdateAutoScalingGroup 仮想サーバを起動後、ヘルスチェックが開始されるまでの時間を変更できま す。デフォルトでは、この時間は”600秒”と設定されています。 仮想サーバ起動直後は、プロセスが立ち上がっていない場合など、LBAのヘル スチェック(ポートの開放確認)に失敗する場合があります。起動後の処理に 時間がかかるようなテンプレートを利用している場合、この時間をある程度伸 ばすことで、起動直後のヘルスチェック失敗を防ぐことができます。 API活用事例 – UpdateAutoScalingGroup $ cnas update-auto-scaling-group --auto-scaling-group-name as-test --health-check-grace-period 1500 “as-test”というAutoScalingグループについて、 仮想サーバ起動直後のヘルスチェック猶予(無視)時間を1500秒に変更します。 APIの実行例と意味
  53. 53. Copyright © NTT Communications Corporation. All rights reserved.  PutNotificationConfiguration 仮想サーバの作成時など、AutoScalingに関連したイベントが発生した際にメー ル通知を行うよう、設定するAPIです。 API活用事例 – PutNotificationConfiguration $ cnas put-notification-configuration --auto-scaling-group-name as-test --notification-types autoscaling:Compute_INSTANCE_LAUNCH --topic-arn hoge_fuga@ntt.com “as-test”というAutoScalingグループで、 新たに仮想サーバが作成(スケールアウト)された場合、 hoge_fuga@ntt.comに対してメール通知を行います。 APIの実行例と意味

×