AWS Lambda Service Delivery Program(SDP)チェックリストの整理
毎年夏が終わると、もう年末も近いと強く感じてしまう。MMM代表の国本です。
2019年7月にMMMは AWSサービスデリバリーパートナー(Amazon CloudFrontパートナー)認定 を取得しましたが、早くも社内では次に『AWS Lambda サービスデリバリーパートナー認定』の取得を目指しています。
2018年頃から本番環境においてAWS Lambdaをコアにしたサーバーレスアーキテクチャを多数のプロジェクトで採用しており、事例・知見がある程度豊富となった為、近々Lambdaのサービスデリバリープログラム(SDP)申請の準備を進めておりますが。
前回取得したCloudFront同様に、LambdaもAWSが公式発表している AWS Lambda AWS Service Delivery Program Consulting Partner Validation Checklist に記載された取得要件を前提に、準備を進める必要があり、こちらのチェックリストの各項目についてざっと精査し、御紹介してみたいと思います。
※なお、本内容は 2019年5月時点で発表されたVersion2.1を前提 としております※
1.0 APN Program Requirements
1.1 Program Guidelines
サービスデリバリープログラムの申請前に AWS Service Delivery Program Guide の内容を事前チェックすること
1.2 Program Requirements
Select
Advanced
Premier
のいずれかのAPNパートナーとして認定されていること
2.0 AWS Customer Case Studies
2.1 AWS Customer Case Studies
- 本番サービスでの成功事例として、最低でも2つ以上の事例が必要(概念実証や検証などのケース・スタディは対象外)
- AWS社のAPNチームがパブリックに閲覧可能な事例として、Web、ブログ・サイトなどで公開が必要
APN Partner provides for each case study
各ケース・スタディにおいて、下記情報が必要。
- 顧客の名称
- AWSサービスアカウントID
- 課題の定義
- 課題に対する具体的な提案
- 課題に対して用いたAWSサービスのソリューション
- サードパーティーのアプリケーションやソリューションの有無
- プロジェクトの開始日及びリリース日
- プロジェクトの数値的な成果・結果
- プロジェクトを通しての学び
2.2 Architecture Diagrams
- ケーススタディには具現化したAWSアーキテクチャダイアグラムを含める必要がある
- AWSアーキテクチャダイアグラムは、各AWSサービスとの相互連携が把握できる形で記載する
- AWSベストプラクティス及びセキュリティに準拠していることを証明する
2.3 Partner Practice Landing Page
- 申請するサービスに該当する専用のソリューション紹介やランディングページを公開し、AWS社のAPNチームから閲覧できることが必要(一般的なコーポレートサイトはNG)
- 具体的な対象ページの作り方は How to Build a Microsite を確認する
3.0 APN Partner Self-Assessment
3.1 Program Validation Checklist Self-Assessment
セルフアセスメントチェックリストの全項目を対象に要件を満たしているか自己チェックを行い、問題なければチェックを入れ、指定の宛先・タイトルをセットしてチェック済みPDFファイルをAWS社のAPNチームへ送付する
AWS Lambda Validation Checklist
1.0 Case Study Requirements
Each Customer Case Study includes the following details regarding AWS Lambda
それぞれのケーススタディで下記詳細情報が必要。
- AWS Lambdaの実際の活用事例
- メディアやエンターテイメント
- Web、モバイルアプリケーションのバックエンド
- Eコマース
- デジタル広告
- ビデオ/画像処理
- Amazon Kinesisからのイベントのデータ処理など
- ケース・スタディで用いているAWS Lambdaファンクション数
- 月間予想されるイベント数
- Lambdaの採用にあたり克服した課題及びビジネス上でのLambdaの利用目的と、その優位性
Each Customer Case Study addresses at least one of the deployment patterns, and the workload patterns
各ケーススタディにおいて Deployment
かつ、Workload
でそれぞれ最低1つのパターンを満たしていること。
Deployment
- 最低5つ以上のLambdaファンクションを使用していること
- SAM(AWS Serverless Application Model)などの標準的なサーバーレスアーキテクチャフレームワークを用いていること
Workload
- それぞれのケーススタディでLambdaが最低3つ以上のAWSサービス群と連携していること
- Amazon S3, Amazon Kinesis, Amazon SNS, Amazon DynamoDB, Amazon API Gateway, AWS Step Functions)
- 仮想サーバー、仮想コンテナをビジネスコアとして利用していないこと
- それぞれのケーススタディでAWS Lambdaを利用したコアなデータ制御を実現していること
- Amazon EC2/ECSのプロビジョニングや自動化でLambdaを用いているケーススタディではないこと
- それぞれのケーススタディでAmazon ElasticSearchやAmazon RDSをメインとして利用していないこと
- それぞれのケーススタディがサーバーレスアーキテクチャのベストプラクティス及びAWS well-architectedに準拠していること
2.0 AWS Service Requirements
2.1 Solution Characteristics
提出するそれぞれのケーススタディでは、下記詳細を 全て含める
- パフォーマンスと負荷テスト結果
- リクエストの総数やリクエスト成功率、レイテンシーなどのKPI定義
- IAMポリシーにおける定義・設計
- Lambdaにおけるエラー処理及びハンドリング(処理エラー時の挙動など)
- マイクロサービス化されたLambdaにおける管理手法
- 継続的デリバリー(CD)や、継続的インテグレーション(CI)機構の実装方式
- Lambda実行環境におけるAmazon VPCの利用有無とその理由、選定根拠
- Lambdaにおける並列性とスケーラビリティの担保方式
- Lambdaファンクションにおける監視設計・実装方式
まとめ
AWSサービスデリバリープログラム(SDP)は、特定のAWSサービスについて、高い技術・知見、そして豊富な実績を持っているパートナーを、AWSが公式に認定、推奨する制度です。
各AWSサービス毎に設けられているチェックリストに記載されている内容は、比較的ハードルが高い要件もあるかとは思いますが、SDPを取得することで、対象のAWSサービスに対する自社の技術・実績を対外的にも大きくアピールできるため、是非皆様も取得を目指されてはいかがでしょうか。