2018.10.19追記
Intel FPGA Technology Day2018でNTT ATさんが発表されたとおり,
OpenStack Cyborgを使ってIntel PAC(FPGAカード)を管理するデモが行われました.
CyborgとOPAE(IntelのFPGAを制御するドライバ群)との連携が苦労されたとのこと.
今後に期待ですね!
# はじめに
- OpenStack SydneyでLT発表された cyborg projectについてピックアップ
- 実際にインストールした(動くとは言っていない)
- ざっくりと書いているため間違いなどございましたら,お気軽にご連絡ください
OpenStack Cyborg とは
元々,LT発表予定の方が来られなかったので代理の方が発表されていた
質問はIRCへ,とアナウンス
FPGAやGPUなどのアクセラレータをOpenStackで扱えるようにするプロジェクト
CyborgはもともとNomad(ノマド) と呼ばれるプロジェクトだった.
電話会社から来た要件が背景の一部にあり,
OPNFV DPACC project / ETSI NFV ISGを対処するためにNomad が設立された.
しかしNomadで定められた目標が限定的で,
OpenStackコミュニティ内での長い議論から
Cyborgプロジェクトが設立された
Cyborgのユースケース例(オペレータ側)
実際に操作するコマンド例
-
アクセラレータの列挙(リスト表示)
cyborg accelerator list --feature-tag DEEP_LEARNNING
ディープラーニングに特化したアクセラレータを列挙する機能?
-
アクセラレータの識別と探索
cyborg accelerator discover
-
インスタンスにアクセラレータをアタッチ/デタッチ
cyborg accelerator attach --instance-id FPGA_VF_1
-
アクセラレータのドライバのインストール
cyborg accelerator install --driver-id SPDK_Driver
アーキテクチャ
アーキテクチャはOpenStackの他のプロジェクトと似ている, らしい

- REST APIインタフェース
- バックエンドにはDBを使用
- 各種ドライバ(現時点では,generic stub driverのみ)
Pike リリース
- Basic frameworkをリリース
- REST API
- GET /accelerators
- GET /accelerators/{uuid}
- POST /accelerators
- PUT /accelerators/{uuid}
- DELETE /accelerators/{uuid}
- conductor & agent
- Devstack plugin
- generic stub driver
- REST API
Installation
最近devstack pluginが公開され,
devstackで簡単にインストール出来るようになった
enable_plugin cyborg git://git.openstack.org/openstack/cyborg master
2017/12/05現在 masterで動くことを確認.stable/pikeはインストール失敗する.
cyborg-agent
cyborg-api
cyborg-conductor
cyborg-dbsync
がコマンドとしてインストールされる.
(6行目を除いて)中身は全て同じであり,
#!/usr/bin/python
# PBR Generated from u'console_scripts'
import sys
from cyborg.cmd.api import main
if __name__ == "__main__":
sys.exit(main())
だったので現時点ではモック?(自信なし)
使い方が分からず...
ImportError: No module named cyborg.cmd.api
とか言われるので,
ライブラリが見つけられていないかも
アーキテクチャロードマップ
ライトグリーンは既に実装済み
グリーンはQueenリリースまでに行う優先事項
赤色はサポート外 (GPUドライバとか)

youtubeの動画から引用
Queens リリース
Queens初回リリースの見通し
- Denver PTG discussion
- 2つの優先事項の実行,完遂
- Nova (Placement) Interaction
- 少なくとも1つのバックエンド環境でend to end 機能テスト
オープンコミュニティ
Huawei, Red Hat, NEC, Fujitsu, SUSEなど各社集まってプロジェクトが進行中