はじめに
私はAWS SAAの資格を持っているものの、実務で触れない頻出サービスもけっこうあるので社内外問わずセミナーに参加する等、ハンズオンも含めインプット/アウトプットに勤しみ始めている者です。
つい先日、とあるセミナーの中で面白い引っかけ問題に遭遇したので、その話をしたいと思います。
題して、
「AWSのAuto Scalingは、アクセスが急増した時に秒単位で対処できるとは限らない」 です。
本題
まず、出題された構成は以下です。

※実はこの度初めてdraw.ioを触りました。
書き方が稚拙なのはご容赦ください、でも今後のために指摘はぜひ!
- リクエストはALBへ
- ALBからEC2インスタンスへ
- EC2インスタンスはAuto Scalingグループに管理される
- EC2インスタンスからRDS(マルチAZ)へアクセス
- 始業時と終業時間帯にアクセスの集中が明白
という要件、構成です。
この時、弾力性、可用性の観点で正しい説明を全て選ぶという問題です。
そこでですね、この選択肢を見て皆さんはどう思われるでしょうか。
Auto Scalingにおけるインスタンス最大数を多く設定することで、秒単位でのアクセス急増に対応できる
「秒単位でのアクセス急増に対応できる」という記載にとても悩まされました。
執筆時点で同じ箇所が見つからなかったのですがAWSの公式サイトのどこかに
秒単位でのアクセス急増を検知し対処する
といった内容の記載があったからです。
もしかしたら当時の翻訳が上手くなかったのかもしれません...
結論、需要に、ではなくスケジュールに基づくスケーリング設定が今回の場合はベストプラティクスなのですが、危うく引っかかりそうになったという話でした。
おわりに
ここまで読んでいただきありがとうございました。
セミナーの趣旨として、答えを出すだけでなく、答えの根拠を持つこととあったため、
ちょうど見つけた文献の「秒単位でのアクセス急増を検知し対処する」を見て危うく引っかかるところでした。
責任共有モデルにも関わると思いますが、実際にどう実装するかはユーザ次第、ということでしょうか。
「秒単位でのアクセス急増に”対応できる”」とは言ってませんし、そもそもインスタンス最大数では足りないですね、せっかく要件としていかにも、なものがあるのでスケジュールに基づくスケーリングじゃないので×だと、早く気づくべきでした。
ふと、資格試験でもこのような引っ掛けは少なくない記憶があります。
試験でも実務でも、正しく理解していないと痛い目を見そうなので、初学者向けのセミナーでしたが、気づきを得られる機会になりました。