Submit Search
Upload
OSvのご紹介 in OSC2014 Tokyo/Fall
•
8 likes
•
2,610 views
Takuya ASADA
Follow
OSvのご紹介 in OSC2014 Tokyo/Fall
Read less
Read more
Technology
Report
Share
Report
Share
1 of 51
Download now
Download to read offline
Recommended
OSv噺
OSv噺
Takuya ASADA
OSvのご紹介 in Java 8 HotSpot meeting
OSvのご紹介 in Java 8 HotSpot meeting
Takuya ASADA
Presentation on your terminal
Presentation on your terminal
Takuya ASADA
高スループットなサーバアプリケーションの為の新しいフレームワーク 「Seastar」
高スループットなサーバアプリケーションの為の新しいフレームワーク 「Seastar」
Takuya ASADA
Seastar in 歌舞伎座.tech#8「C++初心者会」
Seastar in 歌舞伎座.tech#8「C++初心者会」
Takuya ASADA
Seastar:高スループットなサーバアプリケーションの為の新しいフレームワーク
Seastar:高スループットなサーバアプリケーションの為の新しいフレームワーク
Takuya ASADA
OSvの概要と実装
OSvの概要と実装
Takuya ASADA
分散ストレージ技術Cephの最新情報
分散ストレージ技術Cephの最新情報
Emma Haruka Iwao
Recommended
OSv噺
OSv噺
Takuya ASADA
OSvのご紹介 in Java 8 HotSpot meeting
OSvのご紹介 in Java 8 HotSpot meeting
Takuya ASADA
Presentation on your terminal
Presentation on your terminal
Takuya ASADA
高スループットなサーバアプリケーションの為の新しいフレームワーク 「Seastar」
高スループットなサーバアプリケーションの為の新しいフレームワーク 「Seastar」
Takuya ASADA
Seastar in 歌舞伎座.tech#8「C++初心者会」
Seastar in 歌舞伎座.tech#8「C++初心者会」
Takuya ASADA
Seastar:高スループットなサーバアプリケーションの為の新しいフレームワーク
Seastar:高スループットなサーバアプリケーションの為の新しいフレームワーク
Takuya ASADA
OSvの概要と実装
OSvの概要と実装
Takuya ASADA
分散ストレージ技術Cephの最新情報
分散ストレージ技術Cephの最新情報
Emma Haruka Iwao
コンテナ事例 CircleCI, Cucumber-Chef
コンテナ事例 CircleCI, Cucumber-Chef
Yukihiko SAWANOBORI
introduction of WalB
introduction of WalB
MITSUNARI Shigeo
Containerで変わるDevOps
Containerで変わるDevOps
shokiri
CephとGluster次期バージョンでの新機能
CephとGluster次期バージョンでの新機能
Emma Haruka Iwao
Rubyによるお手軽分散処理
Rubyによるお手軽分散処理
maebashi
社内勉強会(Docker)
社内勉強会(Docker)
Shinya Sasaki
Kubernetesを触ってみた
Kubernetesを触ってみた
Kazuto Kusama
Using LXC on Production
Using LXC on Production
Isao Shimizu
フィードフォースと AWS と私
フィードフォースと AWS と私
a know
DockerとKubernetesが作る未来
DockerとKubernetesが作る未来
Kazuto Kusama
VagrantユーザのためのDocker入門
VagrantユーザのためのDocker入門
Masashi Shinbara
InfiniBand on Debian
InfiniBand on Debian
Taisuke Yamada
Ceph Loves OpenStack: Why and How
Ceph Loves OpenStack: Why and How
Emma Haruka Iwao
OpenStack Block Storage (Cinder)
OpenStack Block Storage (Cinder)
Akira Yoshiyama
Cloudstack Day 2014 ここまできた、VSC for ACSが実現する先進的なプライベートクラウド
Cloudstack Day 2014 ここまできた、VSC for ACSが実現する先進的なプライベートクラウド
Masaomi Kudo
Ceph アーキテクチャ概説
Ceph アーキテクチャ概説
Emma Haruka Iwao
机上の Kubernetes - 形式手法で見るコンテナオーケストレーション #NGK2016B
机上の Kubernetes - 形式手法で見るコンテナオーケストレーション #NGK2016B
y_taka_23
Clojureの発表など
Clojureの発表など
Kikuta Go
Docker, Kubernetes and OpenShift v3
Docker, Kubernetes and OpenShift v3
Emma Haruka Iwao
Bossan dentoo
Bossan dentoo
kubo39
Ethernetの受信処理
Ethernetの受信処理
Takuya ASADA
UEFI時代のブートローダ
UEFI時代のブートローダ
Takuya ASADA
More Related Content
What's hot
コンテナ事例 CircleCI, Cucumber-Chef
コンテナ事例 CircleCI, Cucumber-Chef
Yukihiko SAWANOBORI
introduction of WalB
introduction of WalB
MITSUNARI Shigeo
Containerで変わるDevOps
Containerで変わるDevOps
shokiri
CephとGluster次期バージョンでの新機能
CephとGluster次期バージョンでの新機能
Emma Haruka Iwao
Rubyによるお手軽分散処理
Rubyによるお手軽分散処理
maebashi
社内勉強会(Docker)
社内勉強会(Docker)
Shinya Sasaki
Kubernetesを触ってみた
Kubernetesを触ってみた
Kazuto Kusama
Using LXC on Production
Using LXC on Production
Isao Shimizu
フィードフォースと AWS と私
フィードフォースと AWS と私
a know
DockerとKubernetesが作る未来
DockerとKubernetesが作る未来
Kazuto Kusama
VagrantユーザのためのDocker入門
VagrantユーザのためのDocker入門
Masashi Shinbara
InfiniBand on Debian
InfiniBand on Debian
Taisuke Yamada
Ceph Loves OpenStack: Why and How
Ceph Loves OpenStack: Why and How
Emma Haruka Iwao
OpenStack Block Storage (Cinder)
OpenStack Block Storage (Cinder)
Akira Yoshiyama
Cloudstack Day 2014 ここまできた、VSC for ACSが実現する先進的なプライベートクラウド
Cloudstack Day 2014 ここまできた、VSC for ACSが実現する先進的なプライベートクラウド
Masaomi Kudo
Ceph アーキテクチャ概説
Ceph アーキテクチャ概説
Emma Haruka Iwao
机上の Kubernetes - 形式手法で見るコンテナオーケストレーション #NGK2016B
机上の Kubernetes - 形式手法で見るコンテナオーケストレーション #NGK2016B
y_taka_23
Clojureの発表など
Clojureの発表など
Kikuta Go
Docker, Kubernetes and OpenShift v3
Docker, Kubernetes and OpenShift v3
Emma Haruka Iwao
Bossan dentoo
Bossan dentoo
kubo39
What's hot
(20)
コンテナ事例 CircleCI, Cucumber-Chef
コンテナ事例 CircleCI, Cucumber-Chef
introduction of WalB
introduction of WalB
Containerで変わるDevOps
Containerで変わるDevOps
CephとGluster次期バージョンでの新機能
CephとGluster次期バージョンでの新機能
Rubyによるお手軽分散処理
Rubyによるお手軽分散処理
社内勉強会(Docker)
社内勉強会(Docker)
Kubernetesを触ってみた
Kubernetesを触ってみた
Using LXC on Production
Using LXC on Production
フィードフォースと AWS と私
フィードフォースと AWS と私
DockerとKubernetesが作る未来
DockerとKubernetesが作る未来
VagrantユーザのためのDocker入門
VagrantユーザのためのDocker入門
InfiniBand on Debian
InfiniBand on Debian
Ceph Loves OpenStack: Why and How
Ceph Loves OpenStack: Why and How
OpenStack Block Storage (Cinder)
OpenStack Block Storage (Cinder)
Cloudstack Day 2014 ここまできた、VSC for ACSが実現する先進的なプライベートクラウド
Cloudstack Day 2014 ここまできた、VSC for ACSが実現する先進的なプライベートクラウド
Ceph アーキテクチャ概説
Ceph アーキテクチャ概説
机上の Kubernetes - 形式手法で見るコンテナオーケストレーション #NGK2016B
机上の Kubernetes - 形式手法で見るコンテナオーケストレーション #NGK2016B
Clojureの発表など
Clojureの発表など
Docker, Kubernetes and OpenShift v3
Docker, Kubernetes and OpenShift v3
Bossan dentoo
Bossan dentoo
Viewers also liked
Ethernetの受信処理
Ethernetの受信処理
Takuya ASADA
UEFI時代のブートローダ
UEFI時代のブートローダ
Takuya ASADA
10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化
Takuya ASADA
ヤマノススメ〜秋山郷 de ハッカソン〜
ヤマノススメ〜秋山郷 de ハッカソン〜
Takuya ASADA
僕のIntel nucが起動しないわけがない
僕のIntel nucが起動しないわけがない
Takuya ASADA
仮想化環境におけるパケットフォワーディング
仮想化環境におけるパケットフォワーディング
Takuya ASADA
マルチコアとネットワークスタックの高速化技法
マルチコアとネットワークスタックの高速化技法
Takuya ASADA
デバドラを書いてみよう!
デバドラを書いてみよう!
Masami Ichikawa
クラウドの垣根を超えた高性能計算に向けて~AIST Super Green Cloudでの試み~
クラウドの垣根を超えた高性能計算に向けて~AIST Super Green Cloudでの試み~
Ryousei Takano
Railsチュートリアルの歩き方 (第3版)
Railsチュートリアルの歩き方 (第3版)
Yohei Yasukawa
OSv at Cassandra Summit
OSv at Cassandra Summit
Don Marti
Hse alert 2013 35 two fatalities as a result of a failure of a bonnet-to...
Hse alert 2013 35 two fatalities as a result of a failure of a bonnet-to...
Alan Bassett
Kogeneracja - efektywne wykorzystanie energii cieplnej
Kogeneracja - efektywne wykorzystanie energii cieplnej
Ekokonsultacje
Kelly Ruggles
Kelly Ruggles
Kelly Ruggles
Informed Sport Dec 08
Informed Sport Dec 08
anoukjaeger
Designing E-learning for IMPACT Presented by Lars Hyland, Brightwave
Designing E-learning for IMPACT Presented by Lars Hyland, Brightwave
Brightwave Group
xdxdlol
xdxdlol
Elsoretaso
八白散
八白散
guest634897
Amatciems Latvija
Amatciems Latvija
verka 123
Copying Isn’T Cool
Copying Isn’T Cool
matt210
Viewers also liked
(20)
Ethernetの受信処理
Ethernetの受信処理
UEFI時代のブートローダ
UEFI時代のブートローダ
10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化
ヤマノススメ〜秋山郷 de ハッカソン〜
ヤマノススメ〜秋山郷 de ハッカソン〜
僕のIntel nucが起動しないわけがない
僕のIntel nucが起動しないわけがない
仮想化環境におけるパケットフォワーディング
仮想化環境におけるパケットフォワーディング
マルチコアとネットワークスタックの高速化技法
マルチコアとネットワークスタックの高速化技法
デバドラを書いてみよう!
デバドラを書いてみよう!
クラウドの垣根を超えた高性能計算に向けて~AIST Super Green Cloudでの試み~
クラウドの垣根を超えた高性能計算に向けて~AIST Super Green Cloudでの試み~
Railsチュートリアルの歩き方 (第3版)
Railsチュートリアルの歩き方 (第3版)
OSv at Cassandra Summit
OSv at Cassandra Summit
Hse alert 2013 35 two fatalities as a result of a failure of a bonnet-to...
Hse alert 2013 35 two fatalities as a result of a failure of a bonnet-to...
Kogeneracja - efektywne wykorzystanie energii cieplnej
Kogeneracja - efektywne wykorzystanie energii cieplnej
Kelly Ruggles
Kelly Ruggles
Informed Sport Dec 08
Informed Sport Dec 08
Designing E-learning for IMPACT Presented by Lars Hyland, Brightwave
Designing E-learning for IMPACT Presented by Lars Hyland, Brightwave
xdxdlol
xdxdlol
八白散
八白散
Amatciems Latvija
Amatciems Latvija
Copying Isn’T Cool
Copying Isn’T Cool
Similar to OSvのご紹介 in OSC2014 Tokyo/Fall
Osc2009 Do Xen Hara
Osc2009 Do Xen Hara
Kazuhisa Hara
クラウド入門
クラウド入門
真乙 九龍
Cloud Foundry: Open Platform as a Service
Cloud Foundry: Open Platform as a Service
Shunsuke Kurumatani
おにいぽんでもわかるContainer
おにいぽんでもわかるContainer
Takahiro Morimoto
Java on Microsoft Azure
Java on Microsoft Azure
Yoshio Terada
How to use Ceph RBD as CloudStack Primary Storage
How to use Ceph RBD as CloudStack Primary Storage
Kimihiko Kitase
Linux KVMではじめるカンタン仮想化入門
Linux KVMではじめるカンタン仮想化入門
VirtualTech Japan Inc.
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
Kuniyasu Suzaki
OpenStack + KVM + IPv6 = oname.com; Next Folsom/Grizzly Service development s...
OpenStack + KVM + IPv6 = oname.com; Next Folsom/Grizzly Service development s...
Naoto Gohko
Docker入門
Docker入門
Yamamoto Kazuhisa
Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~
Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~
Akira Inoue
OpenShift from Easy way to Hard ? Way
OpenShift from Easy way to Hard ? Way
ロフト くん
LL言語でもHudsonを使おう!
LL言語でもHudsonを使おう!
KLab株式会社
OpenShift v3 Technical Overview
OpenShift v3 Technical Overview
Nakayama Kenjiro
A 2-1 gitwebmatrix 2 から使う node.js on windows azure
A 2-1 gitwebmatrix 2 から使う node.js on windows azure
GoAzure
openstack+cephインテグレーション
openstack+cephインテグレーション
OSSラボ株式会社
SQL Server エンジニア のための コンテナ入門
SQL Server エンジニア のための コンテナ入門
Tomoyuki Oota
SQL Server エンジニアのためのコンテナ入門
SQL Server エンジニアのためのコンテナ入門
Insight Technology, Inc.
Couch DB in 15minutes
Couch DB in 15minutes
Yohei Sasaki
Similar to OSvのご紹介 in OSC2014 Tokyo/Fall
(20)
Osc2009 Do Xen Hara
Osc2009 Do Xen Hara
クラウド入門
クラウド入門
Cloud Foundry: Open Platform as a Service
Cloud Foundry: Open Platform as a Service
おにいぽんでもわかるContainer
おにいぽんでもわかるContainer
Java on Microsoft Azure
Java on Microsoft Azure
How to use Ceph RBD as CloudStack Primary Storage
How to use Ceph RBD as CloudStack Primary Storage
Linux KVMではじめるカンタン仮想化入門
Linux KVMではじめるカンタン仮想化入門
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
OpenStack + KVM + IPv6 = oname.com; Next Folsom/Grizzly Service development s...
OpenStack + KVM + IPv6 = oname.com; Next Folsom/Grizzly Service development s...
Docker入門
Docker入門
Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~
Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~
OpenShift from Easy way to Hard ? Way
OpenShift from Easy way to Hard ? Way
LL言語でもHudsonを使おう!
LL言語でもHudsonを使おう!
OpenShift v3 Technical Overview
OpenShift v3 Technical Overview
A 2-1 gitwebmatrix 2 から使う node.js on windows azure
A 2-1 gitwebmatrix 2 から使う node.js on windows azure
openstack+cephインテグレーション
openstack+cephインテグレーション
SQL Server エンジニア のための コンテナ入門
SQL Server エンジニア のための コンテナ入門
SQL Server エンジニアのためのコンテナ入門
SQL Server エンジニアのためのコンテナ入門
Couch DB in 15minutes
Couch DB in 15minutes
More from Takuya ASADA
OSvパンフレット v3
OSvパンフレット v3
Takuya ASADA
Linux network stack
Linux network stack
Takuya ASADA
Interrupt Affinityについて
Interrupt Affinityについて
Takuya ASADA
OSvパンフレット
OSvパンフレット
Takuya ASADA
BHyVeでOSvを起動したい 〜BIOSがなくてもこの先生きのこるには〜
BHyVeでOSvを起動したい 〜BIOSがなくてもこの先生きのこるには〜
Takuya ASADA
「ハイパーバイザの作り方」読書会#2
「ハイパーバイザの作り方」読書会#2
Takuya ASADA
「ハイパーバイザの作り方」読書会#1
「ハイパーバイザの作り方」読書会#1
Takuya ASADA
Implements BIOS emulation support for BHyVe: A BSD Hypervisor
Implements BIOS emulation support for BHyVe: A BSD Hypervisor
Takuya ASADA
仮想化環境での利用者公平性
仮想化環境での利用者公平性
Takuya ASADA
MMIO on VT-x
MMIO on VT-x
Takuya ASADA
Implements BIOS emulation support for BHyVe
Implements BIOS emulation support for BHyVe
Takuya ASADA
Play with UEFI
Play with UEFI
Takuya ASADA
BHyVe: The BSD Hypervisor
BHyVe: The BSD Hypervisor
Takuya ASADA
OpenBSDな生活
OpenBSDな生活
Takuya ASADA
/proc/irq/<irq>/smp_affinity
/proc/irq/<irq>/smp_affinity
Takuya ASADA
Rps・rfs等最新linux kernel事例
Rps・rfs等最新linux kernel事例
Takuya ASADA
More from Takuya ASADA
(16)
OSvパンフレット v3
OSvパンフレット v3
Linux network stack
Linux network stack
Interrupt Affinityについて
Interrupt Affinityについて
OSvパンフレット
OSvパンフレット
BHyVeでOSvを起動したい 〜BIOSがなくてもこの先生きのこるには〜
BHyVeでOSvを起動したい 〜BIOSがなくてもこの先生きのこるには〜
「ハイパーバイザの作り方」読書会#2
「ハイパーバイザの作り方」読書会#2
「ハイパーバイザの作り方」読書会#1
「ハイパーバイザの作り方」読書会#1
Implements BIOS emulation support for BHyVe: A BSD Hypervisor
Implements BIOS emulation support for BHyVe: A BSD Hypervisor
仮想化環境での利用者公平性
仮想化環境での利用者公平性
MMIO on VT-x
MMIO on VT-x
Implements BIOS emulation support for BHyVe
Implements BIOS emulation support for BHyVe
Play with UEFI
Play with UEFI
BHyVe: The BSD Hypervisor
BHyVe: The BSD Hypervisor
OpenBSDな生活
OpenBSDな生活
/proc/irq/<irq>/smp_affinity
/proc/irq/<irq>/smp_affinity
Rps・rfs等最新linux kernel事例
Rps・rfs等最新linux kernel事例
Recently uploaded
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
Recently uploaded
(7)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
OSvのご紹介 in OSC2014 Tokyo/Fall
1.
OSvのご紹介 in OSC2014
Tokyo/Fall Takuya ASADA <syuu@cloudius-systems> Cloudius Systems
2.
自己紹介 • Software
Engineer at Cloudius Systems • FreeBSD developer (bhyve, network stack..) • Software Designで「ハイパーバイザの作り 方」を連載中
3.
Cloudius Systemsについて •
OSvの開発母体(フルタイムデベロッパで開発) • Office:Herzliya, Israel • CTO : Avi Kivity → Linux KVMのパパ • 他の開発者:元RedHat(KVM), Parallels(Virtuozzo, OpenVZ) etc.. • イスラエルの主な人物は元Qumranet(RedHatに買収) • 半数の開発者がイスラエル以外の国からリモート開発で参加 • 18名・9ヶ国(イスラエル在住は9名)
4.
5.
6.
7.
8.
OSvの概要
9.
OSvとは? • OSvは単一のアプリケーションをハイパーバイザ・IaaSでLinuxOSな
しに実行するための新しい仕組み • より効率よく高い性能で実行 • よりシンプルに管理しやすく • オープンソース(BSDライセンス)、コミュニティでの開発 • http://osv.io/ • Kivity, Avi, et al. "OSv—Optimizing the Operating System for Virtual Machines." 2014 USENIX Annual Technical Conference (USENIX ATC 14). USENIX Association, 2014.
10.
7SLFDOORXG6WDFN 標準的なIaaSスタック $SSOLFDWLRQ
5XQWLPH 2SHUDWLQJ6VWHP +SHUYLVRU +DUGZDUH 3URWHFWLRQ DQG DEVWUDFWLRQ • 単一のアプリケーションを実行するワークロードでは フルサイズのゲストOS+フル仮想化はオーバヘッド
11.
RQWDLQHUV コンテナ技術 $SSOLFDWLRQ
5XQWLPH $SSOLFDWLRQ 5XQWLPH 2SHUDWLQJ6VWHP +DUGZDUH Ɣ KLJKVLPSOLFLW Ɣ KLJKUHVRXUFHHIILFLHQF Ɣ KLJKSHUIRUPDQFH • 実行環境をシンプルにする事が可能 • パフォーマンスも高い
12.
³/LEUDU26´ ライブラリOS $SSOLFDWLRQ
5XQWLPH26 $SSOLFDWLRQ 5XQWLPH26 +SHUYLVRU +DUGZDUH Ɣ KLJKVLPSOLFLW Ɣ KLJKUHVRXUFHHIILFLHQF Ɣ KLJKSHUIRUPDQFH Ɣ KLJKLVRODWLRQ • コンテナと比較してisolationが高い
13.
OSv=ライブラリOS • OSを利用するために呼び出すLinux
APIをライ ブラリのような形式で提供 • 言語ランタイムはなるべく改造しないで移植可 能にする • API提供に必要な機能は実装 • フルサイズのOSとは構造の異なる薄いレイヤ
14.
動作環境 • ハイパーバイザ
• KVM • Xen • VMware • VirtualBox • IaaS • Amazon EC2 • Google Compute Engine
15.
対応アーキテクチャ • x86_64(32bit非サポート)
• aarch64
16.
対応アプリ (Java) •
OpenJDK7,8 • Tomcat • Cassandra • Jetty • Solr • OpenDaylight • Gitblit • Clojure • JRuby(Ruby on Railsなど) • Ringo.JS • Jython • Erjang • Scala • Quercus(PHPエンジン、 Wordpressなど) • minecraft-server • Oracle NoSQLDB
17.
対応アプリ (Java以外) •
Ruby • WEBRick • Ruby on Rails • Publify(Railsベースのブログエンジン) • mruby • lua • Node.js
18.
何が動くの? (ネイティブアプリ) •
haproxy • memcached • MySQL • LevelDB • SQLite • twemproxy
19.
フットプリント (ディスクイメージサイズ) •
mruby = 14MB • Ruby = 48MB • OpenJDK = 77MB
20.
フットプリント (最低メモリ使用量) •
mruby = 65MB • Ruby = 75MB • OpenJDK = 110MB
21.
ブート時間 • 1秒(DHCP、ZFS初期化込み)
22.
OSvの基本的な機能 • Linuxアプリとの限定的な互換性
• ファイルシステム(ZFS) • TCP/IP(IPv4のみ)
23.
OSvをプログラムから操作 「REST API」
• REST API経由でOSvに任意の操作を実行 • 従来のOS:コマンド実行やファイルの編集で設 定を変更 (手動が基本、シェルスクリプトなどで自動化) OSv:APIで設定を変更 (自動化が基本、CLIはオプション)
24.
OSvを対話的に操作 「Lua CLI」
• 簡易的なシェル機能を実現 • 全ての機能をREST API上に実装 • デフォルトではOSv上で実行されるが、リモー トホストで実行してSSH代わりに使用可能
25.
初期化スクリプトを サーバからダウンロード&実行 「Cloud
Init」 • ネットワーク上からYAMLをダウンロードしてき て、ダウンロードしたファイルに記述されてい るREST APIを順次実行
26.
OSv GUI •
WebベースのGUI • OSの負荷、JVMのリソース情報、アプリの statisticsなどの統計情報を表示 • Virtual applianceとしてOSvを使うことを前 提にCassandra, memcached, Redisなどの アプリの情報を表示する機能を実装中
27.
28.
簡易デプロイツール 「Capstan」 •
色々なアプリがインストールされたOSvのVMイ メージを、コンパイルなどの難しい作業なしに手 軽に実行するツール • Linux, Mac, Windowsで動作 • VirtualBox, VMware, KVMなどに対応
29.
クラウドへのデプロイ • Amazon
EC2 • AMIを配布中 • Google Compute Engine • capstanからアップロード可能
30.
OSvの実装
31.
OSvの設計(1) • OSvは複数のメモリ空間を持たない
メモリ空間は全プロセス&カーネルで共通 • OSvはカーネルとユーザプロセス間で権限のモード切替を行わない 従って,カーネルの機能はlibc経由の関数コールで実現 • メモリの保護や権限の制限はハイパーバイザや言語ランタイムに任 せる ネイティブコードがメモリ保護エラーでOSvカーネルのメモリ領域 を破壊するのはユーザ責任 • イメージとしては言語ランタイムをベアメタル環境に移植して いる状態に近い
32.
OSvの設計(2) • これにより、TLBミスやモード切替のコスト
を削減しパフォーマンスを上げることが出来 る • (JVMによる制限が無ければ)ユーザプロセ スからデバイスが丸見え • むしろ「アプリからvirtioを直接扱うことに よって従来より性能を上げられる」と主張
33.
OSvの構成要素 • C++11でスクラッチから書かれたカーネルの主な部分
• メモリマネージャ、スケジューラ、ELFローダ、ドライバ、VFS、 ramfs、ACPI、システムコール、libc関数(一部) • FreeBSDからの移植 • ZFS、TCP/IPスタック(v4のみ) • musl-libc • アプリケーション • lua VM CLI、REST server、OpenJDK、Ruby…
34.
OSvの構造 Java apps
OpenJDK OSv kernel ZFS TCP/ IP FBSD code CLI COM port virtio-blk virtio-net sched uler libc ACPI clock ramfs VFS MM ELF loader syscall emu libjvm.so java.so オリジナル実装(C++11) ポーティング バイナリ LuaVM 非ネイティブコード REST server
35.
デバイスドライバ • 仮想マシン専用なので準仮想化デバイス+最低限のデバイスをサポート
• virtio-blk, virtio-net, virtio-scsi, virtio-rng • vmware-pvscsi, vmxnet3 • xen pv driver • SATA • HPET、PV clock(KVM, Xen) • ACPI • Some legacy devices(IDE, VGA, COM, PS2)
36.
Linuxとの互換性 • Fedora向けのOpenJDKバイナリが動作するレベ
ル • glibcの全関数が提供されている訳ではない • musl-libcから必要に応じてAPIが移植されてきて いる • 今まで必要無かったAPI、musl-libcに存在しない APIが欠けている事がある
37.
アプリケーション • OSvが提供するlibcの範囲で動き、-fPIC(-shared)でビルドされて
いる必要がある(最近PIE Executablesをサポート) • アプリの実行=現在のメモリ空間へのapp.soのロードとmain関数 の実行 • fork() / exec()はサポートされない →内部でコマンド実行するプログラムとの互換性がない • マルチスレッドはサポートされる
38.
複数アプリケーションの 実行 •
プロセスは1つだが、スレッドを新し く作ってapp.soをロード&実行する事 で複数アプリを実行する事は可能 • 但し、空間が共有されるため同じプロ グラムを2インスタンス起動する事が 出来ない
39.
JVMマルチテナント • 1つのVMでは通常1つのmainメソッドを含むプログラム
しか実行出来ない • OSvは単一プロセスなので1つのJavaアプリしか起動出 来ない • クラスローダ周りでトリックを行って、複数のmainメ ソッドを含むプログラム群をロード&実行するような仕 組みを実装 • JVM自体のコードは無変更
40.
アプリの移植
41.
mrubyの移植 build_config.rbを以下のように変更 MRuby::Build.new
do |conf| # load specific toolchain settings toolchain :gcc ! # C compiler settings conf.cc do |cc| cc.flags -O0 -fPIC -Wall end
42.
memcachedの移植 • SASLを無効化
• -fpieでビルド
43.
MySQLの移植 • rootでの実行を拒否してmysqlユーザに切り替
える処理をコメントアウト • ファイルのパーミッションをチェックしてworld writableな場合実行を拒否する処理をコメントア ウト • -fPIC -sharedでビルド
44.
CRubyの移植 • libc関数を25個追加(うちスタブ1/3)
• obstackライブラリのスタティックリンク • ./configureによるフラグ設定の調整 • OpenSSLのビルド・スタティックリンク
45.
Ruby on Rails
on CRubyの 移植 • Bundlerが依存パッケージの解決のためRails実行 時にgemコマンドを実行するのでOSvでは動かな い • Bundlerによるライブラリロードを全削除 • 手動でパッケージ群をrequire • 全てのgemをデプロイ用ディレクトリにダウンロー ドしてきてOSvのファイルシステムへコピー
46.
国内コミュニティ活 動
47.
OSvもくもく会 @ 東京
• ほぼ月一開催 • 皆でOSvで色々なアプリを動かそうとしてみる • バグが出たら僕がその場で直す • 次回は11月9日
Download now