20160603_DockerとAmazon_ECSでDevOpsを進化させる_public

Similar documents
Presentation Title Here

PowerPoint Presentation

AWS のコンテナ管理入門(Amazon EC2 Conatainer Service)

PowerPoint Presentation

Presentation Title Here

Startup_on_AWS_usecases_StartupDay


通 知 カード と 個 人 番 号 カード の 違 い 2 通 知 カード ( 紙 )/H27.10 個 人 番 号 カード (ICカード)/H28.1 様 式 (おもて) (うら) 作 成 交 付 主 な 記 載 事 項 全 国 ( 外 国 人 含 む)に 郵 送 で 配 布 希 望 者 に 交

はしがき・目次・事例目次・凡例.indd

社 会 福 祉 協 議 会 様 の 運 営 する 以 下 の 相 談 業 務 をサポートします 1. 日 常 生 活 自 立 支 援 事 業 2. 成 年 後 見 制 度 事 業 3. 高 齢 者 ふれあい 相 談 センター 事 業 ( 高 齢 者 の 何 でも 相 談 支 援 ) 4. 資 金 貸

I

ii

PowerPoint Presentation

II

Sea-NACCS 利用者研修 【通関編】

●電力自由化推進法案

Oracle Code Tokyo 2017 ダウンロード資料

橡6.プログラム.doc

パソコン機能ガイド

パソコン機能ガイド

WEB版「新・相続対策マスター」(ご利用の手引き)

MultiPASS B-20 MultiPASS Suite 3.10使用説明書

AWS Deck Template

よくある問題を解決する~ 5 分でそのままつかえるソリューション by AWS ソリューションズビルダチーム

Javaと.NET

IAF ID x:2010 International Accreditation Forum, Inc. Page 2 of 8 国 際 認 定 機 関 フォーラム(IAF)は 適 合 性 評 価 サービスを 提 供 する 機 関 の 認 定 のためのプログラ ムを 運 営 している この 認 定

2004年度日本経団連規制改革要望

1 書 誌 作 成 機 能 (NACSIS-CAT)の 軽 量 化 合 理 化 電 子 情 報 資 源 への 適 切 な 対 応 のための 資 源 ( 人 的 資 源,システム 資 源, 経 費 を 含 む) の 確 保 のために, 書 誌 作 成 と 書 誌 管 理 作 業 の 軽 量 化 を 図


スライド 1

工 事 名 能 代 南 中 学 校 体 育 館 非 構 造 部 材 耐 震 改 修 工 事 ( 建 築 主 体 工 事 ) 入 札 スケジュール 手 続 等 期 間 期 日 期 限 等 手 続 きの 方 法 等 1 設 計 図 書 等 の 閲 覧 貸 出 平 成 28 年 5 月 24 日 ( 火


エクセルカバー入稿用.indd

工 事 名 沢 口 浄 配 水 場 建 設 工 事 ( 浄 水 管 理 棟 ) 入 札 スケジュール 手 続 等 期 間 期 日 期 限 等 手 続 きの 方 法 等 平 成 24 年 5 月 8 日 ( 火 ) 正 午 から 1 設 計 図 書 等 の 閲 覧 貸 出 基 本 事 項 2のとおり

・モニター広告運営事業仕様書

SC-85X2取説


<4D F736F F F696E74202D C835B B E B8CDD8AB B83685D>

疑わしい取引の参考事例

01_.g.r..

AWS Deck Template

1 変更の許可等(都市計画法第35条の2)

目 次 第 1 章 総 則 第 1 節 計 画 の 目 的... 1 第 1 計 画 の 目 的 1 第 2 計 画 の 策 定 1 第 3 計 画 の 構 成 2 第 4 用 語 の 意 義 2 第 2 節 計 画 の 前 提 条 件... 3 第 1 自 然 条 件 3 第 2 社 会 条 件

<4D F736F F D2090AD957B94468FD88AEE94D B292428C7689E68F912E646F63>

™…


Leveraging Cloud Computing to launch Python apps

[当日発表資料]AWS_Summit_CYBIRD_fix.key

Agenda! Amazon Web Services (AWS)の 概 要! 大 規 模 分 散 システム AWS の 使 い 方 Asynchronous IO Retries with Exponential Backoff Idempotency Eventual Consistency!

困ったときのQ&A

活用ガイド (ハードウェア編)


<4D F736F F D2091E F18CB48D C481698E7B90DD8F9590AC89DB816A2E646F63>

の 購 入 費 又 は 賃 借 料 (2) 専 用 ポール 等 機 器 の 設 置 工 事 費 (3) ケーブル 設 置 工 事 費 (4) 防 犯 カメラの 設 置 を 示 す 看 板 等 の 設 置 費 (5) その 他 設 置 に 必 要 な 経 費 ( 補 助 金 の 額 ) 第 6 条 補

text

工 事 名 渟 城 西 小 学 校 体 育 館 非 構 造 部 材 耐 震 改 修 工 事 ( 建 築 主 体 工 事 ) 入 札 スケジュール 手 続 等 期 間 期 日 期 限 等 手 続 きの 方 法 等 1 設 計 図 書 等 の 閲 覧 貸 出 平 成 28 年 2 月 23 日 ( 火

我孫子市小規模水道条例

PowerPoint プレゼンテーション

神の錬金術プレビュー版

1 農 地 中 間 管 理 機 構 のねらい (1)24 年 度 から 開 始 した 各 市 町 村 における 人 農 地 プラン ( 地 域 の 農 業 者 の 徹 底 した 話 合 いにより 人 農 地 問 題 の 解 決 方 向 や 地 域 農 業 の 将 来 のあり 方 を 明 確 にしてい

(3) 善 通 寺 市 の 状 況 善 通 寺 市 においては 固 定 資 産 税 の 納 期 前 前 納 に 対 する 報 奨 金 について 善 通 寺 市 税 条 例 の 規 定 ( 交 付 率 :0.1% 限 度 額 :2 万 円 )に 基 づき 交 付 を 行 っています 参 考 善 通 寺

Microsoft PowerPoint 資料6 技術基準.ppt [互換モード]

DocuPrint CG 835 II 取扱説明書(サーバー編)


R76 Application Control & URL Filtering Guide

III


これわかWord2010_第1部_ indd

パワポカバー入稿用.indd

これでわかるAccess2010



<4D F736F F F696E74202D2082C882E982D982C DD8ED88EE688F882CC82B582AD82DD C668DDA9770>

質 問 票 ( 様 式 3) 質 問 番 号 62-1 質 問 内 容 鑑 定 評 価 依 頼 先 は 千 葉 県 などは 入 札 制 度 にしているが 神 奈 川 県 は 入 札 なのか?または 随 契 なのか?その 理 由 は? 地 価 調 査 業 務 は 単 にそれぞれの 地 点 の 鑑 定



(Microsoft PowerPoint - mynumber.ppt [\214\335\212\267\203\202\201[\203h])

第2回 制度設計専門会合 事務局提出資料

小 売 電 気 の 登 録 数 の 推 移 昨 年 8 月 の 前 登 録 申 請 の 受 付 開 始 以 降 小 売 電 気 の 登 録 申 請 は 着 実 に 増 加 しており これまでに310 件 を 登 録 (6 月 30 日 時 点 ) 本 年 4 月 の 全 面 自 由 化 以 降 申

i

私立大学等研究設備整備費等補助金(私立大学等

学校教育法等の一部を改正する法律の施行に伴う文部科学省関係省令の整備に関する省令等について(通知)

スピーカースライド作成前の確認シート例

CTX-6114AI Citrix Access Suite 4

法 改 正 の 内 容 Ⅰ. 期 限 後 特 例 申 告 に 係 る 無 申 告 加 算 税 についての 改 正 改 正 のポイント:これまでは 所 定 の 条 件 を 満 たしていて 特 例 申 告 書 の 提 出 期 限 から2 週 間 以 内 に 期 限 後 特 例 申 告 書 が 提 出 さ

Sol-007 内部統制一元管理 _ppt [互換モード]

福 山 市 では, 福 山 市 民 の 安 全 に 関 する 条 例 ( 平 成 10 年 条 例 第 12 号 )に 基 づき, 安 全 で 住 みよい 地 域 社 会 の 形 成 を 推 進 しています また, 各 地 域 では, 防 犯 を 始 め 様 々な 安 心 安 全 活 動 に 熱 心

untitled

i

2

スライド 1

CSV_Backup_Guide

<4D F736F F D D3188C091538AC7979D8B4B92F F292B98CF092CA81698A94816A2E646F63>

平成18年版 男女共同参画白書

国民年金

Microsoft Word - 佐野市生活排水処理構想(案).doc

困ったときのQ&A

預 金 を 確 保 しつつ 資 金 調 達 手 段 も 確 保 する 収 益 性 を 示 す 指 標 として 営 業 利 益 率 を 採 用 し 営 業 利 益 率 の 目 安 となる 数 値 を 公 表 する 株 主 の 皆 様 への 還 元 については 持 続 的 な 成 長 による 配 当 可

1

平 成 26 年 度 事 業 計 画 書 ( 平 成 26 年 4 月 1 日 から 平 成 27 年 3 月 31 日 まで) 公 益 目 的 事 業 事 業 の 趣 旨 共 用 品 共 用 サービス( 高 齢 者 障 害 のある 人 々 等 日 常 生 活 に 不 便 さのある 者 に 対 して

Transcription:

DockerとAmazon ECSで DevOpsを 進 化 させる Ryosuke Iwanaga Solutions Architect, Amazon Web Services Japan June 2016 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

今 の 持 ち 帰 り DevOpsとDocker Dev and Ops Amazon ECS

DevOpsとは? ソフトウェア 開 発 のライフサイクル デリバリーパイプライン build test release 開 発 者 plan monitor 顧 客 フィードバックループ DevOps = このライフサイクル 速 化 の 効 率

モノリシックな 開 発 ライフサイクル build test release 開 発 者 アプリ デリバリーパイプライン

Amazonでの 開 発 の 変 遷 : 2001-2009 2001 2009 モノリシックなアプリ + チーム マイクロサービス + ツーピッツァチーム

モノリシックアーキテクチャ Order UI User UI Shipping UI Order Service User Service Shipping Service Data Access

モノリシックアーキテクチャ - スケール

マイクロサービスアーキテクチャ Order UI User UI Shipping UI Order Service User Service Shipping Service

マイクロサービスアーキテクチャ - スケール Order UI User UI UI Order UI User UI Shipping UI Order UI UI Order Service Order Service Order Service Service Service Service Service Service User Service Shipping Service Shipping Service

マイクロサービスな 開 発 ライフサイクル build test release build test release build test release build test release build test release 開 発 者 サービス build test release デリバリーパイプライン

サービス マイクロサービスだけの 話 ではない 部 新 規 事 業 社 内 向 け/ 社 外 向 け 等 サービス は 多 くなってしまいがち スタートアップからエンタープライズまで 同 じ サービスが 多 くなれば それだけパイプライン/devops も 多 くなる

リリースプロセスの 4つの 主 要 なフェーズ Source Build Test Production.javaファイル 等 のソースコード をチェックイン 新 しいコードを 相 互 レビュー コンパイル 単 体 テスト スタイルチェック メトリクス コンテナイメージ 作 成 他 のシステムと の 統 合 テスト 負 荷 テスト UIテスト 侵 テスト 本 番 環 境 へのデ プロイ

DevOpsの 実 態 Source Build Test Production Application Artifact コードだけ 書 いて いればいい?

DevOpsの 実 態 開 発 環 境 の 構 成 の メンテナンスが 必 要 Source 開 発 テスト 本 番 で 環 境 に 差 異 がある Build Test Production Provision Config Application Artifact なるほど 全 てが 必 要 なんですね テストの 需 要 がバラバラ で 管 理 が 変 オートスケールや ノード 障 害 対 応

複 数 のDevOpsでの 実 態

DevOpsの 難 しさ 扱 うべきことが 多 すぎる ユニコーンな /チーム 多 くの 異 なるパイプラインが 存 在 サービス 語 フレームワーク バージョン 等

コンテナはサービスにとって 然 なもの モデルがシンプル どんなアプリでも どんな 語 でも イメージがバージョン 同 じ 成 果 物 をテストしてデプロイする ステートレスなサーバの が 変 更 リスクが 下 がる

パッケージ FROM ubuntu:14.04 MAINTAINER John Doe <jdoe@example.com> RUN apt-get update && apt-get install -y curl wget default-jre git RUN adduser --home /home/sinatra --disabled-password --gecos '' sinatra RUN adduser sinatra sudo RUN echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers USER sinatra RUN curl -ssl https://get.rvm.io bash -s stable RUN /bin/bash -l -c "source /home/sinatra/.rvm/scripts/rvm" RUN /bin/bash -l -c "rvm install 2.1.2" RUN /bin/bash -l -c "gem install sinatra" RUN /bin/bash -l -c "gem install thin"

出 荷 docker push docker pull

実 docker run

Dockerを 取 り れたDevOps Source Build Test Production Provision Config Application Image コードだけ 書 いて いればいい!

Dockerを 取 り れたDevOps Source Build Test Production

Dockerを 取 り れたDevOps Dockerを 使 うことで パイプラインが 同 になる どんな 語 でも どんなアプリケーションでも 管 理 すべきものが 減 って 開 発 に 注 できる アプリケーションとDockerfileに 集 中 でも もっとやれることがないか?

Dev and Ops Source Build Test Production Dev Ops

Dev and Ops Dev アプリと 実 環 境 の 開 発 に 専 念 する 不 可 変 / 廃 棄 可 能 なコンテナ 継 続 的 なデリバリーパイプライン Ops リソースとサービスの 境 界 を 管 理 する クラスタ 管 理 スケジューラ ログ 監 視 インフラを 如 何 なるアプリ ケーションからも 分 離 させる

Dev and Ops DevOpsの アジリティ CI/CD 複 数 パイプライン 伝 統 的 な 組 織 構 造 の 効 率 Devのスペシャリスト / Opsのスペシャリスト リソースの 利 率 をもっと める 重 要 な 点 : インフラは 如 何 なるアプリにも 依 存 しない だから コンテナ

コンテナに 適 応 したDevには

The Twelve-Factor App

Twelve-Factorの 主 義 I. コードベース バージョン 管 理 される1つのコードベースと 複 数 デプロイ II. 依 存 関 係 依 存 関 係 を 明 的 に 宣 し 分 離 する III. 設 定 設 定 を 環 境 変 数 に 格 納 する IV.バックエンドサービス バックエンドサービスをアタッチされたリソースとして 扱 う V. ビルド リリース 実 ビルド リリース 実 の3つのステージを 厳 密 に 分 離 する VI.プロセス アプリを1つ は 複 数 のステートレスなプロセスとして 実 VII.ポートバインディング ポートバインディングを 通 してサービスを 公 開 する VIII. 並 性 プロセスモデルによってスケールアウトする IX. 廃 棄 容 易 性 速 な 起 動 とグレースフル 停 で 堅 牢 性 を 最 化 する X. 開 発 / 本 番 致 開 発 ステージング 本 番 環 境 をできるだけ 致 させた 状 態 を 保 つ XI. ログ ログをイベントストリームとして 扱 う XII. 管 理 プロセス 管 理 タスクを1 回 限 りのプロセスとして 実 する http://12factor.net/

コンテナに 適 応 したOpsには

Amazon EC2 Container Service

コンテナ 管 理 を あらゆるスケールで 何 も 準 備 する 必 要 がない 完 全 な 状 態 制 御 と 監 視 スケール

柔 軟 なコンテナの 配 置 ロングランニングなアプリ バッチジョブ 複 数 のスケジューラ

AWSの 基 盤 との 連 携 Elastic Load Balancing Amazon Elastic Block Store Amazon Virtual Private Cloud Amazon CloudWatch AWS Identity and Access Management AWS CloudTrail

コンテナ 管 理

コンテナ 管 理 とは? 利 可 能 なリソースを 管 理 リソースの 変 化 を 追 跡 リソースへのリクエストを 受 け 付 ける 正 確 性 と 貫 性 を 保 証 する

リソース CPU メモリ ポート ディスク 容 量 ディスクIOPS ネットワーク 帯 域

Task Definitions { }, "name": "simple-demo", "image": "my-demo", "cpu": 10, "memory": 500, "portmappings": [ { "containerport": 80, "hostport": 80 } ], "entrypoint": [ "/usr/sbin/apache2", "-D", "FOREGROUND" ], "essential": true

Tasks Shared Data Volume Containers Volume Definitions Container Definitions launch Container Instance

スケジューラ

スケジューラとは? 必 要 な 状 態 を 決 める 現 在 の 状 態 と 較 する アクションを 実 する

Cluster, Scheduler, Task Scheduler Task Agent Task Definition Cluster Manager

Container Instance ECS Docker Task Task Agent Container Container ECS Agent https://github.com/aws/amazon-ecs-agent

Internet User / Scheduler ELB ELB AZ 1 AZ 2 Container Instance Container Instance Container Instance Docker Docker Docker Task Container Task Container Task Container Task Container Task Container Task Container ECS Agent ECS Agent ECS Agent Amazon ECS Agent Communication Service Cluster Management Engine Key/Value Store API

楽 観 的 な 状 態 共 有 モデル

Amazon ECS: スケジューラ 各 スケジューラは 定 期 的 に 現 在 のクラスタの 状 態 を 取 得 する Scheduler A Scheduler B Copy of cluster state Cluster

Amazon ECS: スケジューラ 各 スケジューラはクラスタ 上 にタスクを 配 置 する 各 スケジューラはクラスタの 現 在 の 状 態 を 更 新 する Run a task Run a task

Amazon ECS: スケジューラ もしリソースが 既 に 確 保 されていたら リクエストは 拒 絶 される Run a task on the same resource => Transactional

Amazon ECS: スケジューラ 楽 観 的 な 状 態 共 有 のスケジュール 機 構 全 てのスケジューラが 現 在 のクラスタの 状 態 をいつでも られる

Amazon ECS Serviceスケジューラ

Serviceとは? ロングランニングなアプリケーションをモデル 化 希 望 する 状 態 を 維 持 してくれる Serviceの 更 新 で デプロイ Elastic Load Balancingの 後 ろで 動 かすことも 可 能

コンテナのスケジュール: ロングランニングアプリ 最 限 の 空 間 を 使 ってデプロイ: Old version New version minimumhealthypercent = 50%, maximumpercent = 100%

コンテナのスケジュール: ロングランニングアプリ サービスのキャパシティを 落 とさずに 速 にデプロイ: minimumhealthypercent = 100%, maximumpercent = 200% Old version New version

ケーススタディ: Segment

Segment 顧 客 のデータを1つのハブに 収 集 し 後 から 分 析 マーケティング その 他 の 的 で 利 する "Amazon ECSに 切 替 えたこ とで プロビジョンや 可 性 を 配 する 必 要 なく 稼 働 中 のサービスをとてもシ ンプルにできました " Calvin French-Owen Cofounder and Chief Technology Officer 以 前 インスタンスが 基 本 作 業 でのセットアップ 設 定 間 違 い / 同 期 できない 以 後 管 理 が 容 易 に / ステートレス CI/CDパイプラインが 動 化 開 発 に 専 念 できるようになった https://aws.amazon.com/solutions/case-studies/segment/

最 適 化 されたインフラとしての Amazon ECS

コンテナのログをawslogs 経 由 で 収 集 Amazon ECS 保 存 Amazon CloudWatch Logs Amazon S3 ストリーム Amazon CloudWatch Logs Amazon Kinesis 処 理 Amazon CloudWatch Logs AWS Lambda 検 索 Amazon CloudWatch Logs Amazon Elasticsearch Service

コンテナのログをawslogs 経 由 で 収 集 サポートしているDockerのLogging Driver json-file, syslog, journald, gelf, fluentd, awslogs, AwslogsはAmazon CloudWatch Logsにログを 送 信 Log groupはサービスを 指 定 Log streamは 各 コンテナ Amazon CloudWatch Logs => 他 のサービスへ 検 索, フィルタ, Amazon S3へ 出, Amazon Kinesis, AWS Lambda, Amazon Elasticsearch Serviceへ 送 る

Amazon ES 上 のKibanaでログを 検 索

タスクのAuto Scaling

タスクのAuto Scaling サービススケジューラがAuto Scalingと 連 携 CloudWatch Alarm => Policy => 希 望 数 を 変 更 役 に つCloudWatchのメトリクス: サービス 毎 のCPU/Memory 利 率 各 タスクが 確 保 したリソースをどれくらい 消 費 しているか? クラスタ 毎 のCPU/Memory 利 率 クラスタ 全 体 のリソースの 内 実 際 どれくらいが 使 われているか? クラスタ 毎 のCPU/Memory 確 保 クラスタ 全 体 のリソースがどの 程 度 確 保 されているか?

Amazon CloudWatch Dashboardsで 監 視

Spotフリートをコンテナインスタンスとして 使 う Amazon ECS + Amazon EC2 Spot Fleet c3.4xlarge c3.xlarge r3.8xlarge c3.8xlarge r3.2xlarge r3.2xlarge r3.8xlarge c3.xlarge c3.4xlarge c3.8xlarge c3.4xlarge c3.8xlarge r3.2xlarge r3.8xlarge c3.xlarge

まとめ

まとめ コンテナはDevOpsにとって 然 なもの Dev and Ops; 組 織 にフィットしますか? Amazon ECSは とても 簡 単 で 柔 軟 DevOpsにも Dev and Opsにも

ありがとうございました