Quantcast
Channel: プログラミング
Viewing all articles
Browse latest Browse all 7910

Terraform で Service Quotas のクォータリクエストを管理する - kakakakakku blog

$
0
0

特にプロダクション環境でウェブサービスを稼働させるときにトラフィックの多さから AWS サービスのクォータ(サービス制限)に該当する可能性がある🛑 AWS Well-Architected Framework (Reliability Pillar) でも REL01-BP01 ~ REL01-BP06にクォータ関連のベストプラクティスが紹介されている.クォータを理解しつつ,Service Quotas を使ってクォータを管理・モニタリングすることが重要になる👌

docs.aws.amazon.com

クォータリクエストを自動化する

Service Quotas は API / AWS CLI / AWS SDK でサポートされている❗️よって,AWS SDK For Go に依存している Terraform AWS Provider の aws_servicequotas_service_quotaリソースを使えば Service Quotas のクォータ増加リクエストを管理できる(命名規則とは言え aws_servicequotas_service_quotaはスゴイなぁーw ).

👾 quotas.tf

今回はサンプルとして AWS Lambda 関数のクォータ「同時実行数」をデフォルトの 1000から 1500に変更するクォータリクエストを追加する.

# AWS Lambda: Concurrent executionsresource"aws_servicequotas_service_quota""lambda_concurrent_executions"{service_code = "lambda"quota_code   = "L-B99A9384"value        = 1500}

Before

After

実行するとクォータリクエストが「保留中」「リクエスト済み」となる.同時にサポートケースも作られて Amazon Web Services: You have opened a new Support case: 000000000000000というタイトルのメールが届く✉️

AWS CloudFormation 未サポート

少し意外ではあるけど,AWS CloudFormation (と AWS CDK) ではまだ Service Quotas がサポートされてなく,クォータを管理しにくいという課題がある.CloudFormation Public Coverage Roadmap には issue が起票されているけど,特にサポートされる流れではなさそうでツライ😇

github.com

Quota Monitor for AWS

関連するソリューションとして「Quota Monitor for AWS」もある.あくまで個人的にはソリューションは導入したくなく,マネージドサービスとして提供してくれれば使うのに〜という感じではあるけど,運用面まで考慮してニーズに合えば導入してみると良いのかなと思う👌

aws.amazon.com


Viewing all articles
Browse latest Browse all 7910

Trending Articles