(動画まとめ)AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk (DEV206)


AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk (DEV206)

なぜElastic Beanstalkを作ったのか

  • 複雑なコードのデプロイ、セットアップ、インフラの管理
  • サーバの設定、DB、ロードバランサー、firewall、ネットワークの管理に訓練と時間が必要
  • スケールの自動化をどうするか
  • チーム間の整合性をどう取るか

Elastic Beanstalkって?

  • デプロイ、スケール、Webアプリとサービスの管理を簡単にしてくれる奴

何がいいのか

  • 簡単に始められる
  • 開発者の生産性と速度
  • 不足を感じさせない(スケールできる的な意味?)
  • 完全なリソースの管理
  • 追加コストはない(リソースのコストだけ)

ユースケース

  • Webサイト
  • APIバックエンド
  • モバイルのバックエンド
  • 非同期のワーカー

どう始めるの?

  1. コードがあります
  2. リージョンを選びます
  3. Stack(container) typeを選びます(プラットフォーム)
  4. 1インスタンスか、分散+オートスケールするか
  5. RDS

アプリケーションはデプロイバージョンで管理され、各バージョンが各環境にデプロイできる(dev, tset, prodとか)

どうデプロイするか

  • コンソール
  • IDEのツールキット
  • SDKs,CLI
  • EBコマンド

EBコマンドについて

  • $eb initしたディレクトリ(プロジェクト)でコマンドを叩くとそのバージョンでデプロイできる
    • 修正、デプロイ、修正、デプロイ、みたいな

ebextensions

Option settings

CodeCommitとの連携

新しいバージョンのデプロイ

  • デフォルトだと全インスタンスが一気にバージョン上がる
    • ダウンタイムがある

ローリング

//途中 22:49 https://www.youtube.com/watch?v=Fv0yG_wDgoo

  • underneath
  • agility
  • outgrow
  • intimidate
  • terminology
  • opinionated
  • tailor
  • plumb
  • shrink-wrap
  • simultaneously
  • essentially