Overview about n0proto¶
The n0proto is gRPC definitions for all of n0stack API.
Resources¶
Budget¶
Budget define data structure about resource budget: CPU, Memory, IP address, MAC address, storage, and so on.
Budget はリソースを表すデータ構造である。CPUやメモリなどが含まれる。
Pool¶
Pool ensure Budgets.
Pool は Budget を払い出す。
Node¶
- 物理的なサーバ
- CPU、メモリ、ストレージを払い出す
Network¶
- 仮想的なネットワーク
- IPアドレスやMACアドレスを払い出す
Provisioning¶
Provisioning create virtual resources on ensured budget.
Poolから予約されたリソースで仮想的なリソースを作り出す。
BlockStorage¶
- NodeのStorageから仮想的なブロックストレージを作り出す
- 中身はQcow2ファイル
- Nodeの
ReserveStorage / ScheduleStorage
でストレージを確保 - Nodeにインストールされたエージェントを操作するなどして、実態を作成
VirtualMachine¶
- NodeのCompute(CPUとメモリ)からVMを作り出す
- この時BlockStorageと、Networkに接続するNetworkInterface(MACアドレスとIPアドレス)を接続することができる
- Nodeの
ReserveCompute / ScheduleCompute
でCPUとメモリを確保 - 接続するBlockStorageを
SetInuseBlockStorage
で確保 - 接続するNetworkに対して
ReserveNetworkInterface
でMACアドレスとIPアドレスを確保 - Nodeにインストールされたエージェントを操作するなどして、実態を作成