App Runnerを調査してみてのまとめ

da_takatsuki
·

概要

インフラやAWSについて経験がなくても、コンテナ化したWebアプリやAPIを簡単にAWSで動かせるサービス

見てみたありがたい記事

良いところ

  1. CodeBuild,AutoScaling,ALB,ECS,Fargate,VPCなど必要なものがApp Runnerのみで完結する(デプロイ・負荷分散・オートスケーリングが一つのサービスに)

  2. ECR or Githubリポジトリからコンテナイメージをいい感じにビルドとデプロイをしてくれる

  3. VPC周りの設定を入れたら、内部のみのアクセスにもできるしプライベートVPCにあるRDSなどへのアクセスもできる

  4. 機密情報はシークレットマネージャーから取得できるようになっている

  5. WAFと繋げることも可能

  6. 新規のデプロイのヘルスチェックをやってくれて、通らない場合は自動でロールバックしてくれる

  7. ECSへの移行が簡単(ECRからのデプロイは同じなので)

いまいちなところ

  1. カスタムドメインがコンテナで重複できない(B/G的な切り替えが難しい)

  2. WLBと比較してログがわかりづらい

  3. 複数のイメージを管理はできない

  4. オートスケーリングの条件が実行数のみ(CPU使用率でのスケーリングがない)

基本的にはカスタム性とお手軽さのトレードオフになる

主なユースケース

・PoCやプロトタイプ開発でのモノリスアプリやSPAのバックエンドAPI

・社内向けWebサイトやバックエンドAPI

・本番環境でも要件(SLOなど)を満たせるなら大丈夫かも

所感

実際にデプロイまでやってみたが30分もあれば簡単なサービスをデプロイまでできるのはやはり強い。。。

よく個人で気になるものを調べるときにものを作ってみることがあるがそう言った時に使いたいなって思った。

PoC開発する際はAmplifyを使うかApp Runnerを使うかは少し悩みどころかも

Amplifyは認証やDBとかS3とかも即接続できる分、さらに制約も多いからその辺もう少し自由にしたいとかならApp Runnerでやっておくのもアリに思えた。

@da_takatsuki
どこにでもいるエンジニア