Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
Dockerエンタープライズ利用について
クリエーションライン(株)
木内 満歳
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
Agenda
1. Docker活用ソリューションの概要
2. プロダクト紹介
– [Dockerデプロイ環境製品]
Docker Swarm, Rancher, Apache Mesos/Mesosphere DCOS
– [Docker環境支援製品]
Docker Trusted Registry/Kitematic
Hashicorp Packer/Serf/Consul
3. デモ
2
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
Docker活用ソリューション概要
3
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
Docker活用ソリューション概要
4
Docker
Subscription
&
Docker
Swarm
利用者 ホスト数
数十人~ 数十台~
数人~十数人 数台~十数台
一人~数人 2~5台
デプロイ規模に応じた環境の選択
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
Docker活用ソリューション概要
5
利用環境に応じた追加製品選択
● 企業内独自リポジトリ
Docker Trusted Registry
● GUI管理
Docker Kitematic
● コンテナイメージ開発
Hashicorp Packer
● サービスディスカバリー
Hashicorp Serf/Consul
Docker
Subscription
&
Docker
Swarm
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
Docker活用ソリューション概要
6
サービスに応じたデプロイ環境の選択
● 企業内独自リポジトリ
Docker Trusted Registry
● GUI管理
Docker Kitematic
● コンテナイメージ開発
Hashicorp Packer
● サービスディスカバリー
Hashicorp Serf/Consul
オンプレミス
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
各プロダクトの比較
認証 ロードバランス オーバーレイ
ネットワーク
プライベート
リポジトリ対応
Docker Swarm
TLS
手動/自動(アルゴ
リズム3種類)
なし* ◯
Rancher
GitHub
LDAP(AD)
なし あり(IPSec) ◯
Mesos
SASL
自動(リソースの
空きを監視)
なし ◯
* 今後Dockerの標準機能として実装予定
7
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
プロダクト紹介
~Dockerデプロイ環境製品~
-Docker Swarm-
-Rancher-
-Apache Mesos/Mesosphere DCOS-
8
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
Docker Swarm
9
• Docker社提供のクラスタ環境ツール
• 特長
– Docker社提供ツールとの連携
– デプロイストラテジ(スケジューラ)を選択可能
(分散/集中/既存コンテナ近傍選択)
– 基本的なサービスディスカバリ
(さらに各種etcd/Consul等と連携可能)
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
Rancher
10
●CloudStack初期開発メンバーが独立して起業
●Dockerコンテナ管理プラットフォーム
o Docker版vCenter Server+vSphere client
[機能]
●Web管理UI
o コンテナ及び実行ホストのデプロイ
o コンテナおよび実行ホストのリソース監視、
ロギング
o GitHubアカウントと連携したアクセス制限機
能(将来的にはLDAPおよびActiveDirectoryに対
応予定)
o Docker HubおよびプライベートDockerリポジ
トリとの連携
●ユーザごとのリソース分割
●他の自動化ツールと連携できるREST API
●複数のクラウドプラットフォームをまたいで疎通す
るオーバーレイ・ネットワーク
●ネットワークロードバランサー
●ヘルスチェック
●ボリューム・スナップショット機能(バックアップ)
Docker 仮想化 KVM/Xen/VMware
SDN(IPSec) ネットワーク タグVLAN
SDS ストレージ NFS
Docker Hub リポジトリ 独自
Dockerによる
抽象化
パブリック
クラウド連携
API連携
より抽象度の増したIaaS基盤管理ソフトウェアという
ことができる
11
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
Apache Mesos/Mesosphere DCOS
12
●世代型クラスタリソースマネージャ
o カリフォルニア大学バークレー校
AMPLabにて開発(機械学習における世界トップの研究
所)
o オープンソースで公開。米Apache財団の全面バック
アップ(Top Level Project)
o 開発メンバーはMesosphere社を設立。商用製品
DCOSをリリース
●比類ないスケーラビリティ
o 10,000ノードまでの拡張性を前提に設計
o ジョブの自動再起動、繰り返し実行
日時指定実行、実行回数制限をサポート
o ジョブの監視、異常終了時の自動再実行
o ジョブに必要なマシンリソースと有休資源内のリソー
スマッチング
●Dockerコンテナのネイティブサポート
o ジョブに応じて動的に実行環境を切り替え可能
●導入事例
o Twitter(ショートメッセージング)
o Airbnb(宿泊施設マッチング)
o Apple(Siriバックエンド)
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
Mesos
Slave
Zookeeper
Mesosフレームワーク/アプリケーションスタック
HW/VM HW/VM HW/VM HW/VM
OS OS OS OS
Mesos Master
Mesos DNS
Marathon Chronos
App
App
App
App
App
App
App
App
リソース管理
サービスディスカバリー
ジョブスケジューラー
想定されるアプリケーション
Ruby on Rails / STORM /
Hadoop / Docker / Spark
Play
13
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
拡張可能なフレームワーク
14
Zookeeper
Mesos Master
Mesos DNS
Marathon Chronos
自作
フレームワーク
自作
フレームワーク
サービスの種類を拡張可能
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
Mesos is cluster of clusters
15
Mesos Master
Mesos Slaves
Marathon Chronos Hadoop Spark Torque
Mesos Slave
Mesos Slave Mesos Slave
Mesos Slave
Mesos Slave
Mesos Slave
Ma Ha
ChSp
Tr Sp
TrCh
HaHa
Ma Sp
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
ソリューション:
Docker(コンテナ)による実行環境のフレキシブルな混在
16
Mesos Master
Mesos Slaves
Docker Repository
Marathon Chronos Hadoop Spark Torque
ジョブ(クラスタ)の稼働タイミングを管理
CentOS
Ha Sp
Tr Cos
Cos
Cos
Sp
Tr
Ha
Sp
Tr
Ha
ジョブの投入(いつ) イメージのオンデマンド展開(なにを)
ジョブ(クラスタ)の実行環境を管理
Mesos Slaves+Docker Mesos Slaves+Docker Mesos Slaves+Docker
Mesos Slaves+Docker Mesos Slaves+DockerMesos Slaves+Docker
実行基盤(HW+OS+Mesos Slave+Docker) “だけ” 管理
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
コンテナ化の利点
17
Mesos Master
Mesos Slaves
Docker Repository
Marathon Chronos Hadoop Spark Torque CentOS
Ha Sp
Tr Cos
Cos
Cos
Sp
Tr
Ha
Sp
Tr
Ha
Mesos Slaves+Docker Mesos Slaves+Docker Mesos Slaves+Docker
Mesos Slaves+Docker Mesos Slaves+DockerMesos Slaves+Docker
インフラチームは
リソースの稼働状況だけ管理
アプリケーションチームは
コンテナの内容だけ管理
データセンターチームは
実行基盤の配備だけ管理
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
MesosにおけるDockerジョブ定義
18
使用するコンテナイメージの定義(プライベートリポジトリ可)
コンテナ内で実行するコマンド
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
事例:Apple Siri (Jarvis)
https://mesosphere.com/blog/2015/04/23/apple-details-j-a-r-v-i-s-the-mesos-framework-that-runs-siri/
19
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
事例:Microsoft Azure Container Services
20
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
事例:理化学研究所 FANTOM5
実験環境リポジトリ
Workflow
Repo,
Container
Repo,
▷▷▷▷▷▷
Master Workflow
▷▷▷▷▷▷
Slave Workflow-A
Slave Workflow-B
▷▷▷▷▷▷
Slave Workflow-C
▷▷▷▷▷▷
Import
Job-Run Aurora Job
Aurora Job
Aurora Job
Mesos Master
Aurora
Scheduler
Mesos
Master
Zookeeper
Mesos Slave #1
Executor
Docker
Daemon
Mesos Slave #2
Executor
Docker
Daemon
Mesos Slave #3
Executor
Docker
Daemon
Mesos/Aurora Cluster
Storage
Seed(Raw) Data
Reference Data(from
Research Paper)
Scrach
Research
paper
21
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
デモ
• Docker Swarm
– 3VMを使用
•Rancher
– 4VM(1 Master + 3 Slave)を使用
•Mesosphere DCOS
– 5VMを使用
• 1 Master
• 1 Public Slave
• 3 Private Slave
22
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
デモ:Docker Swarm
23
Docker Engine#2 Docker Engine#3Docker Engine#1
Swarm Manager
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
デモ:Rancher
24
Rancher Manager Rancher Node#1
Rancher Node#2 Rancher Node#3
IPSec Overlay Network
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved
デモ:Mesosphere DCOS
25
Mesos Master Mesos Public Slave
Mesos
Private
Slave #1
Mesos
Private
Slave #2
Mesos
Private
Slave #3
Copyright ⓒ2015 CREATIONLINE, INC. All Rights Reserved

Dockerエンタープライズ利用について

  • 1.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved Dockerエンタープライズ利用について クリエーションライン(株) 木内 満歳
  • 2.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved Agenda 1. Docker活用ソリューションの概要 2. プロダクト紹介 – [Dockerデプロイ環境製品] Docker Swarm, Rancher, Apache Mesos/Mesosphere DCOS – [Docker環境支援製品] Docker Trusted Registry/Kitematic Hashicorp Packer/Serf/Consul 3. デモ 2
  • 3.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved Docker活用ソリューション概要 3
  • 4.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved Docker活用ソリューション概要 4 Docker Subscription & Docker Swarm 利用者 ホスト数 数十人~ 数十台~ 数人~十数人 数台~十数台 一人~数人 2~5台 デプロイ規模に応じた環境の選択
  • 5.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved Docker活用ソリューション概要 5 利用環境に応じた追加製品選択 ● 企業内独自リポジトリ Docker Trusted Registry ● GUI管理 Docker Kitematic ● コンテナイメージ開発 Hashicorp Packer ● サービスディスカバリー Hashicorp Serf/Consul Docker Subscription & Docker Swarm
  • 6.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved Docker活用ソリューション概要 6 サービスに応じたデプロイ環境の選択 ● 企業内独自リポジトリ Docker Trusted Registry ● GUI管理 Docker Kitematic ● コンテナイメージ開発 Hashicorp Packer ● サービスディスカバリー Hashicorp Serf/Consul オンプレミス
  • 7.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved 各プロダクトの比較 認証 ロードバランス オーバーレイ ネットワーク プライベート リポジトリ対応 Docker Swarm TLS 手動/自動(アルゴ リズム3種類) なし* ◯ Rancher GitHub LDAP(AD) なし あり(IPSec) ◯ Mesos SASL 自動(リソースの 空きを監視) なし ◯ * 今後Dockerの標準機能として実装予定 7
  • 8.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved プロダクト紹介 ~Dockerデプロイ環境製品~ -Docker Swarm- -Rancher- -Apache Mesos/Mesosphere DCOS- 8
  • 9.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved Docker Swarm 9 • Docker社提供のクラスタ環境ツール • 特長 – Docker社提供ツールとの連携 – デプロイストラテジ(スケジューラ)を選択可能 (分散/集中/既存コンテナ近傍選択) – 基本的なサービスディスカバリ (さらに各種etcd/Consul等と連携可能)
  • 10.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved Rancher 10 ●CloudStack初期開発メンバーが独立して起業 ●Dockerコンテナ管理プラットフォーム o Docker版vCenter Server+vSphere client [機能] ●Web管理UI o コンテナ及び実行ホストのデプロイ o コンテナおよび実行ホストのリソース監視、 ロギング o GitHubアカウントと連携したアクセス制限機 能(将来的にはLDAPおよびActiveDirectoryに対 応予定) o Docker HubおよびプライベートDockerリポジ トリとの連携 ●ユーザごとのリソース分割 ●他の自動化ツールと連携できるREST API ●複数のクラウドプラットフォームをまたいで疎通す るオーバーレイ・ネットワーク ●ネットワークロードバランサー ●ヘルスチェック ●ボリューム・スナップショット機能(バックアップ)
  • 11.
    Docker 仮想化 KVM/Xen/VMware SDN(IPSec)ネットワーク タグVLAN SDS ストレージ NFS Docker Hub リポジトリ 独自 Dockerによる 抽象化 パブリック クラウド連携 API連携 より抽象度の増したIaaS基盤管理ソフトウェアという ことができる 11
  • 12.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved Apache Mesos/Mesosphere DCOS 12 ●世代型クラスタリソースマネージャ o カリフォルニア大学バークレー校 AMPLabにて開発(機械学習における世界トップの研究 所) o オープンソースで公開。米Apache財団の全面バック アップ(Top Level Project) o 開発メンバーはMesosphere社を設立。商用製品 DCOSをリリース ●比類ないスケーラビリティ o 10,000ノードまでの拡張性を前提に設計 o ジョブの自動再起動、繰り返し実行 日時指定実行、実行回数制限をサポート o ジョブの監視、異常終了時の自動再実行 o ジョブに必要なマシンリソースと有休資源内のリソー スマッチング ●Dockerコンテナのネイティブサポート o ジョブに応じて動的に実行環境を切り替え可能 ●導入事例 o Twitter(ショートメッセージング) o Airbnb(宿泊施設マッチング) o Apple(Siriバックエンド)
  • 13.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved Mesos Slave Zookeeper Mesosフレームワーク/アプリケーションスタック HW/VM HW/VM HW/VM HW/VM OS OS OS OS Mesos Master Mesos DNS Marathon Chronos App App App App App App App App リソース管理 サービスディスカバリー ジョブスケジューラー 想定されるアプリケーション Ruby on Rails / STORM / Hadoop / Docker / Spark Play 13
  • 14.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved 拡張可能なフレームワーク 14 Zookeeper Mesos Master Mesos DNS Marathon Chronos 自作 フレームワーク 自作 フレームワーク サービスの種類を拡張可能
  • 15.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved Mesos is cluster of clusters 15 Mesos Master Mesos Slaves Marathon Chronos Hadoop Spark Torque Mesos Slave Mesos Slave Mesos Slave Mesos Slave Mesos Slave Mesos Slave Ma Ha ChSp Tr Sp TrCh HaHa Ma Sp
  • 16.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved ソリューション: Docker(コンテナ)による実行環境のフレキシブルな混在 16 Mesos Master Mesos Slaves Docker Repository Marathon Chronos Hadoop Spark Torque ジョブ(クラスタ)の稼働タイミングを管理 CentOS Ha Sp Tr Cos Cos Cos Sp Tr Ha Sp Tr Ha ジョブの投入(いつ) イメージのオンデマンド展開(なにを) ジョブ(クラスタ)の実行環境を管理 Mesos Slaves+Docker Mesos Slaves+Docker Mesos Slaves+Docker Mesos Slaves+Docker Mesos Slaves+DockerMesos Slaves+Docker 実行基盤(HW+OS+Mesos Slave+Docker) “だけ” 管理
  • 17.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved コンテナ化の利点 17 Mesos Master Mesos Slaves Docker Repository Marathon Chronos Hadoop Spark Torque CentOS Ha Sp Tr Cos Cos Cos Sp Tr Ha Sp Tr Ha Mesos Slaves+Docker Mesos Slaves+Docker Mesos Slaves+Docker Mesos Slaves+Docker Mesos Slaves+DockerMesos Slaves+Docker インフラチームは リソースの稼働状況だけ管理 アプリケーションチームは コンテナの内容だけ管理 データセンターチームは 実行基盤の配備だけ管理
  • 18.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved MesosにおけるDockerジョブ定義 18 使用するコンテナイメージの定義(プライベートリポジトリ可) コンテナ内で実行するコマンド
  • 19.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved 事例:Apple Siri (Jarvis) https://mesosphere.com/blog/2015/04/23/apple-details-j-a-r-v-i-s-the-mesos-framework-that-runs-siri/ 19
  • 20.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved 事例:Microsoft Azure Container Services 20
  • 21.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved 事例:理化学研究所 FANTOM5 実験環境リポジトリ Workflow Repo, Container Repo, ▷▷▷▷▷▷ Master Workflow ▷▷▷▷▷▷ Slave Workflow-A Slave Workflow-B ▷▷▷▷▷▷ Slave Workflow-C ▷▷▷▷▷▷ Import Job-Run Aurora Job Aurora Job Aurora Job Mesos Master Aurora Scheduler Mesos Master Zookeeper Mesos Slave #1 Executor Docker Daemon Mesos Slave #2 Executor Docker Daemon Mesos Slave #3 Executor Docker Daemon Mesos/Aurora Cluster Storage Seed(Raw) Data Reference Data(from Research Paper) Scrach Research paper 21
  • 22.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved デモ • Docker Swarm – 3VMを使用 •Rancher – 4VM(1 Master + 3 Slave)を使用 •Mesosphere DCOS – 5VMを使用 • 1 Master • 1 Public Slave • 3 Private Slave 22
  • 23.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved デモ:Docker Swarm 23 Docker Engine#2 Docker Engine#3Docker Engine#1 Swarm Manager
  • 24.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved デモ:Rancher 24 Rancher Manager Rancher Node#1 Rancher Node#2 Rancher Node#3 IPSec Overlay Network
  • 25.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved デモ:Mesosphere DCOS 25 Mesos Master Mesos Public Slave Mesos Private Slave #1 Mesos Private Slave #2 Mesos Private Slave #3
  • 26.
    Copyright ⓒ2015 CREATIONLINE,INC. All Rights Reserved