オートスケーリングとはawsが提供するサービスで「設定に応じて自動でインスタンスを増減を調整してくれるサービス」程度の認識でした
それ以外にも多くの便利な機能があり、図解を用いてオートスケーリングをわかりやすく解説できればと思います。
主にソリューション アーキテクト向けで勉強した内容をまとめています。
目次
オートスケーリング(Auto Scailing)とは
awsが提供する アプリケーションを監視しインスタンスへの負荷に応じて自動的に設定したインスタンス数に調節してくれる機能です
- Horizontal Scailing(スケールアウト)により 新しいインスタンスを生成する時に用いられるテンプレートインスタンスの数を増加し処理能力を向上させる
- オートスケーリングの発生条件はCloudwatchで設定できる
- 同じリージョン内で複数のAZ間に横断的にスケーリングが可能
- オートスケーリング自体にコストはかからず、プロビジョンされたインスタンスに対してコストがかかる
※スケールアウトとはインスタンス数を増加させること
起動設定(Launch Configuration)とは
オートスケーリングで使われる「インスタンス生成元となるデータ」のことです。
この設定でどのようなAMIでどのインスタンスタイプで等を設定します。
- 起動設定とはオートスケーリングで 新しいインスタンスを生成する時に用いられるテンプレートである
- 起動設定にはインスタンスファミリーやインスタンスタイプ、AMIやキーペア、セキュリティグループ等が定義される
オートスケーリングの主要な設定
オートスケーリングのその他主要な設定をまとめました。
ソリューションアーキテクトの試験でも頻出項目です。
- Instance Protection(インスタンス保護)機能により スケールインによって削除させたくないインスタンスを指定できる
- オートスケーリングにはSpotインスタンス、およびon-demandインスタンスを併用できる
- Cooldown periodとは前のオートスケーリングが実行中の場合に新しくインスタンスを生成/削除するのを防ぐ機能
※スケールインとはより少ないインスタンスでも処理可能と判断した場合に既存のインスタンスを終了させること
ヘルスチェックとは
オートスケーリングが発動するには条件があります
例えばインスタンスへの負荷が高い時や逆に余裕があり余分なインスタンスが無いか定期的にチェックするのです。
それがヘルスチェックの役割です
- EC2ステータスチェックか ELBのヘルスチェックによってインスタンスの健康チェックが行われる
- もしもインスタンスがUnhealthyと診断された場合、 オートスケーリングによる置き換えの対象となる
- 先ずは不具合のあるインスタンスを先に終了させ、その後に新しいインスタンスを生成する
- Connection Drainingが有効になっている場合、処理中のリクエストが完了するかタイムアウトになるまでインスタンスを終了させるのを待つ
- 不具合のあるインスタンスの原因調査のため、オートスケーリングを中断させることもできる
さいごに
ここまでお読みいただきありがとうございました。
僕のブログサイト「kzy.tech〜日本脱出のための教科書〜」がどのようなサービスで作られているかが気になる方は以下別記事にてご説明していますので、ご覧いただけますと小躍りして喜びます💃
また、海外移住の 英語とプログラミングを習得することを推奨しています。
これは私の経験則から言えることですが、上記二つのスキルがあれば海外移住は絶対に実現できます。
以下に僕が実際に使って効率よくプログラミング学習ができるおすすめサービスを載せます😌
速習!おすすめプログラミング勉強法【Udemy】
いくつかプログラミング学習サービスを利用しましたが、一番効率よく勉強できると感じたのはUdemyでした。
Udemyでは動画での説明や解説等もあり親切で、学習教材も豊富にあることから プログラミング初学者の方が短期間でエンジニアを目指したいのであれば、非常に良い教材だと思います。
ちなみに私は文系卒で社会人になってから独学でudemyを使ってプログラミングの勉強をして、実際にエンジニアとして採用されました
Udemyのコースは1つ1,000円ほどなので、ITの参考本を一冊(3,000円)を買うよりもUdemyのコースを購入する方が安い上により効率的にプログラミングを勉強できると思います。
世界最大級のオンライン学習サイトUdemy
また、別記事にてダナンでの生活やIT関連についても記事を書いていますのでクリックいただけると嬉しくて踊ります💃