Auto Scalingグループが使えるサービスと使えないサービスがあるのはなぜ? 裏側はどうなっている? |
|
|
面白い視点ですね。 実は Auto Scaling Group(ASG)は、AWSのあらゆるサービスをスケーリングする仕組みではありません。 ASGは本質的に、
だからです。 ASGの正体ASGの裏側では、 ということをやっています。 つまり管理対象は です。 なぜEC2はASGが使えるのかEC2は
という性質があります。 例えばWebサーバーなら を へ増やせます。 ASGはこの管理が得意です。 なぜRDSはASGを使わないのかRDSに対して は簡単ではありません。 なぜなら、 が必要だからです。 EC2のように では済みません。 そのためRDSは独自のスケーリング機能を持っています。 例えば
などです。 DynamoDBもASGではないDynamoDBはサーバーレスです。 利用者からは が見えません。 なので というASGの概念が存在しません。 代わりに や で自動スケールします。 ECS/EKSは?少しややこしいです。 ECS on EC2なのでASGが使えます。 ECS Fargateサーバーが見えません。 そのため を増減します。 ASGではありません。 EKSEKS自体はKubernetesです。 裏では などがNodeを増減させます。 NodeがEC2ならASGを使う場合があります。 AWS Auto Scalingという別サービスここが混乱ポイントです。 Auto Scaling Group対象 中心。 AWS Auto Scaling対象 など。 こちらは各サービスのスケーリング機能を統一的に設定するための仕組みです。 内部的にはサービスごとのAPIを呼んでいます。 裏側を一言でいうとASGができるのは、
です。 逆に、
は単純な「台数増減」ではないため、それぞれ専用のスケーリング機構を持っています。 だからAWSでは、 「スケーリング」という目的は共通でも、裏側で増減させている対象(EC2、Pod、DBキャパシティ、RCU/WCUなど)が違うため、ASGが使えるサービスと使えないサービスが存在するのです。 |
|
|

この記事へのコメント