1回答
- 新しい順
- 投票が多い順
- コメントが多い順
0
ALB と ACM を使用して数百テナント分のサブドメインと個別 TLS 証明書を自動発行・振り分けするベストプラクティスについて、以下のような方法が考えられます:
- スケーラブルな自動管理のベストプラクティス:
- AWS Certificate Manager (ACM) と AWS Lambda を組み合わせて使用します。
- テナント追加 API を作成し、API Gateway を通じて Lambda 関数をトリガーします。
- Lambda 関数で以下の処理を自動化します: a) ACM で新しいテナント用の証明書を発行 b) 発行した証明書を ALB にアタッチ c) ALB のリスナールールを追加して新しいテナントのトラフィックを適切に振り分け
- Route 53 の制限を回避するため、ワイルドカードサブドメイン(*.example.com)を使用し、ALB で振り分けを行います。
- 500テナント規模での比較:
- ALB/Multi-ALB 構成が有利です:
- スケーラビリティが高く、管理が容易
- SSL/TLS 終端を ALB で行うことでEC2インスタンスの負荷を軽減
- 自動スケーリングとヘルスチェックが組み込まれている
- Nginx を残す場合:
- カスタム設定の柔軟性は高いが、管理の複雑さが増す
- スケーリングが手動になる可能性が高い
- 証明書管理が複雑になる
- 最もシンプルな実装方法:
- ALB と ACM を使用し、ワイルドカード証明書(*.example.com)を1つだけ発行
- ALB のリスナールールでホストヘッダーベースの振り分けを設定
- テナント追加時は ALB のリスナールールのみを更新
- この方法では個別の証明書管理が不要になり、Route 53 の制限も回避できます
実装にあたっては、AWS Systems Manager Parameter Store や Secrets Manager を使用してテナント情報や証明書を安全に管理することをお勧めします。また、テナント追加プロセスをAWS Step Functions で実装することで、複雑なワークフローを管理しやすくなります。
セキュリティ面では、WAF を ALB と統合して、テナントごとのセキュリティルールを適用することも検討してください。
この方法により、テナント追加のプロセスを大幅に自動化し、スケーラブルな多テナント環境を構築することができます。
Sources
Configure the solution - Scalable Analytics Using Apache Druid on AWS
Install ACM for Nitro Enclaves - AWS
回答済み 9ヶ月前
