-
-
Save myouju/960bfbef274b98a65577 to your computer and use it in GitHub Desktop.
esc勉強会の内容
- ポータブル
- プラットフォームをまたいでコンテナを移動
- 柔軟性
- クリーンで再現可能でモジュール化された環境
- 高速
- 開発のライフサイクルを高速化
- 効率的
- 計算機リソースのより高い利用率
- 利用率の監視が必要
- キャパシティの成長
- セキュリティや管理が重要
- 状態の管理
- 制約を把握
- 制約に合うリソースを見つける
- リソースをリクエスト
- リソースを確認
- Container Instance
- Docker Container
- ESC Agent
- いろいろな管理をしてる
- Amazon ESCとDocker Containerを連携
- Amazon ESC
- Agent Communication Service
- API
- スケジューラからAPIを叩くことができる
- 何も走らせなくてもいい
- 状態を完全に把握
- 制御と監視
- スケール
- EC2だとInstanceがどんどんスケールしてしまう
- Latencyが発生
- ESCだと問題ない
- 複数のスケジューラでバッチジョブを起動することができる
連携可能サービス
- ELB
- EBS
- VPC
- IAM
- CloudTrail
- 包括的なAPI
- ESCのエージェントはopen sourceなエージェントが使える
- カスタムスケジューラ
- EC2 Instance
- Docker daemon
- リージョン毎
- リソースプール
- COntainer Instancesをグループ化
- 関連するコンテナをグループ化
- Container Instances で実行
定義を指定して、インスタンスに載せる
- volume
- container
バッチジョブのような短い時間のコンテナ向け
- アプリケーションやサービス向け
- コンテナ間にわたって負荷分散
- サービスディスカバリ
- コンテナの自動復旧
- scale up/down
- 新しいバージョンのデプロイ
- バッチジョブ
- CI/CD
- 分散アプリケーション/マイクロサービス
- Platform as a Service
- ECSが多数の独立したリソーうのデプロイをモジュール化したやり方で管理
- PaaS提供者のエンドユーザとリソースの分離を手助け
EC2でやってたことをECSでやってみた案件
- アプリがdocker前提とした開発/対応してないと、docker対応が難しい:poop:
- ECSで少ないEC2で分離レベルを高く複数の同一なアプリケーションを構築できる
- 同一Instanceにprod, staging, test:smirk:
- リソース制限が可能で嬉しい:clap:
- 利用技術(EC2の場合)
- VPCなどのawsコンポーネント構築する仕組み
- amiを作成
- amiの中身はaisibleで構築
- packerでamiを作ってcloudformationで全体システム構築
- amiを作るplaybookと全体システムを構築するPlaybook
- CloudFormationのstack作成完了までまってくれる
- 冪等性がstackのupdateを使っていい感じ:thumbsup:
- 利用技術(ECS)
- ECSに対応済み:congratulations::tada:
- イメージを作成するために利用
- Dockerfileに記述
- DockerHubで実施
- CloudFormationで全体のシステムおw構築
- ECS構築後ECSが勝手にDockerHubからDockerイメージを取得
- immutable server
- stateless / disposable
- サーバを使い捨てていく
- 設定変更する歳は再作成する
- 環境差分・設定差分をなくせる
新しいhostを作ってLBで向き先を変えて、古いhostを捨てる
- 2 auto scale as ECS
- elbでグループを切替
- blueに新しいのをdeploy
- リソースの無駄、暖気が必要
- 1 auto scale 2 ECS task
- elbでtaskを切替
- ポートが衝突するのでずらす
- delte/createloadbalancerListeners
- 一瞬Listenがなくなる
- アトミックな操作ではない
- 各Instanceにnginxを配置
- ポートフォワーダー
- 新旧アトミックな切替ができる
- 全インスタンスに操作が必要
詳細を知りたいならkernelをggrks:facepunch:
- ホスト側からモニタリング
- cgroupのレポートを利用(/sys/fs/cgroup)
- blkio,cpu,deviesなどのサブシステム
- cpu使用率
- /sys/fs/cgroup/cpuacct/docker/{container id}/cpuacct.stat
- メモリ使用率
- /sys/fs/cgroup/memory/docker/{container id}/memory.stat
- Mackerel
- 営業内容:ghost:
http://jawsug-container.connpass.com/event/18943/presentation/
❗❗❗後でスライドが公開される❗❗❗
- 依存関係や管理がめちゃくちゃになる
- docker素晴らしい:two_hearts:
-
awsでdocker使うならESCでしょ:exclamation:
-
ECS構築
-
docker起動が早い
-
build,push,pullが遅い
-
CIはJenkins
-
コンテナのメトリクスは自分でやらないといけない
-
インスタンスのスケールは自動だけど、サービスのスケールは自前じゃないといけない
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment