クラウドOS「OSv」のご紹介 @ osc2014-kyoto
Upcoming SlideShare
Loading in...5
×
 

クラウドOS「OSv」のご紹介 @ osc2014-kyoto

on

  • 773 views

クラウドOS「OSv」のご紹介 @ osc2014-kyoto

クラウドOS「OSv」のご紹介 @ osc2014-kyoto

Statistics

Views

Total Views
773
Views on SlideShare
624
Embed Views
149

Actions

Likes
1
Downloads
3
Comments
0

3 Embeds 149

http://otokublog.phpapps.jp 135
http://s.deeeki.com 13
https://twitter.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

クラウドOS「OSv」のご紹介 @ osc2014-kyoto クラウドOS「OSv」のご紹介 @ osc2014-kyoto Presentation Transcript

  • クラウドOS 「OSv」のご紹介 Takuya ASADA at Cloudius Systems
  • Who am I? • @syuu1228 • 「カーネル/VM探検隊」を東京で始めたひと • FreeBSD developer(bhyveとか) • Software Designで「ハイパーバイザの作り方」を連載
 バックナンバーを公開中:http://goo.gl/8AVRb8 • Cloudius SystemsでOSvを開発
  • OSvって聞いたことある? • 公式サイト:http://osv.io/ • 聞いたことない人は、手元のマシンに 早速入れてみよう!(Win/Mac/Linux) • インストール方法はこちら: • http://osv.io/run-locally/
  • OSvとは? • OSvは単一のアプリケーションをハイ パーバイザ・IaaSでLinuxOSなしに実行 するための新しい仕組み • より効率よく高い性能で実行 • よりシンプルに管理しやすく • オープンソース(BSDライセンス)
  • 1つのアプリだけ
 実行したいユースケース ハイパーバイザ ホストOS ゲストOS JVM Javaアプリ ハイパーバイザ ホストOS JVM Javaアプリ デカいゲストOSは 余計なオーバヘッドでは?
  • 1つのアプリだけ
 実行したいユースケース • 一つのVM:一つのアプリケーションのような使 い方
 →ゲストOSにフルサイズのOSを使うのはオーバ ヘッドでは? • ハイパーバイザで直接JVMを実行出来ればよい
  • ハイパーバイザ上で直接JVMを 実行出来るように改造すると… • 他の言語はサポートできない • C/C++で書かれたアプリは動かない • Javaしか動かない(当たり前) • 他のものをサポートするには似たような改造作 業を繰り返し行うしかない
  • 解決策:ライブラリOS ハイパーバイザ ホストOS JVM Javaアプリ OSv 出来るだけ改造しない ここで環境の違いを吸収
  • ライブラリOS • JVMはなるべく改造しない • OSを利用するために呼び出すPOSIX API・Linux APIを ライブラリのような形式で提供 • API提供に必要な機能は実装
 (ファイルシステム、ネットワーク、スレッド) • フルサイズのOSとは構造の異なる薄いレイヤ
 (単一プロセス、単一メモリ空間、全てカーネルモード)
  • OSvで動かすのに
 必要だった変更 • Ruby→1行書き換え • OpenJDK→0行書き換え • mruby→0行書き換え
  • 1VM=1プロセス
 (1アプリ)
  • 1VM=1プロセス • JVMを入れると→Java OS • Rubyを入れると→Ruby OS • mrubyを入れると→mruby OS
  • OSなの?OSじゃないの? • 広い意味でOS(Library OS, exokernel) • WindowsやLinuxと同様のフルサイズの汎用OS ではない • DOSだってOSだった。
 でもLinuxと同等の機能を提供していた訳ではな い
  • OSvデモ
  • 動作環境 • ハイパーバイザ • KVM • Xen • VMware • VirtualBox • IaaS • Amazon EC2 • Google Compute Engine
  • 何が動くの?(Java) • OpenJDK7,8 • Tomcat • Cassandra • Jetty • Solr • OpenDaylight • Gitblit • Clojure • JRuby(Ruby on Railsなど) • Ringo.JS • Jython • Erjang • Scala • Quercus(PHPエンジン、 Wordpressなど)
  • 何が動くの?
 (Java以外の言語) • Ruby • WEBRick • Ruby on Rails • Publify(Railsベースのブログエンジン) • mruby • lua
  • 何が動くの?
 (ネイティブアプリ) • haproxy • memcached • MySQL • LevelDB • SQLite
  • 近日公開? • Go language • Hadoop HDFS
  • OSvのフットプリント • mrubyVMイメージの場合 • ディスク:<30MB • メモリ:55MB • 起動時間:<2秒
  • OSvの基本的な機能 • Linuxアプリとの限定的な互換性 • ファイルシステム(ZFS) • TCP/IP(IPv4のみ) • 簡易的なシェル
  • お手軽簡単実行ツール
 「Capstan」 • 色々なアプリがインストールされたOSvのVMイ メージを、コンパイルなどの難しい作業なしに手 軽に実行するツール • Linux, Mac, Windowsで動作 • VirtualBox, VMware, KVMなどに対応
  • Capstanデモ
  • OSvをプログラムから操作 「REST API」 • REST API経由でOSvに任意の操作を実行 • 従来のOS:コマンド実行やファイルの編集で設 定を変更
 (手動が基本、シェルスクリプトなどで自動化)
 OSv:APIで設定を変更
 (自動化が基本、CLIはオプション)
  • REST APIデモ
  • 初期化スクリプトを
 サーバからダウンロード&実行
 「Cloud Init」 • ネットワーク上からYAMLをダウンロードしてき て、ダウンロードしたファイルに記述されてい るREST APIを順次実行
  • クラウドへのデプロイ • Amazon EC2 • AMIを配布中 • Google Compute Engine • capstanからアップロード可能
  • OSvもくもく会 @ 東京 • ほぼ月一開催 • 皆でOSvで色々なアプリを動かそうとしてみる • バグが出たら僕がその場で直す • 関西版の会場提供者・参加者募集中
  • もっとしりたい • オフィシャルサイト:http://osv.io • Facebook:http://bit.ly/OSvFB • Twitter:@CloudiusSystems • Github:https://github.com/cloudius-systems/osv • Google Groups:https://groups.google.com/ forum/#!forum/osv-dev
  • Cloudius Systemsについて • CTO : Avi Kivity → Linux KVMのパパ • 他の開発者:元RedHat(KVM), Parallels(Virtuozzo, OpenVZ) etc.. • Office:Herzliya, Israel
  • おまけ
  • ‫ּה‬ָ‫י‬ִ‫ל‬ְ‫צ‬‫ְֶר‬‫ה‬
  • どこ?