Upload
api-meetup
View
223
Download
2
Embed Size (px)
Citation preview
| http://www.ctc-g.co.jp/ 1
名前:金子 雄大(@tktk8924)
会社:伊藤忠テクノソリューションズ株式会社
仕事:今日紹介する “RACK” の開発
言語:Python
趣味:日本酒(だいぶ初心者)
自己紹介
| http://www.ctc-g.co.jp/
OpenStack API
2
Nova
Glance
Swift
Cinder
Neutron
Keystone
API
API
API
API
API
API
仮想ルータ、仮想L2仮想ロードバランサ
仮想FW
仮想サーバ作成・削除
仮想マシンのスナップショット取得
認証
仮想ボリュームの作成ボリュームのコピー作成
ReST入出力ファイルストアレプリケーション、遠隔地分散
Amazon EC2
AMI
Amazon EBS
Amazon S3
IAM
ネットワーク機能
API
API
API
API
API
API
仮想ルータ、仮想L2仮想ロードバランサ
仮想FW
仮想サーバ作成・削除
仮想マシンのスナップショット取得
認証
仮想ボリュームの作成ボリュームのコピー作成
ReST入出力ファイルストアレプリケーション、遠隔地分散
開発者 開発者
ハイパーバイザー制御
イメージSnapShot管理
ブロックストレージ制御
オブジェクトストレージ
統合認証
仮想ネットワーク制御
| http://www.ctc-g.co.jp/
従来のアプリケーションモデル
4
アプリケーションはクラウドを意識しない
クラウドだろうがオンプレだろうが、何らかのOSの上で動いている。
スケーリングは他人任せ
アプリケーションは基本的に個々のVM内で完結。外部の監視ツールやオーケストレーションツールと、クラウドAPIを連携させることによってスケールイン・アウトを可能にしている。
システムの高度化・複雑化
| http://www.ctc-g.co.jp/
クラウドに特化した新しいアプリケーションモデル “Cloud Native Application”
5
動作環境はクラウドを前提とする
AWSなのかOpenStack JunoなのかOpenStack Icehouceなのか
要はどのAPIに対応しているか
完全自律型で動作する
アプリケーション自らクラウドAPIをコールし、自律的にスケール
ChefもAnsibleもSerfも必要なく、シンプル
アプリケーション内部で得られる、より精緻な情報に基づくスケーリング
| http://www.ctc-g.co.jp/
Linux プロセスモデル
7
content indication
line display range
launch(exec)
output format
optionslibraries
source compile
httpd
executablebinary
Linux
processprocessprocess
forkforkshared memory/pipe
signal
filesystem
| http://www.ctc-g.co.jp/
Cloud Native Applicationのモデル
8
optionsライブラリ
プログラム compile
psコマンドOS
middleware
libraries
source
表示内容
表示範囲
出力形式
option1
option2
option3
launch(exec)
openstack
shared memory/pipe
signal
filesystem
process process
VMTemplate
executablebinary
process
forkfork
| http://www.ctc-g.co.jp/
RACK -Real Application Centric Kernel-
9
RACK (Kernel)
Cloud Native Application
compute network storage
process process process
リソースの抽象化
VM、ネットワーク、ストレージといった個別のリソースを抽象化し、Unixライクな “process” としてプログラムから操作可能にする
process 起動確認
process(VM) 内部のアプリケーションが正常に動作しているかを確認する。プログラム上では隠蔽される
process 間連携機能の提供
process 間でのデータ共有、シグナル通知といった機能をプログラムから操作可能にする
“Cloud Native Application” の実行環境の提供
シンプルで簡単なプログラミング環境の提供
| http://www.ctc-g.co.jp/
円周率近似値計算アプリケーション
10
モンテカルロ法というシミュレーション手法を利用する
実行過程で大量の乱数生成処理が発生する
大量のCPUリソースを必要とする
自律的にスケールアウト(fork)する
並列処理で高速に動作する
処理が終われば自らkillする
Parent
Child Child Child
CPUリソースをスケールアウトする
| http://www.ctc-g.co.jp/
RACKの開発について
11
OSSとしてGithubに公開中
OpenStackの外部プロジェクトとして開発中
https://github.com/stackforge/rack https://wiki.openstack.org/wiki/RACK
| http://www.ctc-g.co.jp/
OpenStack Summit 2014 Paris
12
OpenStack Summit で RACK を発表
海外の開発者たちからの注目、評価を得た
開催場所 :フランス パリ
開催期間 :2014年 11/3~11/7
https://www.openstack.org/summit/openstack-paris-summit-2014/session-videos/presentation/the-road-to-a-openstack-native-application-what-if-vms-are-treated-as-linux-processes
| http://www.ctc-g.co.jp/
OpenStack Days Tokyo 2015
13
で、もっと詳しく話します!
2/3(火)-4(水)
http://openstackdays.com/program/details/index.html#platinum2