Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Performance Evaluation of Docker
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
nasunom
July 04, 2014
Technology
7.8k
8
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Performance Evaluation of Docker
Docker Meetup Tokyo #3
nasunom
July 04, 2014
Other Decks in Technology
See All in Technology
dbt in Microsoft Fabric
ryomaru0825
0
310
AI駆動開発を組織で促すために
lycorptech_jp
PRO
7
8.9k
エージェント化するAI:現在地とその先に起きる変化 / AI as Agents: The Current State and the Changes Ahead
ks91
PRO
0
180
1.5時間を無駄にして学んだwsl2におけるaptとsnapの選択と仕組み
yosaka0123
0
480
AI時代のデータ基盤を考える問い
pacocat
0
770
形式手法特論:Hyperproperty とモデル検査 #kernelvm / Kernel VM Study Tokyo 19th
ytaka23
1
910
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
5k
いかに伝えるか 〜新卒エンジニアの教育のための、ライトノベル活用の一例
ikedon
1
120
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
12
86k
AWSとAzureのマルチクラウド活用における強い味方___AWS_Kiroを使った二刀流スキル作成.pdf
duelist2020jp
1
150
『自分で判断できるか』を基準に、プロダクトのハンズオン研修でAI利用の線を引いてみた / Where We Drew the Line on AI in Hands-on Training
honyanya
1
500
会計事務所と顧問先の契約関係をOIDC・OAuthで表現する
terara
0
550
Featured
See All Featured
エンジニアに許された特別な時間の終わり
watany
108
250k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
270
Product Roadmaps are Hard
iamctodd
55
12k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
1k
How to Talk to Developers About Accessibility
jct
2
530
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
360
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
220
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
430
How GitHub (no longer) Works
holman
316
150k
Transcript
Copyright 2014 ASCADE, Inc. Performance Evaluation of Docker 那須野 淳
ASCADE, Inc. Docker Meetup Tokyo #3 2014-07-04
Copyright 2014 ASCADE, Inc. 自己紹介 名前: 那須野 淳
[email protected]
職場:
株式会社アスケイド 経緯: 国立情報学研究所(NII) 横山教授らが進める 「アカデミックインタークラウド」実現に 向けたプロジェクトに係わり、技術検証・ プロトタイプ開発を行っています。 Dockerはクラウド基盤連携のための主要な 要素技術の一つ。 基礎性能数値を把握し、アプリケーションの 性能予測に役立てることが目的。 2
Copyright 2014 ASCADE, Inc. 性能測定の観点 Docker のオーバーヘッド測定 • 物理サーバ(ベアメタルマシン)を
そのまま使う場合と比べて、遅くなるのか? • VM上に配備した場合はどうか? • その他 − コンテナ / daemon オプション (-c, -m, -v, --privileged, -s, ...) − 並列コンテナのスケーラビリティ − 入れ子構造 "Docker-in-Docker" − 仮想ネットワーク機能 (Linux bridge + vEth + NAT) VM方式との性能比較 • 仮想化方式として、VM(Hypervisor) と Docker どちらを選択したらよいか? 3
Copyright 2014 ASCADE, Inc. 測定環境・ベンチマークツール ハードウェア・スペック ソフトウェア 4 OS Ubuntu
13.10 (64bit) Kernel 3.11.0-19-generic Docker 0.10.0 OpenStack 2013.2 (Havana) UnixBench 5.1.3 Bonnie++ 1.97.1 Intel Xeon E5-2670 2.60GHz 32cpu (2socket x 8core x 2thread) RAM 96 GB
Copyright 2014 ASCADE, Inc. UnixBenchスコア (on Baremetal) 5 16並列の場合、 ・Execl
Throughput ・Shell Scripts の劣化が目立つ。 AUFS 管理下の /lib/* 共有ライブラリへの Read Overhead が 大きく影響する。
Copyright 2014 ASCADE, Inc. Storage Driver を Device Mapperへ 6
・Execl Throughput ・Shell Scripts の性能は大幅に改善
Copyright 2014 ASCADE, Inc. Storage Driver の指定方法 Docker daemon 起動オプション:
-s devicemapper または /etc/default/docker.io に書く(※ubuntuの場合) DOCKER_OPTS="-s devicemapper" docker info コマンドで確認 7 変更すると、既存の イメージは管理位置が 変わり、docker images コマンドで見えなく なります。 ~# docker info Containers: 1 Images: 39 Storage Driver: devicemapper Pool Name: docker-8:5-61931522-pool Data file: /mnt/docker/devicemapper/devicemapper/data Metadata file: /mnt/docker/devicemapper/devicemapper/metadata Data Space Used: 3274.9 Mb Data Space Total: 102400.0 Mb Metadata Space Used: 4.3 Mb Metadata Space Total: 2048.0 Mb Execution Driver: native-0.1
Copyright 2014 ASCADE, Inc. 指定しない場合の優先順位は? (docker-1.0.1) daemon/graphdriver/driver.go 8 v1.1.0 で変更されていない
ことを確認済み。
Copyright 2014 ASCADE, Inc. UnixBenchスコア (on VM) 9 on Baremetal
の場合と ほぼ同様の傾向を示す。 (-s devicemapper) (OpenStack / KVM のVMインスタンスで計測)
Copyright 2014 ASCADE, Inc. ファイル I/O 性能 (AUFS) 10 Bonnie++による
5回計測の平均値で比較 Block I/O size=4GB files=128*1024 dirs=128 AUFS 領域の read 性能劣化 が著しい。 -v オプションで ホスト側を共有
Copyright 2014 ASCADE, Inc. ファイル I/O 性能 (Device Mapper) 11
Device Mapper により read 性能を維持できる
Copyright 2014 ASCADE, Inc. 仮想化方式(VM / Docker) の比較 12 (-s
devicemapper) 一般的な VM / Baremetal 比較結果と同じような傾向 となった。ただし… Context Switching を除いて。 Context Switching: ⇒今回の環境では Baremetal側 のスケジューラの問題により、 Rescheduling Interrupts がVMと 比べ大量に発生したことが原因。 CPU割当(cpu affinity) を固定 するとBaremetalの方が 予想通り速い結果に。
Copyright 2014 ASCADE, Inc. まとめ • Docker のオーバーヘッドは、Linux環境で動作する 一般的なアプリケーションの処理ならば、Baremetal マシンやVMをそのまま使う場合と変わらないレベル。
• AUFS 領域への読み込み性能は極端に低下する場合 があり、用途によっては AUFS以外の Storage Driver (devicemapper など) を選択するほうがよい。 • (補) Dockerの標準ネットワーク設定では、NATルータを経由しても レイテンシー、スループットともに大きな差異は見られなかった。 ⇒ Host Networking機能のパフォーマンス的なメリットは少ないか? 13
Copyright 2014 ASCADE, Inc. 14 Thanks.