タグ

ブックマーク / christina04.hatenablog.com (4)

  • ECSでコンテナのrolling update - Carpe Diem

    概要 ECS上のコンテナをダウンタイム0で更新(デプロイ)する方法をまとめます。 環境 ALB ECS container agent 1.13.0 Docker 1.11.2 Amazon ECS Container Agent Versions - Amazon EC2 Container Service ポイント minimumHealthyPercentとmaximumPercentを適切に設定する connection drainingを適切な長さにする この2つを意識していればOKです。 minimumHealthyPercentとmaximumPercentを適切に設定する desiredCount: 4、min: 0%、max: 100%の場合 この場合最低0つ(0%)まで縮小し、最高でも4つ(100%)までしか増えない状態で更新するということになります。 つまりダウンタイ

    ECSでコンテナのrolling update - Carpe Diem
  • remote_addrとかx-forwarded-forとかx-real-ipとか - Carpe Diem

    背景 ECSでNginxのコンテナをプロキシとして立てたところ、APIサーバのアクセスログのクライアントIPがNginxのコンテナIPになっていたのでその修正をしたのがきっかけです。 環境 Nginx 1.10.2 Docker1.12.1 構成 Client -> ELB -> Nginx -> API という構成とします。 ネットでよく見る情報 set_real_ip_from 172.31.0.0/16; real_ip_header X-Forwarded-For; を追加する、とか proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; を追加する、とかどれがどれだか分かりにくいので1つ1つ説明していきます。 用語説明 remote_

    remote_addrとかx-forwarded-forとかx-real-ipとか - Carpe Diem
  • ECSのオートスケール戦略 - Carpe Diem

    概要 ECSはコンテナのスケールアウトとインスタンスのスケールアウトのタイミングが重要です。 よく起きる問題としては インスタンスのスケールアウトが遅くてコンテナのスケールアウトも遅くなってしまう しきい値が不適切でインスタンスがスケールアウトせず、コンテナがスケールアウトしたくてもできない で、こういった事が起きないようにしないといけません。 スケールアウトの方針 対象 方針 インスタンス インスタンスの空きリソースがコンテナ1台分だけの状態がn分間続いたら コンテナ コンテナの使用率がn%を超えたら インスタンスはもう1台もコンテナを追加するリソースがない状況になったら早めにスケールアウトします。 コンテナは一般的なやり方で使用率が高くなったらスケールアウトすればOKです。 スケールインの方針 対象 方針 インスタンス コンテナがn分間ずっと1台を下回ったら コンテナ コンテナの使用率

  • TerraformでECS環境の構築【オートスケール編】 - Carpe Diem

    概要 TerraformでECS環境の構築 - Carpe Diemでは書いてなかったオートスケールについてです。 terraform 0.7からServiceでのオートスケールにも対応したので、それを使って構築します。 環境 Ubuntu 14.04 Terraform 0.7.3 実装 完成形はこちら github.com Autoscale用のIAMの追加 Amazon ECS サービスの Auto Scaling IAM Role - Amazon EC2 Container Serviceを参考に用意します。 まずはJSONでPolicyの用意 { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "application-autoscaling.amazo

    TerraformでECS環境の構築【オートスケール編】 - Carpe Diem
  • 1